强制 compton 到空闲目录

强制 compton 到空闲目录

我经常在取消文件系统时遇到麻烦,因为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 强制它离开目录:

  1. 通过发出以下命令将 GDB 附加到进程

     $ gdb -p <pid>
    

    其中<pid>是进程的 PID,

  2. gdb

    > p chdir("/")
    > detach
    > quit
    

$>是相应程序的提示。

笔记:如果compton有特殊原因位于此目录中,这可能会以一种可怕的方式使进程崩溃。我在compton的源代码中没有发现任何表明它是故意存在的调用,但请注意。另一方面……这也能解决你的问题。 ;)

相关内容