title

Top  >> Vine Linux Menu  >> インストール  >> GRUB 起動ディスク

GRUB 起動ディスク

 起動ディスクとは・・・

 Vine Linux2.xまではインストール中に”起動ディスクの作成”という手順がありましたが、この手順はVine Linux3.xでは、省略されてしまいました。 この起動ディスクとは、Vine Linuxが起動しなくなった場合に用いる緊急用のディスクでした。 例えば、ブートローダーの設定を誤ったままシステムをシャットダウンし、次回起動したときに立ち上がらない・・・といった場合にはFD 1枚からOS を起動でき、非常に重宝したものです。 この起動ディスクですが、Vine Linux3.x では容量が大きくなったためにFD1枚には収まらない、との事です。

 さて、無事にVine Linux をインストールしたものの、インストール時に”LILOをブートセクタの先頭”した場合には、Linux が立ち上げられないと思います。 Windows とLinux をNT ローダーでデュアルブートする際には、1度Linux を起動し、Linux のブートイメージをWindows へコピーする作業が必要です。 ここで、初めてLinux を立ち上げる場合には、今までインストール時に作成した起動ディスクを使って起動していました。 しかし、Vine3.xでは起動ディスクの作成は省略されているので、初めてLinux を起動する方法に困ることになります。

 ここで登場するのは”GRUB 起動ディスク”です。GRUB 起動ディスクがあればLinux を起動できます。 GRUB 起動ディスクを作成するには、FD 一枚と、Vine Linux のインストールCD が必要です。 ここでは、GRUB 起動ディスクをWindows 上で作成する方法を紹介します。


このページのTop へ

 GRUB 起動ディスクの作成

 まず、GRUB を入手します。 GRUB は、 ftp://alpha.gnu.org/gnu/grub/ でダウンロードする事ができます。 現在の最新バージョンは、 grub-0.96-i386-pc.ext2fs ですので、これをダウンロードします。 拡張子が違うものがありますが、”.ext2fs”という拡張子のものを選択します。

次に、Vine Linux をインストールするのに利用したCD をマイコンピューターやexplorer など(Windows 上)で開きます。

GRUB 起動ディスクの作成

CD の”dosutils”というフォルダの中に、”rawwritewin.exe”(ペンギンのアイコン)という実行ファイルがあります。

GRUB 起動ディスクの作成

これを起動すると、 rawwritewin.exe のウィンドウが開きます。

GRUB 起動ディスクの作成

開いたならば、Floppy drive というところで、フロッピーディスクドライブを選びます。 Write タブのImage file という所の右の ... をクリックしてダウンロードしたGRUB ファイルを選びます。 ファイルの種類を All files (*.*) にしておかないと表示されません。

 フォーマット済みのFD をドライブに入れて、Floppy drive の欄を確認し、Write ボタンで書き込みます。 ”Information”というウィンドウが表示され、”Image successfully written.”と表示されれば GRUB の起動ディスクは完成です。 完成したならば、CD とFD を取り出します。


このページのTop へ

 GRUB によるLinux の起動

 次に、このディスクを使用してLinux を起動させます。 GRUB 起動ディスクをFD ドライブに挿入した状態でPC の電源を入れます。 GRUB の起動ディスクが読み込まれると、次のようなプロンプト画面になります。 画面が表れず、Windows などが起動した場合には、デバイスの読み込み優先順の設定を見直します。 この設定は、BIOS にて読み込み順をハードディスクよりフロッピーを優先にすればOK です。 それでもダメな場合には、GRUB のディスクが正しく作成されていないと考えられます。

grub >

 この後はコマンドを使用しますが、スペースやドットなどに注意しながら入力します。
