PXEbootで古いDynabookにCentOSをインストール

我が家には5年前のノートPC、Dynabook SS2000 が転がっています。かつては薄くて軽いB5モバイルとして活躍してくれましたが、今やACアダプタが無いと動かない、モバイルとしては全く使えない物になってしまいました。CD-ROMなどの光学ドライブは搭載しておらず、USB接続のCD-ROMなどを持ってきてもBIOSが対応していないので起動しません。もうプリインストールのWin2kと心中するしかないのか… と思いつつ押入の肥やしになっていたのですが、「ネットワークブートでLinux入れればぉk」ということに気付いたので実践してみました。いや、実際は今までよく分かってなくて何となくスルーしてたんですけどね。

PXEboot用のサーバ準備

まず、PXEbootするためのサーバを準備します。PXEでネットワークブートするためには、DHCPとTFTPサーバが必要です。Windowsでも立てられるのかも知れないけど、ほとんど情報がないのと、Linuxでサーバ持ってるんだからWindowsの情報を漁るのもダルいので無視。サーバのOSはCentOS4.4です。ディレクトリ名などはパッケージのバージョンに応じて適宜。

まずはブート用のイメージを準備します。/tftpbootを作っておいて、そこにイメージを準備します。

cd /tftpboot
cp /usr/lib/syslinux/syslinux.0 syslinux.bin
wget http://ftp.riken.jp/Linux/centos/5.0/os/i386/images/pxeboot/initrd.img
wget http://ftp.riken.jp/Linux/centos/5.0/os/i386/images/pxeboot/vmlinuz

こんな感じ。syslinux.0の名前は別にそのままでもいいんだけど、導入の参考にしたサイトとかでそうしてたりしたので、何となく踏襲です。イメージのダウンロード先は別のミラーでもいいし、64bit版なら違うディレクトリからどうぞ。

イメージを準備したら、次はサーバの設定です。

yum install -y dhcp tftp-server

必要なパッケージはこれでインストール完了。他にもsyslinux, xinetdが必要ですが、syslinuxは最初から入ってるし、xinetdはtftp-serverを入れたら一緒に入るので無問題。

まずはdhcpdの設定から。

cp /usr/share/doc/dhcp-3.0.1/dhcpd.conf.sample /etc/dhcpd.conf

みたいにコピーしてから、/etc/dhcpd.confを編集。IPの設定は自分の環境に合わせて、PXEboot用の設定として、「filename "pxelinux.bin";」の一行を追加します。ウチの環境では、こんな感じになりました。

ddns-update-style interim;
ignore client-updates;
subnet 192.168.0.0 netmask 255.255.255.0 {
        option routers                  192.168.0.1;
        option subnet-mask              255.255.255.0;
        option domain-name              "dev.local";
        option domain-name-servers      192.168.0.1;
        option time-offset              -18000; # Eastern Standard Time

        range dynamic-bootp 192.168.0.80 192.168.0.99;
        default-lease-time 21600;
        max-lease-time 43200;
        filename "pxelinux.bin";
}

次に、tftpサーバの設定です。/etc/xinetd.d/tftpをエディタで開き、「disable = yes」となっている行を「disable = no」に変更します。そして、

/etc/init.d/dhcpd start
/etc/init.d/xinetd restart

として、dhcpdの起動とxinetdの再起動を実行します。これで準備は整いました。

ルータでもDHCPを提供しており、競合が気になりますが、ひとまずそのまま進めることにします。

Dynabook SS2000にインストール

さて、いよいよインストールです。こちらが今回の主役、Dynabook君。

電源を入れて、ブートプロセスが始まる前に [F12] を押して起動方法を選択します。右から2つ目のネットワークブートを選択。

すると、DHCPからIPを取得、TFTPでブートイメージを取得して起動してくれます。ルータのDHCPが優先されるかと思ったのですが、希望通りにPXEサーバからIPを引いてくれました。条件は分かりませんが、ルータのDHCPを停止しないとダメな場合もあるかも知れません。


インストーラはテキストモードで立ち上がります。今回はHTTP経由でインストールしましたが、NFSイメージからインストールも試してみたいですね。@ITの記事では、ミラーを選択したらGUIインストーラになると書いてましたが、結局最後までテキストモードでした。VGAとかの関係でしょうか。


インストールが完了して再起動すると、めでたくCentOS5の画面が。起動も無事に完了しました。やたー。