在Linux中的不可驱动的用户进程?

我使用sshfs(fusermount)连接远程挂载点。

当我忘记卸载他们使用…

fusermount -u /REMOTE 

…所有使用挂载点的进程都挂起。
我尝试用killall杀死他们, killkillproc ,没有任何作用!

这怎么可能?
无法杀死用户空间进程通常是Microsoft Windows function ;)

 rd@acid:/home/me > pgrep mc 11749 11827 12068 rd@acid:/home/me > su Password: <netgod>@acid:/home/me # kill 12068 <netgod>@acid:/home/me # killall mc <netgod>@acid:/home/me # pgrep mc 11749 11827 12068 

文件系统实际上是usermode,但是系统调用来自正在通过内核访问文件系统的客户进程,所以他们真的被挂在了内核地。

你试过强制卸载文件系统( umount -f /REMOTE )吗?

kill -9 PID不工作?

我认为你可能会看到那些暂停执行某种types的I / O的进程,现在还不能完成。 如果你看看ps命令给出的“状态”字段,我敢肯定你会看到这些进程处于“D”状态。 如果一个进程处于这种状态,就不能用正常的方式杀死。 这些过程将会一直执行,直到重新启动。