「fatrace」が特定のオープンイベント(udisks /dev/sda)を検出できないのはなぜですか?

「fatrace」が特定のオープンイベント(udisks /dev/sda)を検出できないのはなぜですか?

`ioerr_cnt`が上昇し続けるが、ログにメッセージが表示されないのはなぜですか?

どのような過程でこのようなことが起こるかを調べようとします。sudo lsof +D /dev/現在開いているSCSIデバイスに対して表示されるプロセスがないようです。ただし、エラーが発生した場合(cd /dev && sudo fatrace -c)関連のopen()呼び出しも表示されません...

[回答:] udisksは、たとえばSMARTデータに対して10分ごとにドライブをポーリングします。

$ ps -ax|grep udisksd
  810 ?        Ssl    0:13 /usr/libexec/udisks2/udisksd
$ sudo strace -t -f -p 810
[pid   810] 14:11:09 clone(strace: Process 26543 attached
child_stack=0x7f8fc551ddf0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f8fc551e9d0, tls=0x7f8fc551e700, child_tidptr=0x7f8fc551e9d0) = 26543
[pid 26543] 14:11:09 set_robust_list(0x7f8fc551e9e0, 24 <unfinished ...>
[pid   810] 14:11:09 poll([{fd=4, events=POLLIN}, {fd=8, events=0}, {fd=9, events=0}, {fd=11, events=POLLIN}, {fd=13, events=POLLIN}], 5, 599968 <unfinished ...>
[pid 26543] 14:11:09 <... set_robust_list resumed> ) = 0
[pid 26543] 14:11:09 prctl(PR_SET_NAME, "pool") = 0
[pid 26543] 14:11:09 openat(AT_FDCWD, "/dev/sda", O_RDONLY|O_NONBLOCK) = 14
[pid 26543] 14:11:09 ioctl(14, SG_IO, {guard='Q', protocol=BSG_PROTOCOL_SCSI, subprotocol=BSG_SUB_PROTOCOL_SCSI_CMD, ...

fatraceデバイスがudiskによって開かれたとマークされていない理由はわかりません。他のデバイスが開いていることを示します(たとえば、lsofを実行するか、firefoxを起動すると/ dev / dri / card0が開きます)。

^^ご存知の方はいらっしゃいますか?

ベストアンサー1

fatrace表示されないようです。どのデバイスの電源が入ります。これを使用してプロセスを開く状態を表示できます。目次以下は/devと似ています/dev/driが、そのようなデバイスノードではありません/dev/dri/card0

おすすめ記事