前回の記事からの続きで、簡単に流れを。
やりたいことと制限仕様は
- Libretto L1 では HDD 、USB-FDD もしくは 純正の USB-CDD からしか起動できない
- なので、 HDD に debian/netboot の vmlinuz と initrd を置いて起動する
- ファイルは USB メモリから入れる。
- 1) 1 FD Linux から起動し、起動ファイルを HDD へコピー
- 前回も書いたように、Partboot for USB floppy drives (Partboot-usb) を使います。 USB-FDD は研究室のを使い、FD への書き込みは Windows で行いました。 書き込みソフトは、rwwrtwin を使いました。 http://ftp.jp.debian.org/debian/tools/ にあります。 Partboot のイメージを上のサイトからとってきて、FD に書き込みます。 基本的に必要なのは partboot-x.x.xx-usb.img と supp.img です。 なのでフロッピーは2枚必要になるかと。 partboot-x.x.xx-usb.img の方が boot ディスクになるので、そいつから起動。 起動し終わるとプロンプトが出るので〜ってのは上のサイト見ればわかるかな。 supp.img を読み込まないと、USB メモリのデータが見れないので(VFAT)。 あと、HDD のフォーマットとか、ファイルシステムの変更とか、 パーティション変更とかをしたい場合は、parted というコマンドで出来ます。 USB メモリ経由で、netboot/debian-installer/i386/ にある initrd と linux (あとで vmlinuz に rename) を HDD に入れます。入れる場所はのちほど grub とかで指定するので覚えて置くように。
- 2) grub で vmlinuz 、initrd を指定して起動
-
HDD にはブートローダが入ってない(正確に言えば壊れた)ので、FD の grub から起動します。
どっかから grub の CDイメージを探してきて、その中に grub.img ってのがあるので
そいつを FD に書き込んで、起動すれば grub のプロンプトになります。
あとは、さっき置いた initrd や vmlinuz を指定して起動すればおk。
たとえば、置いた場所が /dev/hda1 の /boot/ だとすると
grub> kernel (hd0,0)/boot/vmlinuz root=/dev/ram0 grub> initrd (hd0,0)/boot/initrd grub> boot
ぐらいでいけないかな。まあデバイス名とかは環境で変わるので適当に。 うまくいけば、Debian (lenny) のネットワークインストールが始まります。 - 3) インストール中の話
-
サーバからパッケージ落としてくるときに、こんなメッセージが
eth0:bogus packet size:32864 status=0x21 nxpg=0xed eth0:nextframe inconsistency 0xcd
(数字は適当。) これが出ると、ほぼ確実に回線、というか LAN カードの調子が悪くなり ネットにつながらなくなるということが。 HDD フォーマットし終わった後にこれされると、再び 1) から始めないといけない。疲れる。 調べてみると、1回に受信したパケットサイズがでかすぎるってことらしい。 なので、インターフェースの MTU を変えてやってみることに。 ifconfig は無いので IP コマンドで。 # ip link show eth0 とかすると、文中に MTU = 1500 ぐらいが出てきました。 こいつを # ip link set eth0 mtu 1000 とかやると MTU が変更されました。 1300 とか 1454 でもよかったかもしれないけど とりあえずこれでやるとエラーメッセージも出ず、平和に終わりました。
以上。ここまでくるのにダイブ時間かかったなー。まあいい勉強です。
インストール後、まだ弄ってません。なぜか入ってなかった sudo を入れたくらいかな。
これからどんどn弄っていこうと思うって前も書いた気がするがまあいいか。
参考
図解 Debian Linux 3.1 のFTPインストール
ブートローダに GRUB を使う
GNU Partedの使い方
[linux-users:71757] eth0 bogus packet size(Re: 追加したら・・・)