Palm84 某所の日記

死のうは一定、しのびクマには何しよぞ...

USBブート非対応PCでFDブートからUSBメモリのLiveCD Linuxをブートしてみた【その2】

2008.8.17追記

こんなのありましたー。

上記のページのやつが使えるなら(※USB CDは非対応)、このページに書いてるやつはいらないですね...。orz

上記に続き第2弾でおま。DOS用のUSBドライバを用意できるなら上記のやり方の方が簡単な気がしますが、DOS上で認識されないUSBデバイスもあったりするので、ということで別の手段。FDの枚数が多くなるのが玉にキズですが緊急時には背に腹はかえられない?ってなかんじ(なんだか)。

【2008.4.13 追記】

メニュー表示とか色々設定してみました。

2chスレにて下記の情報見つけました。これスゴイですねー*1。応用して色んなことに使えそうでおま。

こんなかんじでブートさせるのでおじゃる。

  • FDに収まらないkernelとinitrdをzipでまとめて、FDサイズに分割する
  • RAMディスクドライバ付きFreeDOS起動ディスク
  • RAMドライブ上にkernelとinitrdを展開
  • loadlin実行
  • USBデバイス上のルートイメージをマウント

尚、DOS用USBドライバが用意できるならFDは1枚ですむのでそちらの方がいいかと。

また、INSERTBerry Linux(※0.84まで?)などkernelとinitrdがそれぞれFDにおさまるサイズの場合は単純にFDを入替てロードさせることが可能なり。

ブートの確認は、ライブCDの部屋さん版Knoppix 日本語版(LCR版)5.1.1を1GB SDメモリにて。

分割ファイルの作成

Windows上でもできると思うけど、とりあえずKnoppix上で実行。FDは4枚必要。

  • Knoppixをブート。コンソール(ターミナル・エミュレータ)で下記コマンド実行。

※Knoppix 5.1.1 CD ライブCDの部屋さん版の例

【訂正追記】あっと、普通のCDブートでは/cdromは書き込みできないですね。すみません。

$ cd /cdrom/boot/isolinux
$ cp /cdrom/boot/isolinux/linux .
$ cp /cdrom/boot/isolinux/minirt.gz .
$ zip ldfd.zip linux minirt.gz
  • ldfd.zipが作成されたのを確認して分割ファイル作成
$ split -b 1423k ldfd.zip ldfdr
【追記】WindowsでもおK

Lhazでやってみたら普通に可能でした(Lhacaとかでもできるかと)。

  1. linux及びminirt.gzldfd.zipとしてZIP圧縮
  2. 1,423KBで分割
  3. ファイル名をそれぞれ順番にldfdraa,ldfdrab,ldfdracにリネーム

尚、選択メニュー表示はchoice.exeを使ってできました。BG-Rescue Linuxのrescue-0.4.1.zipに入ってるstart.batが参考になるかと。追加するファイルをautoexec.batに記述してRAMドライブにコピーさせるのを忘れないように。

※作成されたファイルを取り出したなら後の作業はWindozeでもおk。

  1. ldfdraa,ldfdrab,ldfdracの3つのファイルが作成されるので、これらをFAT(DOS)フォーマットのFDに単純コピー
  2. ldfdracをコピーしたFD内にend.txtの名前で空ファイルを作成

FreeDOS起動ディスク作成

  1. 上記ページより、fc5fd.tar.bz2をダウンロード
  2. 展開(解凍)してFC5-FloppyInstall-1.imgをイメージとしてFDへRawWrite for Windowsなどで書き込み

【追記】起動ディスクに上書きするファイルをまとめて置いときます。ライブCDの部屋さん版Knoppix 5.1.1用です。(※ あうあう、choice.exe 入れたままだったので修正しました。すみません。)

1枚目イメージを書き込んだFDへ上書きコピーするだけです。choice.exeで選択するオプションファイルも作ってあります。(※内容間違ってたらゴメンナサイ)

長?いオプションをそのまま書いたら蹴られたのでちょこっと修正。

  • fedora.batをメモ帳などで開き下から2行を下記の様に修正
pause Press [Enter] to run USB LiveCD...
loadlin @options.txt
  • autoexec.batをメモ帳などで開き下記の記述(赤字行)を挿入
<略>
copy a:\LDFD*.*
copy a:\options.txt
cls
fedora.bat
  • options.txtを作成してFDに保存
linux
initrd=minirt.gz
ramdisk_size=100000
init=/etc/init
lang=ja-utf8
im=scim
apm=power-off
xmodule=vesa
nomce
loglevel=0
quiet
BOOT_IMAGE=knoppix

ブート

USBメモリにKnoppix CD内のKNOPPIXディレクトリをコピーしておく(全ファイルそのままコピーでもいい)。

  1. FreeDOS起動ディスクでブート
  2. 指示に従い、2枚目から順に入替
  3. 「Press [Enter] to run USB LiveCD...」でEnter
    • ここでポーズが入るのでUSBポートの繋ぎ換えも多分可能かな?

カーネルをロードした後に、KNOPPIXイメージのマウントができない場合はoptions.txtの内容をいじってみること。

Can't find KNOPPIX filesystem sorry.
Dropping you to (very limited) shell.

上記の様なメッセージが出て、USBメモリ内のKnoppixイメージがマウントできない場合に、kernel,initrd読み込み後USBランプが消えた直後にUSBポートを挿し直すとマウント可能になることがあります。

Allowing slow USB-devices some more time to register...ok

このメッセージが出れば多分OK。

いじょ。

*1:DOSに詳しい人なら「こんなのお茶の子さいさい」だったりして...。あっと私自身はど素人なので感謝感激です。