雑記

2000|01|
2003|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|
2007|01|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|09|11|
2009|02|03|05|06|07|08|10|11|12|
2010|01|03|04|05|06|07|08|09|10|
2011|05|06|09|10|
2012|03|07|09|12|
2013|01|02|04|05|07|08|10|11|
2014|04|05|08|10|12|
2015|01|05|
2016|09|

2007-05-12 [長年日記]

[FreeBSD] ネットワークインストール

昨日とは違うマシンにFreeBSDをインストール。今度のブツは省スペースマシンでCD-ROMドライブやFDDが付いていない。手元にあったUSBのCD-ROMドライブではブートできなかったので、ネットワークインストール。良い説明がこちらにあるので、最低限のメモだけ。

インストールマシンの準備

BIOSのメニューに入って、ネットワーク経由でのブートを有効化。さらにNICのオプションでネットワークブートをenableにする必要があった。

MACアドレスの調査

MACアドレスが分からない場合、適当にDHCPサーバを立ててとりあえず動的に割り当ててしまえば、dhcpdのログに以下のような記録が残るので、このログからMACアドレスを取得する。

May 12 16:09:14 server dhcpd: DHCPDISCOVER from 00:11:22:33:44:55 via em0

DHCPサーバの設定

MACアドレスが取得できたらDHCPサーバを設定。

option domain-name "example.com";
option domain-name-servers 192.168.0.1;
default-lease-time 1800;
max-lease-time 7200;
 :
host pxeboot {
  hardware ethernet 00:11:22:33:44:55;
  fixed-address 192.168.0.5;
  filename "pxeboot";
  option root-path "192.168.0.1:/pxeboot/root";
}

上の設定で指定した/pxeboot/rootには昨日のメモに書いた方法を参考にブートCDのファイルをコピー。

TFTPサーバの準備

まずはファイルの準備。

# mkdir /pxeboot/tftproot
# cp /pxeboot/root/boot/pxeboot /pxeboot/tftproot/

次に、念のため/etc/hosts.allowを編集してアクセス制限。1行目はテスト用。

#
tftpd : localhost 127.0.0.1 : allow
tftpd : 192.168.0.5 : allow
tftpd : ALL : deny

次に/etc/inetd.confを編集して、TFTPサーバを有効化。2行目はローカルテストではまった名残。

tftp    dgram   udp     wait    root    /usr/libexec/tftpd      tftpd -l -s /pxeboot/tftpboot
tftp    dgram   udp6    wait    root    /usr/libexec/tftpd      tftpd -l -s /pxeboot/tftpboot

inetdにHUPシグナルを送るのを忘れずに。

NFSサーバの設定

/etc/rc.confを確認して、NFSサーバを有効化。

rpcbind_enable="YES"
nfs_server_enable="YES"
rpc_lockd_enable="YES"
rpc_statd_enable="YES"
mountd_enable="YES"

次に、/etc/exportsを編集してマウントを許可。

/pxeboot/root 192.168.0.5

mountdにHUPシグナルを送るのを忘れずに。

インストール

ネットワーク経由でインストール。

  • 設定に問題がなければ、ネットワークからpxebootを読み込んで「Welcome to FreeBSD!」の画面が表示されるので、「6. Escape to loader prompt」に進む
  • メモリディスクをroot filesystemとする
    OK vfs.root.mountfrom="ufs:/dev/md0c"
    
  • ブートしてインストール