尚、GRUB には”シェル”と呼ばれる機能が備わっているために、”Tab”キーを押す事でファイル名などが補完されます。
この先、”=”や”()”を入力しますが、キーボードの配列がUS 配列なので、これらを入力する時には右に1つずらします。
例えば、”(”を入力する場合には、”Shift + 9”といった感じです。
実際に入力してみればすぐに分かるかと思います。
まず、以下のように入力し、”Tab”キーを押してみます。

grub > root (

すると、PC に接続されている記憶デバイスの一覧が表示されます。
fd0 はフロッピードライブ、 hd0 はハードディスクを表します。

Pssibile disks are: fd0 hd0

では次に、ハードディスクのパーティション情報を表示させてみます。
次のようにコマンドを入力し、”Tab”キーを押します。

gurb > root (hd0,

すると、ハードディスクのパーティション情報が表示されます。
私の場合には、次のように表示されました。

Partition num: 0, Filesystem type unknown, partition type 0×7
Partition num: 1, Filesystem type is fat, partition type 0×c
Partition num: 2, Filesystem type is ext2fs, partition type 0×83
Partition num: 3, Filesystem type unknown, partition type 0×f
Partition num: 4, Filesystem type unknown, partition type 0×82
Partition num: 5, Filesystem type is ext2fs, partition type 0×83

実際にVine Linux のインストーラで設定したパーティションとこの表示を照らし合わせて見ます。 私の場合、インストーラ上での設定は以下の通りでした。 上記の”Partition num:”や下記の”hda”の部分は個人の環境によって異なりますので、注意してください。

・パーティション例
	hda1   NTFS(Windows XP)
	hda2   vfat(Data)
	hda3   ext3(/boot)
	hda4   (拡張領域)―――hda5  swap
	              hda6  ext3(/)

 GRUB で表示させたパーティション情報と、インストーラでも設定を見比べると、パーティションを識別する数字が1つずつずれている事に気がつきます。 ”Partition num:”の部分と、”hda...”の部分の数字です。 また、それぞれファイルシステムが異なると、パーティションタイプの末尾の数値も異なります。 ここで注目するのは、Linux のパーティションを表している”ext2fs”です。
GRUB の表示と、インストーラの表示を比べると、”/boot”と”/”がどこに対応するか分かると思います。
私の場合には、”Partition num: 2”はhda3、即ち”/boot”であり、”Partition num: 5”はhda6、即ち”/”である事が分かります。

さて、パーティションを確認した所で、いよいよ起動の手順になります。
まず、次のように入力し、”/boot”パーティションを再確認します。

gurb > find /map

エラーが出た場合には、次のように試してみます。

gurb > find /boot/map

うまくいけば、”/boot”パーティション、即ちカーネルの場所が表示されます。
私の場合は、”(hd0,2)”と表示されました。 前述の比較においては、”Partition num: 2”に対応します。

次に、表示された数値の通りに以下のように入力してEnter を押します。

gurb > root (hd0,2)

すると、そのパーティションの情報が表示されます。
/boot パーティションなので、次のよう表示されます。

gurb > Filesystem type is ext2fs, partition type 0×83

続いて、次のように入力してEnter を押します。
ここで、”vmlinuz-....”の部分はカーネルのバージョンなので、適宜置き換えます。
GRUB はシェル機能があるので、途中まで入力してから”Tab”を押すと、自動で補完されます。
また、最後の”hda”の数値部分は、ハードディスクの”/”パーティションの数値に置き換えます。
ここの数値が違うと、”kernel panic”となって起動しません。
その際には、手順と数値を確認してやり直します。

gurb > kernel /vmlinuz-2.4.27-0vl17 root=/dev/hda6

入力すると、次のように表示されます。
setup= や size= の部分は環境により異なるかと思います。

gurb > [Linux-bzImage, setup=0x14000, size=0x15d75b]

ここまで終わったら、次のように入力して起動させます。
成功すると、Vine Linux が起動します。

gurb > boot

”kernel panic”となって起動しなかった場合には、手順を再確認します。
手順やコマンドの入力ミス、指定するパーティションのミスが無いかを確認し、やり直します。

GRUB ディスクを用いたLinux の起動は以上です。


このページのTop へ

 GRUB 起動ディスクのメニュー設定

 上記のように、GRUB の起動ディスクを使用すればどのOS でも起動することが出来ますが、コマンドから起動させるのは少々面倒です。 そこで、上記で行ったコマンド操作をメニューに登録し、OS を選択肢で表示する方法を紹介します。 用意するものは、GRUB の起動FD です。 このディスクはWindows 上で作成したものでも、Linux 上で作成したものでも構いません。 但し、メニュー登録の操作は、ファイルシステムの関係上Linux 上でしか行えませんので、注意してください(Windows 上で行うツールもあるような・・・)。

 以降の操作は、次のパーティション構成を例として説明します。 実際に作業をする場合には、自身の環境に合わせてパーティションやバージョンを読み替えてください。

・パーティション例
	hda1	WindowsXP
	hda2	Data storage
	hda3	/boot
	hda4
	  +-----hda5	swap
	  +-----hda6	/
	  
	  * MBR にはNTLoader、/boot にLILO がインストールされているものとします。

 まず、Linux を起動させ、GRUB のFD をマウントします。 マウントしたならば、FD 内に/boot/grub/menu.lst というファイルを作成します。

GRUB メニュー

menu.lst 内に記述を行います。 以下は、WindowsXP 、LILO、Vine Linux を起動するリストを記述する場合の例です。

default=0   <--- デフォルトで起動するOS の指定(0から記述順になる)
timeout=10   <--- 入力の無い場合にデフォルトが起動するまでの時間

title WindowsXP   <--- OS のラベル名(任意)
chainloader (hd0,0)0+1   <--- ブートローダーの指定(0+1 はパーティションの先頭セクタを示す)

title LILO
chainloader (hd0,2)0+1   <--- LILO の場所を指定

title Vine Linux3.2
root (hd0,2)   <--- カーネルイメージの場所を指定
kernel /vmlinuz-2.4.31-0vl1.8 root=/dev/hda6   <--- カーネルとroot としてマウントするパーティションを指定

Linux を起動するためには、LILO を経由するか、直接起動する方法があります。 LILO を経由する場合には、NTLoader を同様に指定を行います。 LILO を起動後、LILO の起動画面でOS の選択やテキストモードでブートなどができるので、LILO にオプションを渡したい場合にはこの記述が有効です。 一方、LILO を経由する必要が無く、Linux を直接起動したい場合には、最後の記述が有効です。 この記述は、先に述べたコマンド操作でOS を起動する際の書式と同様です。 いずれの場合も、パーティションの指定を間違えると起動エラーが出ますので、注意してください。 より詳しい記述方法は、GRUB のサイトを参照してください。 また、このファイルはGRUB のFD 内に作成するために、テキストファイルとはいえ大容量のものを作成できませんので、多くのの記述を行う事はできません。

上記の設定が有効であれば、FD 起動した際に次のようなOS 選択画面が表示されます。

GNU	GRUB	version0.96  (638 K  lower /  506816 K  upper  memory)

――――――――――――――――――――――――――――――――――

 WindowsXP	
 LILO
 Vine Linux3.2

――――――――――――――――――――――――――――――――――
	Use the ↑ and ↓ keys to select which entry is highlighted.
	Press enter to boot the selected OS, 'e' to edit the
	commands before booting, or 'c' for a command-line.

選択肢を選ぶと、そのOS が起動します。 GRUB のメニューに関する設定は、OS のパーティションを変更しない限り有効です。


このページのTop へ