小江戸らぐ
BIOSからUEFIへ
2022/03/19
世良泰明
自己紹介
名前:
世良 泰明 (せら やすあき)
職業:
駆け出しインフラエンジニア (1年目)
名古屋の某SIer所属
経歴:
COBOLバッチ ⇒ webアプリ(java/javascript) ⇒ AWS
趣味:
囲碁, サイクリング, 散歩, etc…
twitter: @y_sera15
回想
先月の小江戸らぐにて…
はとちゃん「slackwareが数年ぶりにバージョンアップしたよ!!!」
http://www.slackware.com
2022/2/3 slackware 15.0 リリース
回想
その日の飲み会
はとちゃんが落ちた後...
おもむろにslackwareをインストールし始めた私.
画面共有しながらインストール大会が始まる...
NUC1
ESXi
CentOS
Stream9
Slackware15
環境
・Intel NUC 11 corei5
・VMware ESXi 上に構築
事の発端
何とかインストールはできたが, BIOS bootであった.
・UEFI用の領域を作成し損ねた
・インストーラの流れとして、
パーティション切る ⇒ インストール ⇒ ブートローダー(lilo or elilo)
の一本道で、途中でEFI領域を作成できない
事の発端
再インストールでEFI領域を作ろうかなーと考えていたところ
???「そんなことしなくても, /boot/efiさえ作ればなんとかなるよ」
よし、それでやってみるか。
BIOSブートとは
BIOS(Basic Input/Output system)
・マザーボード上に格納されたプログラム
・ブートローダをMBRから探して読みこむ
BIOS
MBR
ブートローダー
bootローダー検索, 起動
UEFIとは
UEFI (Unified Extensible Firmware Interface)
・BIOSに代わるファームウェア規格
・GPT対応, Secure bootの追加
Boot Manager
EFI System パーティション
Boot パーティション
efiファイルを探して読みこむ
bootローダー起動
やったこと
1. Live環境からブートし, gpartedで空き領域作る(100MB)
2. efiパーティション作成(gdisk) コードはef00
3. fat32でフォーマット
# mkfs.fat -F32 /dev/sda2
4. /boot/efi作成
# mkdir /boot/efi
5. efiパーティションを/boot/efiにマウント, /etc/fstabに追記
# mount /dev/sda2 /boot/efi
6. /boot/efi/の中身を, 他のシステムを参考にコピー
7. VMware側のブートマネージャーでefiファイル指定
/boot/efiの中身
・elilo.efi
・initrd.gz
・vmlinuz
これらは/boot/以下のファイルをコピー
・elilo.conf
別途インストールした
slackwareからパクる
結果
できた!
オチ
※インストーラ2画面目
ここまで頑張ったわけだが, なんと最初に注意書きが…
ちゃんと読んでれば何でもなかった
まとめ
BIOSブートしていたslackwareをUEFIブートに設定変更した
・/boot/efi領域を作成し, efiファイルを導入した.
・VMwareのブートマネージャーの設定に詰まって焦った.

BIOSからUEFI