IT

ブートローダ【LPIC level2】

目次

  • ブートローダ
  • GRUB
  • 起動オプションの設定
  • システムの回復

ブートローダ

ブートローダとは、カーネルをハードディスク内から読み込み、システムを起動する為のプログラムです。

代表的なブートローダには、GRUBやLILOがあります。

GRUB(GRand Unified Bootloader)

GRUBは多くのディストリビューションで標準的に利用されているブートローダです。GRUBの特徴は以下の通りです。

  • 多数のファイルシステムを認識可能
  • シェル機能を搭載し、コマンドによる高度な管理が可能

GRUBには古くから使用されてきたGRUB Legacyと新たに設計されたGRUB2があります。

GRUB Legacy

GRUB Legacyは3つのステージから構成されます。

ステージ説明
1MBR内に設置され、ステージ1.5と2をロードするプログラム
1.5ステージ2を見つけロードする為のプログラム
2/boot/grubディレクトリ以下にあるGRUBの本体

ステージ1はMBR内に配置された小さなプログラムで、ステージ1が実行されるとステージ1.5を読み込んで制御します。

ステージ1.5はステージ2のプログラムを、ファイル状のパスを使って見つけ出し、読み込んで制御を移すプログラムです。ファイルシステムを理解する必要がある為、ファイルシステムごとに用意されています。

ステージ2は/boot/grub/stage2というプログラムで、メニューを表示し、選択されたOSもしくはカーネルを起動するGRUBの本体プログラムです。

ブートローダとしてGRUBをインストールするには、grub-installコマンドを実行します。

GRUB Legacyの設定ファイルは/boot/grub/menu.lstです。以下、/boot/grub/menu.lstの設定ファイルで主に用いられるパラメータです。

パラメータ説明
timeoutメニューを表示している時間
defaultデフォルトで起動するエントリの番号
splashimageメニュー表示時の背景画像
titleメニューに表示されるエントリ名
rootカーネルいえめーじもしくはOSが格納されているパーティションの設定
kernelカーネルイメージとカーネルオプションの指定
initrd初期RAMディスクファイルの指定
makeactiveルートパーティションをアクティブ化
chainloader指定されたセクタの読み込みと実行
hiddenmenu起動時の選択メニューを表示しない

GRUB2

GRUB2の設定ファイルは、BIOS搭載機では/boot/grub/grub.cfg、UEFI搭載機では/boot/efi/EFI/<id>/grub.cfgです。

GRUB Legacyと異なり設定ファイルを直接印刷することはありません。

設定ファイルは/etc/default/grubファイルで行い、gurb-mkconfigコマンドでgrub.cfgファイルを作成します。

起動オプションの設定

ブートローダには、起動時にカーネルやinitプログラムに渡すオプションパラメータを指定することも出来ます。以下、指定できる主なパラメータです。

パラメータ意味
init=パス指定したパスのコマンドを初期プログラムとして指定する
mem=nM物理メモリをnMBに指定する
nosmpSMPマシンをシングルプロセッサとして動作させる
nohtHyperThreading機構を無効にする
maxcpus=数利用するCPUの数を指定した数に制限する
root=デバイスルートファイルシステムを指定する
read-only、roルートファイルシステムを読み取り専用でマウントする
single、sシングルユーザーモードで起動する
数値指定した数値のランレベルで起動する

システム起動後に起動オプションを確認するには、/proc/cmdlineを参照します。

システムの回復

ハードディスクからシステムが起動できなくなった場合は、インストールCD/DVD-ROMに内蔵されているレスキューモードなどを使ってCD-ROMから起動し、システムを修復します。

最後まで読んで頂き、ありがとうございました。

他の分野へ移動できる全体ページへは以下リンクからお願いします。