PXEでDebian/Ubuntuをネットワークインストール
静音・省消費電力・省スペースな自宅用Linuxサーバ構築 その3
静音・省消費電力・省スペースな自宅用Linuxサーバ構築 その1
静音・省消費電力・省スペースな自宅用Linuxサーバ構築 その2
今回は、空のHDにPXEブートを使用してDebian/Ubuntuをネットワークインストールした方法を書きます。
富士通のノートパソコン:FMV-830MTにLinuxをインストールする方法ですが、このパソコンにはCDドライブがついていません。なので、インストール方法は、
- 外付けCDドライブからブート
- 外付けFDドライブからブート
- HDドライブを外し、別のマシンでインストールする
- PXEブートを使用したネットワークインストール
になります。
1は手持ちの外付けCDドライブでブートしなかったので×。
2はDebianのインストーラがUSB接続のFDDを認識できなかったので×。
3は1.8インチHDDを接続できるマシンを持っていなかったので×。
ということで、4のPXEブートを使用したネットワークインストールとなりました。
上の画像の左から
サーバ:Dell Inspiron 6000(Ubuntu 7.10)
ルータ:BUFFALO Air Station
クライアント:FUJITSU FMV-830MT
条件・必要なもの
上記がそろっていれば、ネットワークインストールができます。
準備
まずは、クライアント(インストールするマシン)のBIOSをPXEからブートするように設定します。
もしOSがインストールされているマシンだったら、OSが起動する前に黒い画面でPXE〜みたいな文字が表示されればOK。
クライアントのMACアドレスがわからなくても途中でわかるからとりあえずOK。
ルータのDHCP機能をOFFにすること。おそらくLANケーブルにつないで192.168.0.1やら192.168.11.1やらにブラウザでアクセスして設定するはず。詳しくはそのルータのマニュアルを参照。
ISPのDNSは、Linuxをつなげているなら、/etc/resolve.confで確認できる。
最後に、DHCPとTFTPを稼動させるサーバの準備。
今回は、Ubuntu 7.10をインストールしてあるDellのノートPCをサーバに使った。
まずはパッケージのインストール
$ sudo apt-get install dhcp3-server $ sudo apt-get install tftpd-hpa $ sudo apt-get install tftp $ sudo apt-get install inetutils-inetd
dhcp3-serverをインストールした後に
Starting DHCP server: dhcpd3 failed to start - check syslog for diagnostics. invoke-rc.d: initscript dhcp3-server, action "start" failed.
とのエラーが出るが、これから設定するので気にしない。
ブートファイルの準備
$ cd /var/lib/tftpboot $ sudo wget http://ftp.debian.org/debian/dists/etch/main/installer-i386/current/images/netboot/netboot.tar.gz $ sudo tar xvf netboot.tar.gz
Ubuntu feisty(7.04)をインストールするなら、
$ cd /var/lib/tftpboot $ sudo wget http://archive.ubuntu.com/ubuntu/dists/feisty/main/installer-i386/current/images/netboot/netboot.tar.gz $ sudo tar xvf netboot.tar.gz
設定
/etc/default/dhcp3-server
INTERFACES="" ↓ INTERFACES="eth0"
/etc/dhcp3/dhcpd.conf
ファイルの末尾に追記
allow booting; allow bootp; subnet 192.168.0.0 netmask 255.255.255.0{ range 192.168.0.2 192.168.0.10;//適当 option routers 192.168.0.1;//たぶんこのままでOK option broadcast-address 192.168.0.255;//たぶんこのままでOK option domain-name-servers xxx.xxx.xxx.xxx;//ISPのDNSのアドレス } host lifebook{ filename "/pxelinux.0";//絶対このまま hardware ethernet 00:0B:xx:xx:xx:xx;//クライアントのMACアドレス fixed-address 192.168.0.5;//range内のアドレスなら何でも良い }
クライアントのMACアドレスがわからない場合は、とりあえず適当に書いておく。
もし、ファイルの最初のほうにoption domain-nameやoption domain-name-serversが書いてあったら、
コメントアウトしておくと良いかも。
dhcp3-serverを再起動
$ sudo /etc/init.d/dhcp3-server restart
TFTPの確認
# su - # cd /var/lib/tftpboot/ # touch test.txt # tftp localhost tftp> get test.txt Received 6 bytes in 0.1 seconds tftp> quit
上記のように表示されたらOK。
インストール
ここまでの設定が終わったら、クライアントをネットワークにつないでPXEブートさせる。
クライアントのMACアドレスはここで表示される。
installerが起動したら成功!
参考にしたページ
PXEを利用してDebianをネットワークインストールする - The dream is invincibility.
PXEブートでUbuntuを導入する
: アメコロガシ