なぜ `/dev/dm-39`の代わりに `/dev/dm-8`をマウントするのですか?

なぜ `/dev/dm-39`の代わりに `/dev/dm-8`をマウントするのですか?

Linuxカーネルシステムを使用するDebian 10 GNUでは、次の行は期待どおりにマウントされませんが/dev/dm-8(IMHOは間違っています)/dev/dm-37

mount /dev/dm-8 /mnt

私は今この問題の原因および/またはさらなる調査方法について本当に混乱しています。この問題は、Linuxカーネルのブロックデバイス上のファイルシステムに関連付けられているUUID内にあると想定しています。

背景情報と自分の研究:

  1. 基本情報:

    root@ada:/# マウント
    /usr/bin/マウント
    root@ada:/# ファイル/usr/bin/mount
    /usr/bin/mount: setuid ELF 64ビットLSB共有オブジェクト、x86-64、バージョン1(SYSV)、動的リンク、interpreter/lib64/ld-linux-x86-64.so.2、GNd用
    root@ada:/# uname -a
    Linux ada 4.19.0-12-amd64 #1 SMP Debian 4.19.152-1 (2020-10-18) x86_64 GNU/Linux
  2. 論理ボリュームマネージャを使用します。一意のボリュームグループ名はですvg

  3. ブロックデバイスに接続されている2つのボリュームには1つが含まれており、スナップbtrfsショットから作成されたため、同じfsid(UUID)を共有します。どちらの論理ボリュームもアクティブに設定されます。

  4. デバイスをブロック/dev/dm-8し、/dev/dm-37次の論理ボリュームに接続します。

    • /dev/dm-8->/dev/vg/vm_docu
    • /dev/dm-37->/dev/vg/vm_mail
root@ada:/# 実際のパス/dev/vg/vm_docu; file -s /dev/dm-8;
/dev/dm-8
/dev/dm-8: BTRFS ファイルシステムセクタサイズ 4096、ノードサイズ 16384、リーフサイズ 16384、UUID=d8709bb6-8278-431a-95dd-211ceaf35c3d, 951652352/214748
root@ada:/# 実際のパス/dev/vg/vm_mail; file -s /dev/dm-37;
/dev/dm-37
/dev/dm-37: BTRFS ファイルシステム セクタサイズ 4096、ノードサイズ 16384、リーフサイズ 16384、UUID=d8709bb6-8278-431a-95dd-211ceaf35c3d, 1599131648/2147
  1. を見ると、次の/usr/bin/mountようstraceな mount(8) システムコールが実行されることがわかります。
マウント("/dev/mapper/vg-vm_mail", "/mnt", "btrfs", 0, NULL) = 0

これは、/dev/dm-8文字通りシステムコールには渡されませんが、間違って/usr/bin/mount解釈されないことを示しています。

 
root@ada:/# 物理パス/dev/mapper/vg-vm_mail
/dev/dm-8

関連するツール/ソフトウェアの疑わしいリストには、次のUUIDものが含まれます。

  • ウデブ
  • Linuxカーネル - btrfsコード
  • Linuxカーネル - デバイスマッパー
  • linuxカーネル - lvm(まだ内部にデバイスマッパーがない場合)
  • システム

答え1

BTRFSファイルシステムには重複したUUIDがあってはなりません。

本当に簡単です。 Btrfs はファイルシステム UUID を使用して、同じファイルシステムに属するデバイスを識別します。この方法を使用すると、インストール前に「アレイを組み立てる」特別なコマンドなしで、および/dev/sdaで構成されたFSを持つことができます。実行するだけで、BTFRSは同じUUIDを共有するデバイスを自動的に検出し、ファイルシステムを正しく組み合わせます。/dev/sdb/dev/sdcmount /dev/sda /somewhere/dev/sda

たとえば、これがbtrfsデバイスのブロックレベルのコピーやLVMスナップショットを使用しないでください。同じデバイス(同じUUIDを含む)の複数の「コピー」を生成するすべては、カーネルを混乱させ、深刻な害を及ぼす可能性があります。

したがって、どのような状況でも重複したファイルシステムUUIDが発生した場合、それを回復するのは非常に困難です。影響を受けたファイルシステムを最初から再作成し、バックアップから復元するのが最も簡単な方法です。

関連情報