boot-fd の覚書*1

ここで取り上げる内容

前述の裏窓/02_MultiBootCDの役に立ちそうな、ブートFDについてのメモです。

FD Samba をCD-ROMブートするときのTips

素のFDSambaのFDイメージを multi boot cdrom に焼いて起動すると、
ブート中に /dev/fd0 を見に行ってしまい、ブートに失敗します。
これを回避するためには、以下のように rc.S ファイルの一部をコメントアウトすることで対応できます。
作業には、Linuxなどの*nixなOS(とエディタ)が必要です。
もちろん、Google:tomsrtbt 1fdを使ってもいいです。

一応、こんなのも置いておきます。ダウンロードしてお使いください。

  • filefdsamba-121-pcmcia.img
    FD Samba 1.21 をベースに、syslinux 1.76 に差し替えて、

    SCSI ドライバ を削除して、PCMCIA 追加ドライバ を足したもの
  • filefdsamba-121-no-pcmcia.img
    上記から、PCMCIA ドライバ を削除したもの
  1. 一度、FDSambaのFDを作ります
  2. http://www.samba.gr.jp/project/fdsamba/runner/fdsamba-1.2.html の下のほうにある、
    「moduleの入れ代え作業」を参考にして、ROOTFSファイルを
    ループバックデバイスでマウントします
  3. (ROOTFSをマウントしたところ)/etc/rc.S の以下の部分をコメントアウトします
    #mount /dev/fd0 /var/mnt
    #tr -d'\015'</var/mnt/network.cfg >/etc/network.cfg
    #tr -d'\015'</var/mnt/modules.cfg >/etc/modules.cfg
    #tr -d'\015'</var/mnt/rc >/etc/rc
    #umount /var/mnt
  4. ネットワーク設定のデフォルトを変更したいときや、PCMCIAサポートをNOにしたい時は

    (ROOTFSをマウントしたところ)/etc/network.cfg を編集します
  5. 逆の手順でROOTFSをFDに書き戻します
  6. FDにある、次の3ファイルを削除します。
    • MODULES.CFG
    • NETWORK.CFG
    • RC

でOKです。ちなみにこれをやると

ip-address, netmask, network, broadcast, hostname の設定が固定されてしまいますので、
FDSambaをブートした後にそれぞれ、ifconfig, route, hostname コマンドで
その都度設定してあげればよいでしょう。

それと、http://www.samba.gr.jp/project/fdsamba/runner/fdsamba-1.2.html
配布されているFDイメージ中のsyslinuxは、vmlinuz や rootfs.gz の読み込みが遅いようです
(うちの環境だけかな?)。最新版のsyslinuxに変えたいときは、
A: ドライブにFDSambaのブートFDを入れた状態で、
http://syslinux.zytor.com/download.php から最新版をダウンロードした後で、
「syslinux a:」等とコマンドを打つといいです。

BFD (by Bart Lagerweij) をJP-106キーボード対応にする

BFD - Build Floppy Disk (by Bart Lagerweij)
(日本語フォントは入ってないけど)簡単にCD-ROM対応/Network対応ブートFDを作れるのでお勧めです。
ダウンロードして、DOS窓で「bfd cdrom a:」と打つだけで
あっという間にCD-ROMが使えるブートFDが手に入ります
(Windows98のライセンスを持ってないとだめですが)。

ところがこいつ(BFD ver1.0.2)はキーボードドライバを持っていません。
これでは日本人はおろか、ベルギーやロシアでもかなり困るに違いありません。
そこで、BFDを多少モディファイしてキーボードドライバを載せましょう。

急いでいる人のために変更済みの filexkeyb.cabxkeyb (1.13ベース) と filebfd.cfg
ここにおいて置きます。以下の手順と併せてご利用ください。

  1. BFDをダウンロードし、解凍します。
  2. modboot形式に対応したキーボードドライバパッケージを入手します。
    http://www.nu2.nu/bootdisk/modboot/ にある、xkeyb.cabをダウンロードし、解凍しておきます。
    次の手順でそっくり中身を差し替えるのですが、このアーカイブに含まれる autorun.bat, bin/xkeyb.bat を流用するためにこの手順を踏みます。
  3. 日本語対応にするために、最新版のxkeybを入手します。
    http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/dos/xkeyb/ で最新版を入手します。
    2002/09/15時点では、xkb1_13x.zip が最新でした。これをダウンロードし、解凍します。
  4. 先のxkeybを、最新版で差し替えます。
    1. 最新版を解凍して出来た、*.key ファイル全てを

      (先のxkeybを解凍したフォルダ)\bin フォルダにコピーします。
    2. 最新版を解凍して出来た、xkeyb.txt をエディタで開き、

      ファイルの終わりのほうにある「13. Supported Keyboard layouts」のレイアウト名を全てコピーします。xkb1_13x.zip だと、BE〜US-LVまでの32行です。
    3. 先のxkeybを解凍して出来た、\bin\xkeyb.bat を編集します。

      44行目あたりの :w_list ラベルの中身に、ひとつ前の手順でコピーした内容を貼り付けて保存します。
    4. 先のxkeybを解凍したフォルダにある、autorun.bat, bin フォルダの2つを、cab形式で圧縮し、ファイル名を xkeyb.cab とします。
  5. BFDの定義ファイルを書き換えます。BFDを解凍したフォルダにある、bfd.cfg をエディタで開き、
    34行目あたり、60行目あたりに次の行を書き加えてください。
    c       cabs\xkeyb.cab level1
  6. 新たに作った xkeyb.cab を仕込みます。

    BFDを解凍したフォルダにある、cabs フォルダに新たに作った xkeyb.cab をコピーします。
  7. BFDを起動します。

    a: ドライブにFDを入れ、DOS窓で「bfd cdrom」と打ちます。
    これで cd-rom が使えるDOS(Windows98のDOS)のブートディスクが作れます。
  8. あとはdd.exe等でFDイメージファイルを作成し、
    multi boot cd-rom 等に焼きましょう。

