Network Boot(PXE Boot)を利用したDebianのインストール

環境を作るのがちょっとムズいけど、以下の環境があれば楽かもしれない

送信側(母艦)

  • dhcpd
  • 適切なdefault gateway
  • tftpd
  • (PXE Bootに対応したNICのモジュールが入った)Debianインストーラ

受信側

  • PXE Bootに対応したNIC

dhcpの設定によるIPアドレスの固定

/etc/dhcpd.confあたりにイーサのMACアドレスを書いて、そいつでIPアドレスがfixできるかどうか試す。まずはここから。

以下に例示する。

host karin {
    hardware ethernet xx:xx:xx:xx:xx:xx;
    fixed-address 192.168.11.250;
}

何らかのOS(っつーかdhcpクライアント)を起動してIPが正常に割り当てられる事を確認しとく。そういう環境が無い場合はしょうがないからまぁいちおううまくいく事を期待しとく。

dhcpdの再起動つか設定のリロード忘れないように

PXEブートできるか確認する

そもそもノーパソだの何だのかんだのにこの機能が無いとはじまらないっていうわけで、ちゃんとBOOTしに行くかどうか確認しておこう。Thinkpad X30とかだとF12を押すと起動デバイスを選択できる。でもって何故かIBA 4.1.07 Slot 0140とかいう名前になっているのがそれだ。syslogにとりあえずIPが割り当てられた事だけ確認しとけばいい。tftpdの設定を行っていないので当然ブートできない。

atfptdの設定

tftpdはとりあえずatftpdをいれときゃいい。

% sudo apt-get install atftpd
                                                                              
   atftpd は、inetd から起動するか、もしくはデーモンとして動作し接続を自分    
   で処理することもできます。後者は、高負荷のサーバで推奨されます。           
                                                                              
   inetd をサーバの起動に利用しますか?                                       
                                                                              
                      <はい>                      <いいえ>                    
                                                                              

ぶっちゃけどっちでもいい。inetd使わない方が何かとハマり度は少ないかと思うので俺的には<いいえ>

  マルチキャスト転送は送信先のアドレスに設定されたアドレスを利用します。設    
  定可能なシンタックスは、"a.b.c.d-d,a.b.c.d,..."です。                       
                                                                              
  マルチキャスト転送先のアドレス範囲:                                         
                                                                              
  239.239.239.0-255

マルチキャストはつかわないからそのままEnterしとこう。その次もそう

  aftpd がファイルを提供するディレクトリです。このディレクトリは誰からでも    
  読めるようにする必要があります。                                            
                                                                              
  ベースディレクトリ:                                                         
                                                                              
  /tftpboot

一般的には/tftpbootが使われる。別にどのディレクトリでもいいけど辺な所に設定すると大概忘れるので素直にデフォにしておこう

ネットワークインストーライメージの取得

http://ftp.debian.org/debian/dists/etch/main/installer-i386/current/images/netboot/

にアクセスしてnetboot.tar.gzをいただくわけだけど、とりあえず先に設定したディレクトリを作っとくのがいい。rootになってやる

# mkdir /tftpboot
# cd /tftpboo
# wget http://ftp.debian.org/debian/dists/etch/main/installer-i386/current/images/netboot/netboot.tar.gz
# tar xvzf netboot.tar.gz

dhcpの設定のさらなる変更

これで大体準備が整った気配だけど、もう1手順。dhcp.confにこんな具合で書き足しとく。

host karin {
    hardware ethernet xx:xx:xx:xx:xx:xx;
    fixed-address 192.168.11.250;
    filename "/tftpboot/pxelinux.0";
}

これでdhcpdの再起動すれば準備終わり

# sudo /etc/init.d/dhcp restart     
Stopping DHCP server: dhcp.
Starting DHCP server: dhcpd

起動してみる

とにかく母艦側はsyslogを監視しまくっとく事。

memo/debian_networkinstall.txt · 最終更新: 2007/07/28 11:54 by moccori
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0