このメモの目的
このメモは、ASRock 環境で実際にトラブルを踏んだ経験を元に、
- Arch Linux と Windows 11 を同じディスクでデュアルブートしたい
- systemd-boot を使いたい
- 変な EFI トラブルで何日も溶かしたくない
Arch / Windows / systemd-boot / UEFI の関係図
という人向けの「基礎まとめ」です。
詳細なチュートリアルというより、やってはいけないポイント や 設計の考え方 を中心にしています。
前提環境
例として想定している環境はこんな感じです。
- マザーボード: ASRock A520M Pro4(UEFI)
- CPU: Ryzen 7 5700X
- GPU: Radeon RX 6600 XT
- メモリ: DDR4 32GB
- ストレージ: NVMe SSD 1 本
- OS: Windows 11 + Arch Linux
- ブートローダー: systemd-boot
- パーティション形式: GPT
- ブート方式: UEFI(Legacy BIOS / CSM は使わない)
他のマザーボードでも基本の考え方は同じですが、UEFI のクセはメーカーごとに違うので、あくまで「考え方の参考」として読んでください。
デュアルブート方式のパターン
ざっくり言うと、Windows + Arch のデュアルブートには、次のようなパターンがあります。
- Windows の EFI System Partition(ESP)を Arch と共有する
- 別の ESP を作り、Windows と Arch で分ける
- 別ディスクに Arch を入れ、それぞれのディスクに ESP を持たせる
ここでは「1. ESP 共有」を前提にしつつ、なぜ混乱しやすいのか も含めて整理します。
パターン1: ESP 共有(今回使っている方式)
- Windows インストーラが作った ESP(例: 100〜300MB の vfat)をそのまま利用
- Arch 側の
/bootをその ESP にマウントして、systemd-boot をインストール
メリット:
- パーティションを増やさなくてよい
- ESP が 1 つなのでシンプル
デメリット:
- Windows の自動修復・アップデートが EFI ファイルを書き換えることがある
- Arch 側のファイルと混在し、構造がカオスになりやすい
パターン2: ESP 分離
- Windows 用 ESP(既存)とは別に、Arch 用 ESP を新規に作成
- UEFI のブートエントリで、どちらの ESP から起動するか選択
メリット:
- 片方の EFI が壊れても、もう片方に影響しづらい
- Windows の自動修復の巻き添えを受けにくい
デメリット:
- UEFI のブートエントリ管理が少し面倒
- ディスク構成がわずかに複雑になる
パターン3: 別ディスク運用
- 物理的にディスクを分けるパターン
- ここでは詳しくは触れませんが、一番安全ではある
systemd-boot の基本イメージ
systemd-boot は、EFI System Partition(ESP)内に置かれるシンプルなブートローダーです。
これにより、各OSのエントリを loader/entries/*.conf として管理できます。
- ESP に
EFI/systemd/systemd-bootx64.efiをインストール - 同じ ESP に
loader/ディレクトリを作り、設定ファイルを置く loader/entries/*.confに Arch や Windows のエントリを書く
Arch のエントリ例
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=/dev/nvme0n1pX rw
Windows のエントリ例
title Windows 11
efi /EFI/Microsoft/Boot/bootmgfw.efi
Arch は linux / initrd でカーネルと initramfs を指定しますが、
Windows は efi で Windows Boot Manager(bootmgfw.efi)にチェーンロードする形になります。
ESP のマウントパターンと注意点
ESP を Arch からどう見せるかで、よくあるのが次のパターンです。
パターンA: ESP を /boot に直接マウント
/etc/fstab 例:
UUID=XXXX-YYYY /boot vfat umask=0077 0 2
特徴:
/bootには ESP の中身がそのまま見える- カーネルや initramfs も ESP 直下に置かれる
メリット:
- systemd-boot との相性が良い
- 構成がシンプル
デメリット(今回ハマったポイント):
- Windows と Arch が同じ ESP を共有するため、EFI 内が混在してカオス化しやすい
- 誤って不要ファイルを消すと、Windows が起動しなくなるリスク
パターンB: ESP を /efi にマウントし、/boot は ext4 などにする
例:
/efi→ ESP(vfat)/boot→ 通常の Linux パーティション(ext4 など)
この場合、systemd-boot を使うには少し工夫が必要なので、ここでは詳しくは触れません。
「EFI は /efi、カーネルは /boot」という分離構成もある、というメモだけ。
Windows と共存するときの注意点
ESP 共有で Windows と共存するときに、特に気をつけたいのは次のあたりです。
高速スタートアップをオフにする
Windows 側の「高速スタートアップ」が有効だと、シャットダウン時に完全には終了せず、
デュアルブート環境で予期しない挙動をすることがあります。
- コントロールパネル → 電源オプション → 電源ボタンの動作を選択
- 「高速スタートアップを有効にする(推奨)」のチェックを外す
自動修復に入りすぎないようにする
起動失敗が続くと、Windows の自動修復が EFI 内のファイル(bootmgfw.efi など)を勝手に書き換えることがあります。
これは、Arch 側から見ると「せっかく整理した EFI がまたぐちゃぐちゃに戻る」原因になります。
- 明らかにおかしくなったら、まず ESP の構造を確認する
- 自動修復に任せっきりにせず、一度落ち着いて原因を切り分ける
UEFI 設定を極力 UEFI オンリーにする
- CSM(Legacy BIOS互換)はオフ
- Fast Boot はオフ
- Secure Boot は用途次第(Arch をそのまま入れるならオフが楽)
中途半端に Legacy と混在させると、トラブルシュートが一気に難しくなります。
Arch インストール時のざっくりフロー(ESP 共有ケース)
細かいコマンドは Arch Wiki に譲って、流れだけ書くとこんな感じです。
- 既存の Windows 11 が UEFI / GPT で入っていることを確認
- Windows から空き領域を作る(ディスクの管理などで縮小)
- Arch インストーラから起動
- 既存の ESP(vfat)をマウント先
/bootに指定 - Linux 用のルートパーティション(ext4)などを作成
- Arch をインストール
bootctl installで systemd-boot を導入/boot/loader/entries/arch.confとwindows.confを作成
ここまでで、systemd-boot のメニューから Arch と Windows を選べるようになります。
トラブルシュートの基本
実際にトラブルが起きたとき、最低限チェックしたいのはこのあたりです。
- ESP をマウントして EFI ディレクトリを覗く
tree -L 3 /mnt/EFI
efibootmgrでブートエントリを見る- どのエントリがどのパスを指しているか
bootctl statusで systemd-boot の状態を確認- Windows 側のイベントビューア(システムログ)
「何が壊れたか分からない」という状態が一番つらいので、
どこからどこまでが Arch の責任範囲で、どこから先が Windows / UEFI の領域なのかを意識して見ると、少し気持ちが楽になります。
systemd-boot のメニュー構造(ざっくり図)
systemd-boot のメニュー構造(loader.conf / entries/*.conf)
まとめ
- Windows と Arch のデュアルブートは、ESP 共有 か ESP 分離 かを最初に決めると設計しやすい
- systemd-boot はシンプルで扱いやすいが、Windows の bootmgfw.efi との付き合い方に注意
- ESP を
/bootに直接マウントする構成は分かりやすい一方で、EFI がカオスになりやすい - Windows の高速スタートアップや自動修復は、ときどき EFI を壊す「お節介」をすることがある
- トラブルが起きたときは、EFI の構造と UEFI のブートエントリを一度落ち着いて眺める
別記事として、実際に ASRock 環境で遭遇した 「再起動だと Windows が起動しないのに、電源OFF→ONだと起動する」問題についても記録しています。 そちらは具体的な症状とログ中心、この記事はその前提となる考え方のメモ、という住み分けです。