デュアルブートのために(小さすぎる)EFIパーティションを増やす方法

デュアルブートのために(小さすぎる)EFIパーティションを増やす方法

Fedora 31を使用してノートブックを設定しようとしましたが、EFIパーティション(/boot/efi)が小さすぎて100Mbにすぎないという問題が発生しました。 (EFIパーティションは、以前は「MBR2GPT.exe /convert /disk:0 /allowfullos」を実行したときにWindowsで設定されました。)

サイズを拡大するには、「gparted」を試してください。 gpartedはパーティションを追加できますが、それ自体はパーティション形式を変更せず、gpartedでエラーが発生します。

gnu parted cannot resize this partition to this size. we're working on it

答え1

実際、Internetzが提案したソリューションにお金を費やしたくありません。だから私はこれを思い出しました。

USBドライブからFedora 31 Liveを再起動し、次の作業を行います。

  1. 「fdisk」を使用して、ディスクの最後に新しい小さなパーティション(/dev/sda99)を作成します。変更をディスクに書き込むには、「w」を押すことを忘れないでください。
  2. FAT32でフォーマット: mkfs.vfat -F 32 /dev/sda99
  3. 新しいパーティションを/mnt/f99にマウントします。
  4. 現在のEFIパーティションを/mnt/efiにマウントします。
  5. 現在、EFIパーティションcp -a /mnt/efi/EFI /mnt/f99の内容を保存しました。
  6. マウント解除済み/mnt/efi マウント解除済み/mnt/f99

これは私のパーティションレイアウト "fdisk -l /dev/sda"です:

/dev/sda1        2048    1180000   1180000  579M Windows RE
/dev/sda2     1180000  164423679 163235840  80G  Microsoft basic data
/dev/sda3   164423680  164623680    200000  100M EFI System
/dev/sda99  900000000  900200000    200000  100M Linux home
  1. fdisk を使って /dev/sda3 を削除します。
  2. その後、fdiskを使用して/dev/sda3という新しいパーティションを作成し、ここに300Mを割り当てました。正しいパーティションタイプを割り当てることが重要です。 EFIパーティショニングには、「t」コマンドを使用して「1」を押します。利用可能なタイプについては「L」をご覧ください!変更をディスクに書き込むには、「w」を押すことを忘れないでください。
  3. 新しいEFIパーティションmkfs.vfat -F 32 /dev/sda3フォーマット

新しいパーティションのレイアウトは次のとおりです。

/dev/sda1        2048    1180000   1180000  579M Windows RE
/dev/sda2     1180000  164423679 163235840  80G  Microsoft basic data
/dev/sda3   164423680  165023679    600000  300M EFI System
/dev/sda99  900000000  900200000    200000  100M Linux home
  1. これで、保存したEFIデータをEFIパーティションにコピーします。

マウント /dev/sad99 /mnt/f99 マウント
/dev/sda3 /mnt/efi
cp -a /mnt/f99/EFI /mnt/efi
同期
umount /mnt/f99
umount /mnt/efi

EFIは300Mに調整され、Windowsは「raw」データ復旧を使用して起動します。

これで再起動し、私が選択した「優れた」オペレーティングシステムであるFedora31をインストールします。

私に魅力のように動作します。楽しんでください。

答え2

上記の回答ありがとうございます。 efiパーティションをコピーして別の場所にコピーできるかどうか疑問に思います。

efiパーティションのサイズを増やさなくても、問題をある程度解決するためのクイックフィックスを共有したいと思いました。

  • 起動時にこれらの言語が必要ない場合は、EFI / Microsoft / Fontsからこれらの言語を安全に削除できます。これらの言語には何千もの文字があるため、他のフォントよりも1000倍多くのスペースを占めています。
  • /etc/mkinitcpio.d/linux.preset設定ファイルからそれらを削除して、'fallback'バックアップinitramfsの作成を無効にできますPRESETS
  • 削除できますが、/boot/initramfs-linux-fallback.img再作成することはできません。
  • /boot/Boot ディレクトリを削除できます。私が知る限り、これは遺産上の理由で存在します。

これにより、約50MBのスペースを確保できます。 Arch Linux - Windows 10デュアルブートで動作します。しかし、Mattesの答えは長期的で安全な解決策です。

関連情報