この文書は Grub4DosConfig version 1.0のために書かれました
リナックスや他のOSを起動するブートローダとして定番のものに Grub があります。 パピーリナックスでも syslinux(フロッピーディスクやUSBメモリなどに対応) とともに Grub が採用されてきました。 しかし Grubには大きな制限があります。 リナックス専用となるファイルシステム ext2 または ext3 でフォーマットされたパーティションが必要だということです。 Grub4Dosは Grubと互換性のある機能を有しつつ、 Windowsで使用される NTFS や FAT ファイルシステムの上にもインストールできます。 その他にも機能拡張があります。
ブートレコード(BR)とはハードディスクドライブ(HDD)などに起動用のコードを格納する領域、またそのコードのことです。 MBR(Master Boot Record)とは、第1番目の内蔵HDD(sda あるいは hda)のものを指します。 通常はこれでよいのですが、別のHDDにインストールすることもできます。 注意すべきは、パピーが認識するHDDと起動のときBIOSやGrub4Dosが認識するHDDとは呼び方が異なるだけでなく、認識する数や順番が異なるかもしれないということです。 この問題は後にも出てきます。
内蔵HDDを触らずにUSBメモリにインストールするのも安全な方法かもしれません。 ただし、あなたのパソコンが USBメモリからの起動に対応していることと、その設定方法をあなたが知っているということが条件になります。
フロッピーディスクドライブがあり、それから起動できるならば、まずはフロッピーディスクにインストールすることをお勧めします。 できれば新しいフロッピーディスクを用意してください。すでに使ったものでも良いですが、インストールに使用すると、内容はすべて消去されます。 大事なデータが入っていないか、あらかじめ確認しておいてください。
インストールされるGrub4Dosの実態は ブートレコードに格納される起動用コードと、2つの通常ファイル、 grldr と menu.lst です。 原則的に grldr と menu.lst はインストール先HDDの第1パーティションに保存されます。
現在のMBRにはWindowsを起動する ntldr など(を起動するコード)が入っていて、それをそのまま使いたいことがあるかもしれません。 その場合は「ブートレコードは書き換えない」にチェックを入れてください。 grldr と menu.lst だけが配置されます。 このような場合、 ntldr などから grldr を起動できる設定が別途必要です。 Grub4dos Guide(英文)を参考にしてください。
逆にブートレコードが別のものに書き換えられてGrub4Dosをインストールしなおすさいに、以前の'menu.lst'をそのまま残したいときもあるでしょう。 そのときは「'menu.lst'は書き換えない」にチェックを入れてください。
フロッピーディスクにインストールするときはチェックに関わらず、常にブートレコード、grldr と menu.lst を書き込みます。
Grub4DosConfigは内蔵あるいは接続されているハードディスクやUSBメモリを調べ、 インストールされているパピーや他のリナックスOSを検出してリストアップします。
ここでできることは、起動時にメニューに表示されるタイトルの変更と削除だけです。 Grub4DosConfigが検出できなかったOSを追加することはできません。また順番を入れ替えることもできません。 ここでできなかったことは、インストールが済んでから menu.lst を直接編集することで行います。
箱の中の文字列(タイトル)が起動のときにメニュー項目として表示されます。 同じタイトルがあるときは区別できるようにタイトルを書き換えておきましょう。日本語の文字はたぶん表示できないでしょう。
メニューに必要のない項目はタイトルを空白にしてください。
Windowsがインストールされいるかどうかに関わらず、Windowsに関する項目は3行出てきます。 インストールされておらず、今後もインストールする予定が無ければ、その項目を空白にしてください。
ここでも、順番を変えることはできません。 たとえばWindows XPを起動させたいのならば、Windowsの項目の2番目にそれがなくてはなりません。Vista/2008/7 を使う予定が無ければ1番目を空白に、9x/Meが必要なければ3番目も空白にしておきます。
フロッピーディスクやUSBメモリにインストールするときは、これらをそのまま残しておくのが良いでしょう。別のコンピュータで役立つかもしれないからです。
別のドライブ、別のパーティションであっても、同じ名前のフォルダを作ってそこにパピーをfrugalインストールしていると起動に失敗します。フォルダ名重複のエラーが出たら、いずれかのフォルダ名を変更してからDrub4DosConfigを再起動してください。
menu.lst の書式詳細はGrub4dos Guide(英文)を参照のこと。
パピーがFullインストールされていたり、他のリナックスを起動するためには menu.listを修正しなければならない場合があるでしょう。パピーをFurugalインストールしており、他にはWindowsしか無いならば、Grub4DosConfigが自動作成した menu.lstをたいていはそのまま使用できるはずです。
Fullインストールされたパピー、他のリナックスの起動には落とし穴があります。 これらを起動するには、インストールされたパーティション、正確にはリナックスカーネル(vmlinuz)の場所の指定と、ルートファイルシステムの場所の指定が必要です。 このうち前者、カーネルのあるパーティションはGrub4Dosに対する指示で、後者、ルートファイルシステムの場所は起動したリナックスカーネルに対する指示となります。
ここで、(1)Grub4Dosが認識するパーティション、(2)起動されるリナックスカーネルが認識するパーティション、 さらには(3)現在走っているパピー(のカーネル)が認識するパーティション、これら3つが、呼び方が異なるだけでなく、認識する数や順番が異なるかもしれないということが、大きな落とし穴となります。
典型的な場合、たとえば先頭のHDDは Grub4Dosでは (hd0)、(パピー)リナックスカーネルでは sda、 その第1パーティションは Grub4Dosでは (hd0,0)、(パピー)リナックスカーネルでは sda1となります。
ところが、リナックスカーネルのバージョンによって、あるいはハードによってたとえば先頭のHDDが sda ではなく hda、2番目が hdb、 3番目が sda という場合もあります。 これらは Grub4Dos ではhd/sdの区別なく順に (hd0)、(hd1)、(hd2) となります。 これはむしろ単純な場合で、それぞれが認識する数が異なる場合はもっとやっかいになります。
生成された menu.lstの 「root (hd0,4)」などの行にあるhdの後の数字の変更「root (hd1,4)」、「root=/dev/sda5」などの記述を「root=/dev/hda5」に変更したりするなどが必要かもしれません。
すでにGrubがインストールされているならば、 古いmenu.lstが存在しているはずです。 それらは /(ルート)、/boot あるいは /boot/grub ディレクトリにあります。日付と時間を付けた menu-2009-08-12-144950.lst などと名前が変更されているかもしれません。 これらがある場合、それらを参考にします。 いままでそれで無事に起動していたならば、該当部分(title行から次のtitle行の手前まで)はまるごと引き写しでよいはずです。
生成された menu.lstは標準的なブートオプションだけが記載されています。たとえば 「acpi=off」など機器固有に必要なオプションがあれば追記してください。
ドライブがUSB接続のとき、Grub4DosConfigはそれをUSBフラッシュメモリであると「pmedia=usbflash」オプション、USB接続のHDDならば「pmedia=usbhd」を加えます。 これが間違っていたなら書き換えてください。
メニューの順番を入れ替えたいときは、title行から次のtitle行の手前までをセットにして前後を入れ替えてください。 また、何も選択せずに時間が経つと自動的に起動するのは 「default」行で指定された項目となります。先頭が0番。後は1,2...と数えます。
以上です。成功を祈ります。
2009年9月 Shinobar