我想更好地了解哪些程序在重新启动期间正在修改特定文件1。我可以设置一些东西来记录这种信息吗?
轮询当前打开文件的进程将不起作用,因为文件可能只打开几毫秒。
可以使用内核跟踪来收集这些信息吗?
1 /var/lib/alsa/asound.state
如果您很好奇,但我对通用解决方案感兴趣。
我想更好地了解哪些程序在重新启动期间正在修改特定文件1。我可以设置一些东西来记录这种信息吗?
轮询当前打开文件的进程将不起作用,因为文件可能只打开几毫秒。
可以使用内核跟踪来收集这些信息吗?
1 /var/lib/alsa/asound.state
如果您很好奇,但我对通用解决方案感兴趣。
这可以通过该
fuser
工具来实现。它列出了访问特定文件的所有进程的进程 ID。尝试,...查看您的主目录中“打开”了哪些文件、所涉及的进程 ID 以及拥有这些进程的用户名。
就您而言,我不确定这是否有用,因为您正在尝试监视重新启动。我怀疑 rc.local 在重新启动时执行得太晚,无法捕获任何有用的东西,比如,
watch -n 0.5 "fuser -u /var/lib/alsa/asound.state"
嗯-我刚刚尝试将其转储到文件中,但输出不是很漂亮。但是如果这可以解决,那么也许可以通过 cron 实现一些目标?