Plamo Linux の GPT/UEFI 対 応 について(2015/10/16) Plamo Linux 6.0 では,grub を UEFI 対 応 版 にして GPT HDD からも 起 動 できるよ うにしました.しかしながら,インストーラが 対 応 できていないため,GPT HDD に grub をインストールするには 多 少 の 手 作 業 が 必 要 となります.この 文 書 はその ための 手 順 を 紹 介 します - GPT HDD の 設 定 Plamo 6.0 のインストーラに 入 っている fdisk/cfdisk は GPT 対 応 版 なので,HDD を GPT 化 するのは 簡 単 です cfdisk からパーティション テーブルが 存 在 しない 新 しい HDD を 使 おうとすると,どの 形 式 のパーティションを 使 うかを 尋 ねられる ので,"gpt"を 指 定 します ( 図 1) GPT HDD から 起 動 するには,マザーボードの BIOS が UEFI に 対 応 している 必 要 が あります UEFI BIOS は,GPT HDD に EFI System Partition(ESP)と 言 う 特 別 な
パーティションがあるかを 確 認 し,そのパーティション 上 にあるブートローダを 呼 び 出 して OS を 起 動 します そのため, 起 動 用 の GPT HDD には ESP を 作 成 してお く 必 要 があります ESP は 通 常,HDD の 最 初 に, 数 百 MB 程 度 のパーティション として 作 成 します ( 図 2)
ESP には 専 用 の EFI シ ステム という 専 用 の パーティション ID が 割 り 当 てられているので, パーティション タイプ を EFI システム に 変 更 します ( 図 3)
HDD の 残 りの 部 分 には, 従 来 同 様,スワップパーティションやインストールする ためのパーティションを 作 成 しておきます ( 図 4) 同 様 の 作 業 は fdisk でもできるものの,パーティション タイプを 変 更 する 際 のリ ストが 流 れ 去 ってしまったりするので, 作 業 には cfdisk をお 勧 めします なお, 上 記 手 順 で 作 成 したパーティション テーブルは, 実 際 に 書 き 込 み 処 理 を 行 う までは HDD に 書 き 込 まれません fdisk/cfdisk を 終 了 する 前 に 書 き 込 み 処 理 を 行 うことをお 忘 れなく この 新 しく 作 った ESP は,FAT32 形 式 でフォーマットする 必 要 があるものの, Plamo 6.0 のインストーラには ESP をフォーマットする 機 能 は 加 えていないので,
手 動 でフォーマットする 必 要 があります 上 記 手 順 を 終 えた 後,あるいはもう 少 し 手 順 を 進 めてパッケージをインストールし ている 間 の 待 ち 時 間 にでも,ALT+F2 でコンソール 画 面 を 切 り 変 えてログインし ESP として 作 成 したパーティションを mkfs.fat -F32 /dev/xxxx でフォーマット しておきます この 作 業 を 忘 れると, 後 述 する UEFI 対 応 版 の grub のインストー ルに 失 敗 するのでご 注 意 ください なお,フォーマットし 忘 れて grub のインス トールに 失 敗 しても,インストールを 終 えてから,ESP をフォーマットして, chroot /mnt ; grubconfig をやれば 大 丈 夫 なのでご 心 配 なく ( 図 5) なお, 上 記 手 順 は 新 しい HDD を GPT bootable にする 場 合 の 話 で,Windows がイ ンストール 済 みの HDD に dual boot 環 境 を 作 る 場 合 など, 既 に HDD 上 に ESP パー ティションが 存 在 する 場 合 は,Linux からもそのパーティションを 利 用 できるので 新 たに ESP を 作 ったりフォーマットする 必 要 はありません
- Plamo Linux のインストール fdisk/cfdisk で GPT HDD 上 に ESP を 作 れば, 残 りのインストール 作 業 は 従 来 同 様 の 手 順 です swap パーティションの 作 成 インストール 先 の 指 定 パッケ ケージの 選 択 等, 進 めていってください 選 択 したパッケージをインストールす る 時 は 待 ち 時 間 があるので,その 間 に 上 記 ESP のフォーマット 作 業 をするのもい いでしょう - UEFI 版 grub のインストール 選 択 したパッケージのインストールが 終 わればシステムの 設 定 段 階 に 移 ります GPT HDD から 起 動 する 場 合 はブートローダに grub を 選 択 します(lilo は GPT HDD に 対 応 していません) grub のインストール 用 ツール grubconfig は,HDD 上 に ESP を 見 つけると,その パーティションを /boot/efi にマウントした 上 で 必 要 なディレクトリを 作 成 し /boot/efi/grub/ に 必 要 なファイルをインストールした 上 で,EFI 用 ブートローダ 本 体 (grubx64.efi)を /boot/efi/efi/grub/grubx64.efi に, 設 定 ファイル を/boot/efi/grub/grub.cfg に 作 成 します 加 えて,マザーボードの UEFI BIOS の 実 装 によっては /EFI/grub/grubx64.efi を 読 まないことがあるので,bootx64.efi が 存 在 しなければ,grubx64.efi を UEFI BIOS が 参 照 するデフォルトのブートロー ダ/EFI/BOOT/bootx64.efi にコピーします - UEFI BIOS からの 起 動 OS の 選 択 UEFI 版 grub は, 正 しくインストールされるとマザーボードの UEFI BIOS のメモリ に 自 らを 登 録 し, 起 動 順 序 も 最 初 に 設 定 します Plamo Linux しか 使 用 しない 場 合 はそれで 構 わないものの,Windows と dual boot したい 環 境 の 場 合, 起 動 対 象 の OS を 選 択 する 必 要 があり,そのためには UEFI BIOS の 機 能 を 利 用 します WIndows と Plamo Linux がそれぞれ 独 立 の HDD に 住 み 分 けている 場 合 Windows の HDD から 起 動 すれば Windows が Plamo の HDD から 起 動 すれば Plamo Linux が 起 動 することになります 実 際 のやり 方 は UEFI BIOS(=マザーボー ド)によって 異 なるものの 以 下 では VirtualBox を 使 った 例 を 紹 介 します
VirtualBox の 場 合 設 定 システム の 拡 張 設 定 で EFI モードを チェックしておくと EFI BIOS が 起 動 します 電 源 投 入 直 後 に DEL キーを 押 すと この UEFI BIOS のメニュー 画 面 になります ( 図 6) この 画 面 で"Boot Manager"を 選 択 すると, 起 動 可 能 な HDD が 2 つ 表 示 され(EFI Hard Drive と EFI Hard Drive 1),それぞれの HDD にインストールした OS を 起 動 することができます
( 図 7) なお VirtualBox の 場 合 SATA0 と SATA1 に 接 続 した 機 器 しか UEFI BIOS は 起 動 対 象 として 認 識 しないようです DVD イメージを 使 ってインストールした 場 合 な ど 3 つ 以 上 の 機 器 を 接 続 しなければならない 場 合 は 起 動 する 必 要 がある 機 器 を SATA0 と SATA1 に 接 続 するようにしてください 一 方 1 つの HDD 上 の 異 なるパーティションに Windows と Plamo Linux をインス トールした 場 合 は,EFI Internal Shell から 起 動 する 必 要 があります EFI Internal Shell を 起 動 すると,UEFI BIOS 上 に 実 装 されたシェルが 起 動 し, 認 識 している HDD(FS0:)やそのパーティション(BLK1: 等 )を 一 覧 表 示 されるので, 起 動 したい ブートローダ(FS0:\EFI\grub\grubx64.efi)を 指 定 します 入 力 時 には Tab キーで 補 完 が 効 きます
( 図 8) Windows8 の 場 合,FS0:\EFI\Microsoft\Boot\bootmgfw.efi がブートローダに なっているようです なお,デフォルトでは FS0:\EFI\Boot\bootx64.efi が 読 まれるので,grubx64.efi を bootx64.efi にコピーしておけば Plamo Linux が 優 先 して 起 動 します この 作 業 は Plamo Linux を 起 動 後,ESP をマウントして # mount /dev/sda1 /boot/efi/ # mv /boot/efi/efi/boot/{bootx64.efi,win8.efi} # cp /boot/efi/efi/grub/grubx64.efi /boot/efi/efi/boot/bootx64.efi のように 行 います 今 回 の 例 は, 画 面 キャプチャのしやすさから VirtualBox の EFI BIOS を 利 用 しまし たが,VirtualBox の EFI BIOS の 機 能 は 最 小 限 の 実 装 になっていてご 覧 の 通 り 使 い 勝 手 は 悪 いです しかし, 実 際 のマザーボードに 搭 載 された UEFI BIOS は,メー カーによって 実 装 は 異 なるものの,この 例 よりはずっと 使 い 易 いように 改 良 されて おり GUI なメニュー 形 式 で 一 つの HDD 上 の 複 数 のブートローダを 選 択 できるよ うになっていたりするので UEFI BIOS の 画 面 も 恐 れる 必 要 はありません
例 えば 手 元 の ASUS 製 のマザーボード(B85M-E)だと UEFI BIOS が 認 識 してい る 各 種 ブートローダは 以 下 のように 表 示 され これらの 中 から 起 動 したいブート ローダを 選 ぶことができます 最 初 に 表 示 されているのが DVD ドライブ その 次 が Windows8 のブートローダー grub が Plamo Linux のブートローダーで P1:TOSHIBA DT01ACA300 と 表 示 さ れているのが HDD 全 体 で これを 指 定 すると\EFI\BOOT\BOOTX64.EFI が 起 動 さ れます その 次 に 見 えている JetFlash は USB メモリで UEFI ブータブルになっているの で MBR 形 式 ( JetFlash )と UEFI 形 式 ( UEFI: JetFlash )の 2 種 が 選 択 できるよう になっています MBR 形 式 を 選 べば USB メモリの 先 頭 にある MBR が 呼 び 出 され UEFI 形 式 を 選 べばルートパーティションの\EFI\BOOT ディレクトリにある BOOTX64.EFI が 呼 び 出 されます