FD も CD/DVD ドライブもない PC に FreeBSD をインストールする
TOP
>
チョロっとFreeBSD
>
FD も CD/DVD ドライブもない PC に FreeBSD をインストールする
目次
PC が LAN からブートできる場合、PXE を利用してインストールできます。
ただし、ネットワークドライバが fxp でないとだめなようです。東芝のノートPCだと大丈夫でした。
母艦となる PC (FreeBSD) がローカルネットワーク上にあることが前提で、IP は 192.168.0.10 としていますので、ご自身の環境に読み替えて下さい。
- インストールするPC(以降クライアントPC)で PXE が動作するようにBIOSを設定
- 起動順位を HDD より LAN の方を先にしておきます。
- クライアントPCのMACアドレスをメモします。
- これは、PXEの動作時に表示されます。例) MAC 00:00:21:98:3B:12
- FreeBSD のCDまたはISOイメージを準備
- ISOイメージをCDに焼いても、そのままでもOKです。
ISOイメージのままの場合、ISOイメージをマウントする必要があります。
FreeBSD の ISO(i386)イメージは
ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/ISO-IMAGES/
にあります。
たいてい、disc1 がブートCD でインストールには、disc1 を使います。
- ルーターの設定
- ローカルネットワークにルーターがあれば、ルーターのDHCPは無効にしておきます。
母艦となるPC(サーバーPC)には
1.2.1 tftp
1.2.2 NFS
1.2.3 DHCP
が動作している必要があります。
tftpの設定は割と簡単で
/etc/inetd.conf で
tftp dgram udp wait root /usr/libexec/tftpd tftpd -s /cdrom/boot
のように、tftp の行を生かしてやります。
FreeBSD 6.x の場合、デフォルトでは inetd.conf は無効なので、
/etc/rc.conf に
inetd_enable="YES"
にしてから、PCを起動しておく必要があります。
既に inetd が動いているなら、
kill -HUP `cat /var/run/inetd.pid`
で inetd が再起動します。
/etc/hosts.allow で許可するのをよく忘れるのですが、
tftpd : localhost : allow
tftpd : 127.0.0.1 : allow
tftpd : 192.168.0.0/225.225.225.0 : allow
tftpd : ALL : deny
で良いはずですが、うまくいかなかったので、
インストールする間まで、
ALL : ALL : allow
の一行にしています。ただし、これはセキュリティ上非常に危険なので、インストールが終れば、すぐに元に戻します。
/etc/rc.conf で
nfs_server_enable="YES"
portmap_enable="YES"
とします。
/etc/exports で
/cdrom -network 192.168.0.0 -mask 255.255.255.0
とします。
/usr/ports/net/isc-dhcp3-server でインストール
FreeBSD 4.X系で /etc/rc.subr がないとエラーが出れば、
/usr/ports/sysutils/rc_subr をインストールして、
ln -s /usr/local/etc/rc.subr /etc/rc.subr
とリンクを張ってやればよいです。
/etc/dhcpd.conf を下記のようにします。
server-identifier 192.168.0.10; ←(*1)
default-lease-time 3600;
max-lease-time 7200;
ddns-update-style none;
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.100 192.168.0.150; ←(*2)
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
host pxeboot {
hardware ethernet 00:00:21:98:3B:12; ←(*3)
fixed-address 192.168.0.101; ←(*4)
filename "pxeboot"; ←(*5)
option root-path "192.168.0.10:/cdrom"; ←(*6)
}
}
(*1) server-identifier 母艦(サーバーPC)のIP
(*2) range DHCPで割り当てるIPの範囲
(*3) hardware ethernet クライアントPCのMACアドレス
(*4) fixed-address DHCPでクライアントPCに割り当てるIP
(*5) filename "pxeboot";FreeBSDのCDにあるブートファイル、通常"pxeboot"のままです。
(*6) option root-path "母艦(サーバーPC)のIP:/cdrom"
/etc/rc.conf で
dhcpd_enable="YES"
dhcpd_conf="/etc/dhcpd.conf"
dhcpd_ifaces="ed0" ←母艦(サーバーPC)のネットワークアダプタ
/usr/local/etc/rc.d/isc-dhcpd.sh start
で起動します。
サーバーPCにFreeBSDのCDをセットして、
# mount /cdrom
**注意** CDをセットしたままサーバーPCを再起動すると、母艦(サーバーPC)にFreeBSDのインストーラーが起動してしまいます。
FreeBSD 4.x の場合、kernel に擬似ディスクデバイス「vn」が組込まれている必要があります。
つまり、kernelコンフィグファイルに
pseudo-device vn
が記載されて、kernelが構築されているということです。
ちなみに、kernel の再構築は、kernelコンフィグファイルを
/usr/src/sys/i386/conf/TFTP とすると、
# cd /usr/src/sys/i386/conf
# config TFTP
# cd ../../compile/TFTP
# make depend
エラーが出ないことを確認して、
# make
# make install
ここで、再起動すれば、新しい kernel でたちあがります。
やっと本題のISOイメージのマウントですが、
# vnconfig -c /dev/vn0 ISOイメージ
# mount -t cd9660 -o ro /dev/vn0 /cdrom
アンマウントは、
# umount /cdrom
# vnconfig -u /dev/vn0
FreeBSD 6.x の場合、kernel に擬似ディスクデバイス「md」が最初から設定されているので、kernel をいじる必要がありません。
ISOイメージのマウントは、
# mkdir /cdrom ← /cdrom ディレクトリがない場合、作成します。
# mdconfig -a -t vnode -f ISOイメージ
# mount -t cd9660 -o ro /dev/md0 /cdrom
アンマウントは、
# umount /cdrom
# mdconfig -d -u 0
1.1 準備及び確認事項で準備したように、クライアントPCのBIOSで、LANがHDDより先にブートするように設定して起動します。
すると、めでたくクライアントPCでFreeBSDのインストーラーが起動します。
インストールメディアの設定では、NFSを選択し、192.168.0.10(サーバーPCのIP):/cdrom とします。
1.ネットワークブートが始まり、DHCPでIPアドレスが割り当てられ、
2.TFTPでPXEのブートコード(pxeboot)がサーバからダウンロードされ,
3.pxebootが動き、NFSでカーネルが読み込まれ、
4.FreeBSD 6.x のブート画面がでても、
5.インストーラではなく、ログインプロンプトが出て、
6.強引に /usr/sbin/sysinstallを動かして、
7.そのままインストールを試みても、
8.読み込み専用でディレクトリを作れないというメッセージが出て、
9.強引に進めてもうまくいかない。
この場合、
http://www.wheel.gr.jp/~dai/freebsd-cft4/freebsd62r.html
を参考にさせていただきました。
これをまとめると、
4.FreeBSD 6.x のブートメニューが出た段階でローダプロンプトを表示させます。
つまり、ブートメニューの [6.Escape to loader prompt} を選択。
「OK」プロンプトのところでboot -aと入力。
しばらく、デバイスの検出に時間がかかりますが、それが終わると、
mountroot>
というプロンプトが出て、ルートデバイスをどれにするかを尋ねられるので、
ufs:/dev/md0c と入力。
すると、インストーラが起動し、国の選択画面になり、
おなじみのsysinstall画面がでてきて、めでたしめでたし。
インストールメディアの設定では、NFSを選択し、192.168.0.10(サーバーPCのIP):/cdrom とします。
TOP
>
チョロっとFreeBSD
>
FD も CD/DVD ドライブもない PC に FreeBSD をインストールする
http://www.yumi-chan.com/