ホストと同じUUIDを持つbtrfsパーティションに接続されているディスクがマウントリストを破損するのを防ぐ方法は?

ホストと同じUUIDを持つbtrfsパーティションに接続されているディスクがマウントリストを破損するのを防ぐ方法は?

背景:ホストOSはAzure Oracle Linux 7.8インスタンスであり、そのOSディスクはエントリを介してマウントさ/dev/sdaれます。 /dev/sda2/)はいbtrfs。他のAzure Oracle Linux 7.8インスタンスが破損しているため、デバッグ用にディスクを接続したいと思います。私のホストOSに接続した後、接続されたディスクは同じOracle Linux 7.8イメージから来たので、私のホストと同じUUIDを持ち、インストール時に少し混乱/損傷を引き起こすようです。lsblkAzureがイメージ接続を完了した後の出力は次のとおりです。

NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sdb       8:16   0    4G  0 disk
└─sdb1    8:17   0    4G  0 part /mnt
sr0      11:0    1  628K  0 rom
fd0       2:0    1    4K  0 disk
sdc       8:32   0   50G  0 disk
├─sdc15   8:47   0  495M  0 part
├─sdc2    8:34   0   49G  0 part /      <--- isn't really sdc2, its mounted from sda2
├─sdc14   8:46   0    4M  0 part
└─sdc1    8:33   0  500M  0 part
sda       8:0    0  100G  0 disk
├─sda2    8:2    0   99G  0 part
├─sda14   8:14   0    4M  0 part
├─sda15   8:15   0  495M  0 part /boot/efi
└─sda1    8:1    0  500M  0 part /boot

/ルートがマウントされているように見えますが、実際には/dev/sdc2ディスク()が付いていることがわかります。 UUIDの競合が原因でこの問題が発生したと仮定できますが(別の原因になる可能性がありますか?)、システムはすでにマウントされていると考えているため、物理/dev/sdc/接続ディスクをマウントしてデバッグすることはできません。/dev/sdc2

ディスクを接続するときにこれが発生しないようにする方法はありますか?

ベストアンサー1

btrfstuneディスクをマウントする前に(または最初にアンマウントする前に)btrfs UUIDを変更できます。

# first show the existing UUID (and keep for later)
sudo blkid /dev/sdc2

# change to a new UUID
sudo btrfstune -M $(uuidgen) /dev/sdc2

も参照してください-U。しかし、-M十分です。後で同じ方法を使用して元のuuid(uuidgenの代わりに)を復元できます。

これを試す前にバックアップを作成してください。

おすすめ記事