EFI system partition を拡張する

EFI system partition(ESP) の容量が足りなくて、ファームウェアアップデートが失敗したので拡張した。

今回は、ESP の後ろに別のパーティションが存在し、そのままではパーティションのサイズ変更ができなかった。 そのため、ESP を空き領域に作り直して内容をコピーする作戦を取った。

UEFI は GUID の特定のフラグを持つパーティションを ESP として使うらしい。 ファームウェアがまともなら今回の作戦でもうまく行くはず。 幸いなことに手元の XPS 13 9380 はまともなファームウェアだったらしくうまく行った。

方法としては、linux 上から ESP に保存されているファイルを保存しておく。 次に parted で既存の ESP を削除し、別の場所に esp と boot フラグを立てたパーティションを作る。 あとは、fat32 でフォーマットして保存しておいたファイルを書き戻す。

linux の fstab を書き換えるのを忘れていたので systemd がレスキューモードに落ちたが、 fstab を書き換えて復旧できた。

もとから入っている windows も BitLocker を有効にしていたので若干不安だったが正しくブートした。