テスト仮想マシンで2番目のディスクをbtrfsに変換しようとしています。
エラーのため変換が失敗しましたmissing data block for bytenr 1048576
(下記参照)。
このエラーに関する情報が見つかりません。この問題を解決するにはどうすればよいですか?
$ fsck -f /dev/sdb1
fsck from util-linux 2.35.2
e2fsck 1.45.6 (20-Mar-2020)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/sdb1: 150510/4194304 files (0.5% non-contiguous), 2726652/16777216 blocks
$ btrfs-convert /dev/sdb1
create btrfs filesystem:
blocksize: 4096
nodesize: 16384
features: extref, skinny-metadata (default)
checksum: crc32c
creating ext2 image file
ERROR: missing data block for bytenr 1048576
ERROR: failed to create ext2_saved/image: -2
WARNING: an error occurred during conversion, filesystem is partially created but not finalized and not mountable
ベストアンサー1
それは抜け穴
これでエラーが確認されたため、符号なし整数を掛けるとわずかなオーバーフローが発生します。
また見なさい:
- https://github.com/kdave/btrfs-progs/commit/c9c4eb1f3fd343512d50b075b40bba656cbd02cb
- https://www.spinics.net/lists/linux-btrfs/msg103379.html
回避策に変換する前に、ファイルシステムのサイズを小さく/大きくすることができます。