そのため情報が古い可能性があります。ご了承ください。m(_ _)m
Ecolinux-lxがecolinux-lightの後継ということで、
libretto L5で、inetboot + ecolinux-lxで起動しインストールしようとしたけどダメだった。
問題1 InetBootが、isolinux/menu.cfg があれば最優先で見に行ってしまう。
InetBootは、指定されたISOイメージのURLをHTTP-FUSEでmountし、isolinux/menu.cfgを解析して、カーネルやら、bootパラメータやらの設定値を取得するような動作っぽい。
ただ、Ecolinux-lxのisolinux/menu.cfgは大したことやっていなくて、includeしているだけなので、このファイルを見てもカーネルやbootパラメータは取得できない。そこで、text.cfgをmenu.cfgにリネームして置き換えた形のISOイメージファイルを作成してしまえば先へ進める。
問題2 InetBootが、initrd.lzに対応していない。
InetBootが、initrd.lzをgzipで解凍しようとして失敗する。仕方がないのでinitrd.lzを一度展開して、gzipで圧縮し直したinitrd.gzを格納したISOイメージファイルを作成すれば先へ進める。menu.cfgのinitrd.lzをinitrd.gzに変更する必要もある。
問題3 InetBootとEcolinux-lxで、squashfs-toolsのVersionが不一致。
InetBoot:3.3-CVS
Ecolinux-lx:4.0
なので、互換性無いって怒られる。
かなり無理矢理な解決策としては、、、
Ecolinux-lxのISOイメージ内にある、casper/filesystem.squashfsを取り出して、
4.0系列のunsquashfs(squashfs-toolsに含まれるツール)で展開後、
3.0系列のmksquashfs(squashfs-toolsに含まれるツール)で圧縮。(ここで作成したファイルを、filesystem.squashfs.3とする)
このファイルを格納したISOイメージファイルを作成。
#casper/filesystem.squashfs
# casper/filesystem.squashfs.3
# の2ファイルが含まれることになる。
今度は読み込み側の修正。
InetBootが、3.3のsuquashfsファイル(filesystem.squashfs.3)を見に行くよう修正する。
Ecolinux-lx側は変更せず、オリジナルのsquashfsファイル(filesystem.squashfs)を見に行く。
minirt.gz をgzcat と cpioを使って展開
# gzip -d minirt.gz
# mkdir tmp
# cd tmp
# vi bin/casper-netfsboot
if ! mount -t squashfs -o loop,ro ${CDMOUNT}/${BASENAME}/filesystem.squashfs ${COMPRESSMOUNT} ;then
↓
if ! mount -t squashfs -o loop,ro ${CDMOUNT}/${BASENAME}/filesystem.squashfs.3 ${COMPRESSMOUNT} ;then
に修正。
# sudo find . | sudo cpio -o -H newc | gzip – > ../minirt.gz
# sudo mv /var/lib/tftpboot/InetBoot/minirt.gz /var/lib/tftpboot/InetBoot/minirt.gz.org
# sudo cp ../minirt.gz /var/lib/tftpboot/InetBoot/
で、PXEブート。
ureadheadが、status 5 で終了。(/etc/fstabが空だから?)
この後もう少し進んだ後、黒画面で動かなくなる。
体力の限界でEcolinux-lxも諦め。(無理矢理いじったのが影響してるかも)