このようにして作った xkeyb.cab は、
MODBOOT - Bart's Modular Boot Diskを作る際にも使えます。

USBデバイスドライバ入りブートディスク

ここにありました。

まだ使ってないので真偽のほどは不明です。

FATフォーマットのFDにGRUB をインストールする

急いでいる人はfilegrub092.img を落とし、
dd.exe 等でFDDに書き込むといいです。

dd grub092.img a:

またはcygwin

$ mount -b //./a: /dev/fd0
mount: warning - /dev/fd0 does not exist.
$ dd if=grub092.img  of=/dev/fd0
2880+0 records in
2880+0 records out
$ umount /dev/fd0

なんてやるのもオツです。

わざわざFATフォーマットのFDにGRUBをインストールするのも何ですが、
「Windowsな環境から、ごく普通にmenu.lstファイルが編集できる/画像ファイルを入れられる」ので、
ちょっとは役に立つかも。

この記事は、ここの記事
を参考に作成しました。大まかな手順は、

暫定的なGRUBブートディスクと、FAT形式の未完成GRUBブートディスクを作成し、
暫定的なGRUBブートディスクでブートした後で、FAT形式の未完成ディスクを完成させる

ように進めます。

  1. GRUBの最新版をダウンロードします。

    ここから
    最新版を入手しましょう。grub-0.97-i386-pc.tar.gzを落とし、解凍してください。
  2. http://ring.ocn.ad.jp/archives/linux/debian/debian/tools/rawrite2.zip を入手し、
    解凍して rawrite2.exe を入手します。
  3. 暫定的なGRUBブートディスクを作成します。
    1. (grub-0.92-i386-pc.tar.gzを解凍したディレクトリ)\boot\grub にある、
      stage1, stage2 の2つのファイルを結合します。

      DOS窓で次のコマンドを打ちます
      copy /b stage1 + stage2 grub.raw
    2. -grub.raw をFDに書き込みます。

      DOS窓で次のコマンドを打ちます
      rawrite2 -f grub.raw -d a:
  4. 未完成のFAT形式GRUBブートディスクを作成します。
    FDをFATでフォーマットし、grub-0.92-i386-pc.tar.gzを解凍したディレクトリにある、
    boot フォルダを a: にコピーします。
    a: ドライブのルートには、bootフォルダのみ見える状態にするわけです。
  5. 暫定的なGRUBブートディスクで再起動します。
    暫定的なGRUBブートディスクをFDDに挿し、再起動してください。
    「grub>」というプロンプトが出たら成功です。
  6. FDを未完成のFAT形式GRUBブートディスクに差し替えます。
  7. 次のコマンドを打ちます。
    grub> root (fd0)
    grub> setup (fd0)
    grub> quit
    これでFAT形式のGRUBブートディスクが完成しました。
  8. Windows上で a:\boot\grub\menu.lst をお好みに合わせて作成します。

    例えば&ref(): File not found: "menu.lst" at page "裏窓/03_BootFD";をコピーしておくとよいでしょう。
  9. あとはdd.exe等でFDイメージファイルを作成し、
    multi boot cd-rom 等に焼きましょう。
    dd.exe a: imagefile.img

最後に感想など

こんなに苦労しても、これらが活躍するのって1年に1回くらいなんですよね。ま、いいか。


*1 2003/01/25 リンク修正しました xkeyb.cab, bfd.cfg

添付ファイル: filexkeyb.cab 797件 [詳細] fileisolinux.cfg 370件 [詳細] filegrub092.img 429件 [詳細] filefdsamba-121-pcmcia.img 925件 [詳細] filefdsamba-121-no-pcmcia.img 746件 [詳細] filebfd.cfg 1055件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-05-10 (火) 01:12:01