Palm84 某所の日記

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

GRUBを使った起動ディスクの作成(小さな冒険シリーズw その3)

【追記】GRUB for DOSの方が便利かも。mkisofsやBCDWでCDイメージ作成できます。FAT版FDイメージもダウンロード可能。

えーと、私はLILOを普通にMBRに入れちゃったので万が一のために起動ディスクを作っといた方がいいかなと挑戦してみました。

10回以上試行錯誤しましたが(汗)、エッチラオッチラ成功しました。

  1. (Windowsで)FDイメージと「RawWrite for Windows」のダウンロード
  2. (Windowsで)rawwritewin.exe を使いFDに書込
  3. (Linuxで)dfコマンドでルートパーティション("/")の確認(例:/dev/hda9)
  4. FDで起動
  5. find /map または find /boot/map でカーネルの場所確認(例:(hd0,7))
  6. 通常起動して下記の内容で menu.lst を作成、FD内の /boot/grub に保存
default=1
timeout=10

title Windows
        chainloader (hd0,0)0+1

title Vine Linux3.2
        root (hd0,7)
        kernel /vmlinuz-2.4.31-0vl1.12 ro root=/dev/hda9

※【追記】あっと、initrdも指定した方がいいですね。

        initrd /initrd-2.4.31-0vl1.12.img

GRUBのパーティションの数え方及び[root]の指定が違うのでややこしかったです。 kernelイメージの置かれているパーティションってことですね。 かな?(自信なさすぎw)LILOは普通にMBRに入れてます。

root“コマンド”でカーネルのあるパーティションに移動、kernel“コマンド”での「root=」の指定は起動させるLinuxのルート(“/”)パーティションのことですね。(汗

bootパーティションを物理的(論理的かな?)に分けていてもLinux上では「/boot」としてマウントされるってことは注意かも。 (つい最近気づきました...滝汗)

うんと、私の場合DOS拡張領域の中にLinuxのパーティションを作っちゃったのでややこしかったのかもです。

私の環境では使えなかったのですが、MBMの方が簡単みたいですね。(※私の場合、DOS拡張領域内にあるからなのか、Linuxパーティションを指定しても”Ntldr is missing”となってしまいます。)

【追記】すみません。アホな勘違いしてました。私の場合、liloをMBRに入れてる(※つまりPBRには入ってない)のでMBMでLinuxが起動できないのはアタリマエですね(滝汗)。Windowsの方は起動できます。こういう場合はGRUBの起動ディスク使いましょう。

【追記】日本語キーボードにちょこっと対応

menu.lst に記述します。

# jp106 keybpad
setkey at bracketleft
setkey doublequote at
setkey ampersand caret
setkey quote ampersand
setkey parenleft asterisk
setkey parenright parenleft
setkey bar parenright
setkey equal underscore
setkey plus colon
setkey colon quote
setkey asterisk doublequote
setkey bracketleft bracketright
setkey braceleft braceright
setkey bracketright backslash
setkey braceright bar
setkey backslash tilde
setkey tilde plus
setkey caret equal
setkey underscore braceleft
  • \』バックスラッシュ は Shift-半角
  • _』アンダースコア は Shift-@
  • |』バー は Shift-0
  • `』バッククオートは 半角