我经常在取消文件系统时遇到麻烦,因为compton
子目录保持打开状态。
lsof
这是我现在的一行:
compton 30043 valmi cwd DIR 254,0 32768 7485 /media/truecrypt1/videos
我一生都无法弄清楚它对这个目录做了什么(它没有被任何其他进程使用,也没有在除了 bash 之外的任何应用程序中打开过)。
到目前为止,当这种情况发生时,我总是只是重新启动 X,但我希望有人告诉我如何理解compton
它应该释放我的目录,或者作为安慰告诉我它正在用它做什么。
如果这是相关的,这是来自 Debian stable 的 compton-git 20121102-2,带有 3.5.0-7 和所有最新的。
答案1
输出的第四列lsof
告诉您该目录是当前工作目录(cwd) 的过程。最有可能compton
是在这个目录中启动的。最有可能的是,您可能会终止该进程并在另一个目录中重新启动它(例如/
)。
你可能尝试使用以下 hack 强制它离开目录:
通过发出以下命令将 GDB 附加到进程
$ gdb -p <pid>
其中
<pid>
是进程的 PID,内
gdb
刊> p chdir("/") > detach > quit
$
和>
是相应程序的提示。
笔记:如果compton
有特殊原因位于此目录中,这可能会以一种可怕的方式使进程崩溃。我在compton
的源代码中没有发现任何表明它是故意存在的调用,但请注意。另一方面……这也能解决你的问题。 ;)