ネットワークからdebianをbootする


ネットワークブートでdebianをインストールするには、いくつか環境を準備する必要があります。
・インストール先PCがネットワークブート(PXE)機能搭載で、インターネットに接続されていること。
・ネットワーク内にdhcpサーバとtftpサーバがあること。

市販の無線lanルータには、標準でdhcpサーバが搭載されていますが、うちのルータの場合は、初期ブートファイルの記述ができないため、別のlinuxサーバにdhcpサーバを準備します。(※1)
この時、同一ネットワーク内に複数のdhcpサーバがあるとipアドレスが重複してしまう可能性があるので、ルータのdhcp機能はオフにしておいた方がいいでしょう。

手順は、https://www.debian.orgにあります。
ここでインストールメディアも取ってきましょう。インストールしたいアーキテクチャのページ→netbootディレクトリ配下のnetboot.tar.gzです。

①インストール先PCのMACアドレスを調べる。
BIOSによって調べ方は違うかもしれません。American MegatrendsのBIOSの場合は、ブートデバイスをネットワークブートにして電源を入れたらわかりました。(※2)

②tftpサーバでファイルを配布する。
まず、設定ファイルを編集します。

# vi /etc/xinetd.d/tftp
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot   ← tftpの取得対象ファイル格納ディレクトリ
disable = no                                  ←yesからnoへ変更
per_source = 11
cps = 100 2
flags = IPv4
}


取ってきたtar-ballをtftpの取得対象ファイル格納ディレクトリ上(/var/lib/tftpboot)に置いて、展開する。

# cd /var/lib/tftpboot
# tar xvf netboot.tar.gz
# ls


pxelinux.0が展開されていることを確認して、xinetdを再起動する。

# service xinetd restart


③DHCPサーバの準備をする。DHCPの導入へ
設定ファイルに初期ブートファイルの記述を追加します。

vi /etc/dhcp/dhcpd.conf
group {
next-server 192.168.2.15;                               ←tftpサーバ稼動マシンのipアドレス
host tcpclient {
hardware ethernet 80:EE:73:31:XX:XX;    ←①で調べたインストール先のMACアドレス
filename “pxelinux.0”;                                ←②で格納した初期ブートファイル
}
}


dhcpサーバを再起動

# service dhcpd restart


これで準備は完了です。
インストール先PCを起動すると、ネットワークからdebianのインストーラを起動できるはずです。あとは画面に従ってインストールすればOK!


※1:今回の用意したtftpサーバとdhcpサーバは、CentOS6.5で起動して確認しています。
※2:American Megatrendsでネットワークブート設定するには、BIOSの設定でOn Boad LAN Option ROMの項目をEnableにした後でBIOSの起動画面でF12を押せばいいようです。


↑応援お願いします

シェアする

  • このエントリーをはてなブックマークに追加

フォローする