ブートローダーについて(LILO編) | Linux初心者の入門と基礎、Linux大学学長りなっくま先生のブログ

ブートローダーについて(LILO編)

Linuxの起動の流れは、BIOSがブートデバイスのマスターブートレコード(MBR)からブートローダーを
実行します。ブートローダーとはLinuxカーネルをメモリにロードするためのものです。

Linuxでは一般的にLILOGRUBというブートローダーを使用しています。


☆ 起動の流れは以下の通りになります。

【電源ON】
  ↓
【BIOS起動】
  ↓
【ハードウェアの初期化】
  ↓
【マスターブートレコードからブートローダーを読み込む】
  ↓
【ブートローダーは設定に従ってカーネルをロード】
  ↓
【カーネル】
  ↓
【起動プロセス】


LILOの正式名称は、「LInuxLOader」と呼び、ブートローダーは2段階に分かれています。 これは、マスターブートレコードのサイズ(512バイト) が小さいために、ブートローダー全体を格納することができないからです。

$LPIC対策講座 - レベル1、レベル2、レベル3 -


プライマリブートローダーは、セカンダリブートローダーを呼び出すための情報をセクタ1つ分
に格納しておきます。

通常、プライマリブートローダーはMBRか、/bootの先頭セクタにインストールされます。


セカンダリブートローダーは、ブートプロンプトをユーザーに提供し、ユーザーは、ブート時の
オプション設定やロードするカーネルの選択を行うことができます。

その後、指定されたカーネルをメモリにロードしてOSを起動します。

LILOの設定は/etc/lilo.confに記述します。/etc/lilo.confの内容にしたがってLILOを
インストールするには、「lilo」コマンドを使用します。


[主な設定項目]
$LPIC対策講座 - レベル1、レベル2、レベル3 -



■/etc/lilo.confの設定例
boot = /dev/hda
timeout = 50
prompt
default = linux
append = "apm=on mem=256M"
read-only
map = /boot/map
install = /boot/boot.b

image = /boot/vmlinuz-2.4.18-1
label = linux
initrd = /boot/initrd-2.4.18-1
root = /dev/hda5