ブロックデバイスがマウントされたときにデバイスまたはリソースを使用させる人は誰ですか?

ブロックデバイスがマウントされたときにデバイスまたはリソースを使用させる人は誰ですか?

一部のパーティションを持つHDDをLinuxシステムに接続しましたが、マウントしようとすると失敗します。

[root@il ~]# mount -oro /dev/sdb1 /media/sdb1
fuse: mount failed: Device or resource busy

まだインストールされていません(少なくとも現在のルートディレクトリにはインストールは表示されません)。

[root@il ~]# grep sdb /proc/mounts
[root@il ~]# 

sdb1の内容をファイルにコピーddし、次のようにループデバイスとしてマウントする場合とてもよくインストールされました。。 (コピーするのではなく、中間ループデバイスをsdb1にマッピングすることでこの問題を回避できました。)

[root@il ~]# mount -oro,loop /dev/sdb1 /media/sdb1
[root@il ~]# 

だから確認するために小さなプログラムを書いた。

#include <fcntl.h>
#include <stdio.h>
int main(int argc, char *argv[]) {
        if (argc < 2) {
                return 1;
        }
        int fd = open(argv[1], O_RDONLY | O_EXCL);
        printf("%d\n", fd);
        return 0;
}

予想通り、プログラムはこのハードドライブのパーティションを開くことができません。

[root@il ~]# ./excl /dev/sdb1
-1
# another unmounted NTFS partition
[root@il ~]# ./excl /dev/md124p6
3

ディスクへの排他的なアクセスをブロックしている人が誰であるかを確認する方法は? dmraidやmdraidを介して開いたループデバイスやファイルには印刷されないlsofため、これよりも優れた汎用ツールを探しています。lsof

[root@il ~]# dmraid -s
ERROR: ddf1: wrong # of devices in RAID set "ddf1_4c5349202020202010000055000000004711471100000a28" [1/2] on /dev/sdb
*** Group superset .ddf1_disks
--> *Inconsistent* Subset
name   : ddf1_4c5349202020202010000055000000004711471100000a28
size   : 623046656
stride : 128
type   : mirror
status : inconsistent
subsets: 0
devs   : 1
spares : 0
*** Group superset isw_ebaifefjbf
--> Subset
name   : isw_ebaifefjbf_Volume0
size   : 976783360
stride : 256
type   : stripe
status : ok
subsets: 0
devs   : 2
spares : 0

_

[root@il ~]# lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
loop0          7:0    0   100M  0 loop
sda            8:0    0 232,9G  0 disk
└─md124        9:124  0 465,8G  0 raid0
  ├─md124p1  259:0    0   9,8G  0 part  /media/realboot
  ├─md124p2  259:1    0     1K  0 part
  ├─md124p5  259:2    0 195,3G  0 part  /media/distrpart
  ├─md124p6  259:3    0  19,5G  0 part
  ├─md124p7  259:4    0   3,7G  0 part  [SWAP]
  ├─md124p8  259:5    0   155G  0 part  /.sxbackup
  ├─md124p9  259:6    0  81,7G  0 part  /media/ARCHLINUXOLD
  └─md124p10 259:7    0 782,6M  0 part
sdb            8:16   0 931,5G  0 disk
├─sdb1         8:17   0   100M  0 part
└─sdb2         8:18   0   297G  0 part
sdc            8:32   0 232,9G  0 disk
└─md124        9:124  0 465,8G  0 raid0
  ├─md124p1  259:0    0   9,8G  0 part  /media/realboot
  ├─md124p2  259:1    0     1K  0 part
  ├─md124p5  259:2    0 195,3G  0 part  /media/distrpart
  ├─md124p6  259:3    0  19,5G  0 part
  ├─md124p7  259:4    0   3,7G  0 part  [SWAP]
  ├─md124p8  259:5    0   155G  0 part  /.sxbackup
  ├─md124p9  259:6    0  81,7G  0 part  /media/ARCHLINUXOLD
  └─md124p10 259:7    0 782,6M  0 part

関連情報