
RHEL-7 で奇妙な状況が発生しています。ディスク パーティション上にデバイス マッパー (crypt) を作成し、ディスク パーティションからマッパーにデータ (バイト) をコピーします。blkid 出力には、UUID のエントリが 2 つあります。1 つはディスク パーティション用、もう 1 つはマッパー用です。/dev/disk/by-uuid の下の UUID は、上書きされたためマッパーを指しています。
blkid 出力:
/dev/sdc1: UUID="1e762c4a-0b12-40fc-9f53-a825016211a0" TYPE="ext4"
/dev/mapper/my_mapper: UUID="1e762c4a-0b12-40fc-9f53-a825016211a0" TYPE="ext4"
/dev/disk/by-uuid の出力:
lrwxrwxrwx 1 root root 10 Jan 31 10:24 1e762c4a-0b12-40fc-9f53-a825016211a0 -> ../../dm-4
ここで、再度データ (バイト) をマッパーからディスク パーティションにコピーし、マッパーを閉じます。/dev/disk/by-uuid の下の UUID はディスク パーティションを指し、blkid 出力にはディスク パーティションの UUID が表示されます。
blkid 出力:
/dev/sdc1: UUID="1e762c4a-0b12-40fc-9f53-a825016211a0" TYPE="ext4"
/dev/disk/by-uuid の出力:
lrwxrwxrwx 1 root root 10 Jan 31 10:24 1e762c4a-0b12-40fc-9f53-a825016211a0 -> ../../sdc1
しかし、ディスク パーティションをマウントしようとすると、次のエラーが発生します。
mount -t ext4 -o rw /dev/sdc1 /mnt/plainDisk
mount: wrong fs type, bad option, bad superblock on /dev/sdc1.
そして、ディスクは blkid 出力から消えます。/dev/disk/by-uuid は正しい UUID でまだ存在し、lsblk はディスクを表示します。
blockdev --getsize64
ディスクのサイズをバイト単位で取得し、それらのバイトをすべてコピーするために使用しています。
ご意見やご指摘をいただければ幸いです。ただし、RHEL-6 ではこの問題は発生していません。
追加情報:
fsync
すべてのデータがコピーされたら、/dev/sdc1 ファイル記述子を使用します。- 2 回目のコピー後に /dev/sdc1 が存在したときの dumpe2fs 出力を確認しました。元の値と一致しました。ただし、エントリが削除されると、dumpe2fs は次のエラーを出力します。
dumpe2fs 1.42.9 (2013年12月28日)
dumpe2fs: /dev/sdc1 を開こうとしたときにスーパーブロックに不正なマジック番号があります
有効なファイルシステムのスーパーブロックが見つかりませんでした。
答え1
問題は、からにデータをコピーしてmy_mapper
いる間sdc1
、my_mapper
マウントされた。これは何らかの形でデバイスのスーパーブロックに影響を与えました。実行してdumpe2fs
、関連するエントリがいくつかあることを確認しました。マウントスーパーブロック内。
データをコピーする前にマッパーをアンマウントすると、問題は解決しました。