0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GRUB LegacyとGRUB2の設定比較(個人メモ)

0
Posted at

はじめに

GRUB Legacyとその後継のGRUB2の設定を混同したので整理します。

GRUBとは?

GRUBはブートローダの代表例で、
システム起動において、BIOSやUEFIの次に動いてカーネルを起動する役割があります。

BIOS→ブートローダ(GRUB)→カーネル→init

そのため、GRUBの設定ファイルには、Linuxをどのように起動するかに関する情報が記述されています。具体的には、

  • 起動に使用するカーネルイメージの場所
  • ルートファイルシステムのあるパーティション
  • 初期RAMディスク(initrdまたはinitramfs)の指定
  • 読み取り専用やシングルユーザモードなどの起動オプション

などがあります。

次から本題です。
GRUBとGRUB2の設定が違って混同するので、整理していきます。

GRUB LegacyとGRUB2の設定比較

①設定ファイルの場所

項目 GRUB Legacy GRUB2
BIOS /boot/grub/menu.lst /boot/grub/grub.cfg
代替 /etc/grub.conf /boot/grub2/grub.cfg
UEFI 非対応 /boot/efi/EFI/〜/grub.cfg

② 基本構文の違い

GRUB Legacy

title Linux                  # 起動メニューに表示される名前(OSの選択項目)
root (hd0,0)                 # カーネルが存在するパーティション(/bootの場所)
kernel /vmlinuz-xxx ro       # 使用するカーネルイメージと起動オプション
initrd /initrd-xxx.img       # 初期RAMディスク(ドライバやLVMなどを提供)

GRUB2

menuentry "Linux" {          # 起動メニューのエントリ名(OS選択画面に表示)
  set root=(hd0,1)           # カーネルがあるパーティション(/bootの場所)
  linux /vmlinuz-xxx ro      # カーネルイメージと起動オプションを指定
  initrd /initramfs-xxx.img  # 初期RAMディスクを指定(起動に必要なドライバを提供)
}

③ 設定項目の比較

役割 GRUB Legacy GRUB2
メニュー title menuentry
ルート(カーネルがあるパーティション)の指定 root set root
カーネル kernel linux
初期RAM initrd initrd
構文 シンプル スクリプト形式

④ 設定の編集方法

GRUB Legacyは「手作業」、GRUB2は「自動生成」となり、

GRUB Legacy(直接編集)

GRUB Legacyでは、設定ファイルを直接手で編集します。
しかし、パスを間違えたりタイプミスなどがあると起動できないという問題があります。

/boot/grub/menu.lst

GRUB2(直接編集しない)

GRUB2では、最終設定ファイルは/boot/grub/grub.cfgですが、基本的に手動編集しません。

/etc/default/grub  → 人間が設定を書く
/etc/grub.d/       → スクリプト群(基本的にはOSが情報を収集)

人間は/etc/default/grubを編集し、残りの設定は、grub-mkconfigを実行すると、OSが自分で/etc/grub.d/からOSが情報を収集してきて最終設定ファイルの/boot/grub/grub.cfgを生成します。

これによって、ミスによる起動エラーが減り、問題の切り分けも簡単になりました。

まとめ

  • GRUBはLinuxを起動する代表的なブートローダで、BIOSやUEFIの後にカーネルを読み込む役割を持つ。
  • GRUB Legacy は全部手動、GRUB2は一部手動からの自動生成。
  • GRUB Legacyは「kernel」、GRUB2は「linux」でカーネルを指定

参考:
https://mondai.ping-t.com/question_subjects/41/question_sessions/40150152/progressing_questions/612653571/edit?no_selection=false

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?