Mazn.net

やってみて 調べてみて 苦労しなけりゃ 箱は動かじ

GRUBのコマンドラインで、手動でLinuxを起動する@CentOS 5.4

      2013/07/15

前回の記事で、USBのハードディスクにLinuxを入れたまではいいが、Windowsのブートローダを設定してもGRUBという文字が表示されフリーズしてしまい、Linuxを起動できません。

そこで他のメディアにGRUBをインストールし、そこから手動で起動することにしました。

最近のPCにはフロッピーが搭載されていないことが多いため、CDからの起動です。GRUB入りのCDを作ろうと思いましたが、誰か作ってるのを公開しているだろうと思い調べて見たら、アクセンス・テクノロジーさんがISOイメージ公開してくれていたので使わせて頂きました。

このCDを使用してPCを起動すると、grub> というGRUBのプロンプトが出てきます。

ここから起動方法です。まず前提ですが、今回使用するUSBハードディスクは、内蔵で2台のSATAのハードディスクがあるため、PCからは3台目として扱われます。

GRUBでは、 1台目のハードディスクがhd0, 2台目がhd1として扱われ、今回は3台目なのでhd2として扱われます。

さらに、重要なのが/bootと/の場所です。今回の環境では、3台目のハードディスクで

パーティション0 : /boot
パーティション1 : /

となっています。まずは、rootの指定です。ここでいうrootは/bootのパーティションです。

grub> root (hd2,0)

次はカーネルの指定です。

カーネルは/bootに入っているため、

grub> kernel (hd2,0)/vmlinuz-2.6.xxx ro root=LABEL=/

と入力します。vmlinuz- の箇所は、実際にインストールされているlinuxによりますが、GRUBはext3のパーティションを読めるので、vmlinuzまで入力した後にTABを押すことで補完できます。

なお、今回は/bootが/のパーティションと別パーティションになっているため上記のようなvmlinuzの指定になっていますが、/boot と / のパーティションが一緒の場合は(hd2,1)/boot/vmlinuz-2.6.xxx と記述する必要があります。

LABEL=/は、初めてLinuxをインストールしたシステムならば、パーティションにこういったラベルが自動で付けられるので問題ないですが、ラベルがないときは、(hd2,2) といったふうに、/パーティションを指定します。

最後はinitrdの指定です。initrdの詳しい説明はしませんが、システムによってはinitrdがなくても起動できます。通常は/bootに入っています。

grub> initrd (hd2,0)/initrd-2.6.xxx   ←これもTABで補完可能

最後に起動です。

grub> boot

以上で起動します。

ちなみに起動中にmountエラーでカーネルパニックになった出た場合はkenel行のrootの指定が間違っています。

 - IT技術, サーバ構築 , ,

336px

Message

メールアドレスが公開されることはありません。

  関連記事

no image
パイプでつないだコマンドの戻り値を調べる@bash

シェルスクリプトで、実行したコマンドの戻り値を知る方法は有名ですよね。 以下のよ …

no image
コマンドラインで画像編集@Cygwin

シェルスクリプトで画像を扱いたい場合は、 ImageMagick というソフトが …

no image
ddコマンドと圧縮・展開@CentOS 5

dd コマンドの便利な使い方のあれこれです。 通常ddコマンドは、if, ofの …

no image
WordPress と Twitter の連携 その2

WordPress の Tweetable プラグインから Twitter To …

no image
フルスクリーン時に日本語入力ツールバーが邪魔@Ubuntu 9.04

scim+anthy で日本語入力していましたが、動画を見るときにフルスクリーン …

no image
シェルで逐一時間表示@bash

デバッグを目的に、 逐一コマンド実行時に時間を表示させたい場合があります。 $ …

no image
manをmoreではなくlessで見る@FreeBSD 7.1

さくらインターネットでsshでログインし、manを打つとmoreを使用してページ …

no image
vimで検索語をハイライトする@さくらインターネット

普通vimで検索すると、検索語がハイライトされるのですが、さくらインターネットに …

no image
Wireless Tetherで無線LANが繋がらない原因@Galaxy S + Windows 7

Galaxy S + Wireless Tether を使ってテザリングをしよう …

no image
viで制御コードの入力

.vimrcといった設定ファイルを書いていると、制御コードを入力したいときがあり …