blkid出力からのディスクUUIDが消える

blkid出力からのディスクUUIDが消える

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 ではこの問題は発生していません。

追加情報:

  1. fsyncすべてのデータがコピーされたら、/dev/sdc1 ファイル記述子を使用します。
  2. 2 回目のコピー後に /dev/sdc1 が存在したときの dumpe2fs 出力を確認しました。元の値と一致しました。ただし、エントリが削除されると、dumpe2fs は次のエラーを出力します。

dumpe2fs 1.42.9 (2013年12月28日)

dumpe2fs: /dev/sdc1 を開こうとしたときにスーパーブロックに不正なマジック番号があります

有効なファイルシステムのスーパーブロックが見つかりませんでした。

答え1

問題は、からにデータをコピーしてmy_mapperいる間sdc1my_mapperマウントされた。これは何らかの形でデバイスのスーパーブロックに影響を与えました。実行してdumpe2fs、関連するエントリがいくつかあることを確認しました。マウントスーパーブロック内。

データをコピーする前にマッパーをアンマウントすると、問題は解決しました。

関連情報