/boot を ESP (現在 /boot/efi) に移動します。

/boot を ESP (現在 /boot/efi) に移動します。

私の現在のESPパーティションは次の場所にあります/boot/efi(実際にはそこにマウントされておらず、エントリも/etc/fstabまったくありません。数年前にシステムをインストールしましたが、なぜこれを設定したのか覚えていませんが、これまではうまくいきます)。 inに変更するのと同じです/boot。私は現在GRUB 2をブートローダーとして使用していますが、それがどのように機能するのかよくわかりません(もう一度言うが、数年前にインストールし、それ以降は触れませんでした)。アーチLinuxです。

これを達成するにはどうすればよいですか?

/bootすべてをESPにコピーし、/etc/fstabESPをインストールする項目を追加しましたが、代わりにEFIがあると思われます。/boot一部の構成ファイルに変更する必要があるパスがある場合があります。/boot/EFI/boot/efi/EFI

現在のコンテンツ/boot:

  • 幼虫/
  • initramfs-linux.img
  • initramfs-linx-fallback.img
  • intelucode.img
  • vmlinuz-linux

ESP内容:

  • EFI
    • アーチ
      • grubx64.efi
      • fwupdx64.efi
      • ファームウェア/
    • デル/バイオス/回復/

コンテキスト:フルディスク暗号化(LUKS 2でLVMを使用し、現在の暗号化はまったくありません/)に移動したいと思います/home。これを行うには、GRUBをロードできるように、暗号化されていないパーティションにカーネルとinitramfsを配置する必要があります(正しい)私が間違っている場合)。最も簡単な方法は、単にESPに入れてESPの/boot代わりにESPを作成することです/boot/efi

代替案の提案を歓迎します(長所と短所を教えてください)。

ベストアンサー1

簡単に言うと:

  1. /bootすべてをESPにコピー
  2. ESPをインストールしてください/boot
  3. /boot/grub/grub.conf次から再生grub-mkconfig
  4. 実行grub-install(主にEFIブートアップデート)
  5. 新しい起動で再起動
  6. 前の開始を消去する(/boot、、、EFI/archefibootmgr

私がついにやったこと:

  1. ESPをどこにでもインストールしてください(使用したことがあります/boot/efi
  2. すべて(特にinitramfs、マイクロコード、カーネル、grub/フォルダ(最後のフォルダは必要ありません))を/bootESPにコピーします。
  3. ESPの取り外し後の再インストール/boot
  4. 実行してgrub-mkconfig新規作成/boot/grub/grub.conf

その時点で、私はすべてがうまくいっていることを確認したいので、次のようにしました。

  1. ESPを削除して再インストールします。/boot/efi
  2. /boot/grub/grub.confとを区別する/boot/efi/grub/grub.conf
  3. (希望的に)両方のオプションを開始できるように、チャンクをある場所からmenuentry別の場所にコピーします。
  4. 再起動してESPから起動する新しいオプションを試してください。動作します(つまり、IIUC、ESPにコピーされたファイルはシステムを起動できます)。

その後、ギャップを飛び越えて切り替えました。

  1. ESPをインストールしてください/boot
  2. /etc/fstab起動時にインストールするように編集されました(実際にはgenfstab適切なfstab行を生成するために使用しました)。
  3. 実行(競合がないように古いgrub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB名前が付けられている)arch
  4. 再起動(場合のために以前の「システム」から起動できるように、古いgrub.confのメニュー項目があることに注意してください)

最後に、いくつかのクリーンアップタスクを実行します。

  1. ESPを削除し、その中のすべてのコンテンツを削除します。古い /boot(とにかくここにESPがインストールされ、これらのファイルを隠します。)
  2. grub.confに追加したメニュー項目を削除します。
  3. 次のコマンドを使用して、EFIから古いGRUBエントリを削除します。efibootmgr
  4. ESPから古いGRUBエントリを削除する(/boot/EFI/arch/

おすすめ記事