luks のディスクを追加しようとしてエラー
vgextend mydata /edev/mapper/crypt02
エラーが出た
Devices have inconsistent logical block sizes (512 and 4096).
エラーはセクタサイズです。
はて?ファイルシステムでフォーマットしてないのにセクタサイズとは?
調べたらLUKSにはセクタサイズがあった
セクタサイズを調べる。
sudo cryptsetup luksDump /dev/sdd Data segments: 0: crypt offset: 16777216 [bytes] length: (whole device) cipher: aes-xts-plain64 sector: 512 [bytes]
比べてみると・・・
sudo cryptsetup luksDump /dev/sde Data segments: 0: crypt offset: 16777216 [bytes] length: (whole device) cipher: aes-xts-plain64 sector: 4096 [bytes] Keyslots:
ああ、ずっと昔から、luks を使ってるからデフォルト値を変えたの忘れている。
そうか、昔作ったLVMは、gitなど細かいデータのバックアップが多いからセクタサイズを小さくしたんだった。
ブロックデバイスのセクタを見ても解決しない。
luksDumpで見て、セクタサイズが小さいことがわかるが。
sudo cryptsetup luksDump /dev/sde Data segments: 0: crypt offset: 16777216 [bytes] length: (whole device) cipher: aes-xts-plain64 sector: 512 [bytes]
その他のデバイス経由だとわからない
デバイス マッピングのツリー確認
lsblk /dev/sde NAME SIZE FSAVAIL FSUSE% FSTYPE sde 7.3T crypto_LUKS └─crypt-disk10 7.3T LVM2_member └─data 12.7T 1.6T 87% ext4
セクタを確認
それぞれ、デバイスを見ても、ファイルシステムをみても4096が返ってくるだけった。
$ sudo blockdev --getpbsz /dev/sde 4096 $ sudo blockdev --getpbsz /dev/mapper/data 4096
私は、暗号化ディスクを512として、その上のext4 のセクタを4096にするというムダをやっていた。
luksFormatのやり直し
セクタサイズが異なる場合はluksFomat からやり直しです。
sudo cryptsetup luksFormat --sector 512 /dev/sde ``` ### ともかくセクタに注意 luksにもセクタサイズがあります。