luksのext4:最小「外部パーティション」サイズを計算する方法

luksのext4:最小「外部パーティション」サイズを計算する方法

Loop0p2 には ext4 を含む luks2 が含まれています。問題は、内部パーティションに対応するために外部パーティションに必要な最小サイズを計算する方法です。内部パーティションのサイズが与えられます(例:25614K)。

Device       Start   End Sectors  Size Type
/dev/loop0p1  2048  4095    2048    1M Microsoft basic data
/dev/loop0p2  4096 87273   83178 40,6M unknown                      

83178 セクタ (a 512 B) = 42587136 B

cryptsetup luksDump /dev/loop0p2

Metadata area:  16384 [bytes]
Keyslots area:  16744448 [bytes]

42587136 B - 16760832 B (luks2 オーバーヘッド) = 25826304 B

25826304 B == 50442 セクタ == 25221 KiB

dumpe2fs -h /dev/mapper/test| grep -iE '^(block|inode) (count|size)' 
dumpe2fs 1.45.6 (20-Mar-2020)
Inode count:              5232
Block count:              24567
Block size:               1024
Inode size:               128

内部仕切り: 1285232+245671024 = 25156608 B = 24567KiB

resize2fs /dev/mapper/test 25614K
resize2fs 1.45.6 (20-Mar-2020)
The containing partition (or device) is only 25205 (1k) blocks.

You requested a new size of 25614 blocks.

25221KiB - 25205KiB = 16KiB

したがって、外部パーティションには41589 KiBがあり、luksのオーバーヘッドは16368 KiBです。内部パーティション:25221 KiB内部パーティションの実際のサイズは24567 KiBのようです。内部パーティションによると、25205KiBを超えることはできません。

16KiBには何が保存されますか? LUKSコストを誤って計算しましたか? ext4に関連していますか?

ベストアンサー1

「追加」16KiBは補助LUKS2ヘッダーです。 「メタデータ領域:16384 [バイト]」はヘッダーのサイズですが、ディスクには2つあります。バラよりLUKS2ディスクフォーマット仕様詳細については。

おすすめ記事