WEB开发网
开发学院操作系统Linux/Unix 解决分区卸载问题 阅读

解决分区卸载问题

 2009-12-01 00:00:00 来源:WEB开发网   
核心提示: lsof 命令还有许多选项,可以帮助您识别不同类型的文件系统上打开的文件和目录、打开了网络套接字的进程、正在使用特定的库的进程等等,解决分区卸载问题(5),lsof 命令的缺点是,必须联系用户并要求他们终止某些进程,fuser 命令提供一个 -v 选项,它在 fuser 命令的输出中增加一些与标

lsof 命令还有许多选项,可以帮助您识别不同类型的文件系统上打开的文件和目录、打开了网络套接字的进程、正在使用特定的库的进程等等。lsof 命令的缺点是,必须联系用户并要求他们终止某些进程,或者自己手工终止它们。fuser 命令更复杂,但是更强大,在作为根用户运行时可以替您执行许多进程终止工作。

用 fuser 寻找用户进程

fuser (find user processes) 命令也是一个开放源码应用程序,可以帮助您识别阻止文件系统卸载的进程。fuser 命令寻找与作为命令行参数指定的文件、目录或文件系统相关联的进程。本文主要关注对文件系统挂载点使用 fuser。关于 fuser 命令的更多信息,请参见它的在线参考信息。fuser 命令要求系统支持 /proc 文件系统。因此,在所有 Linux 发行版和 FreeBSD 系统上都可以使用它。

与 lsof 命令一样,作为命令行参数提供文件系统挂载点名称是使用 fuser 命令识别阻止文件系统卸载的进程的最简单方法:

$ fuser /mnt/yellowmachine 
/mnt/yellowmachine: 23334c 23697c 

fuser 命令的输出指出正在使用指定挂载点的进程的 PID。每个 PID 后面有一个字母,它表示与 PID 相关联的进程以什么方式使用指定的挂载点。最常见的字母是前面示例所示的 c,这表示指定的进程使用此文件系统上的一个目录作为当前工作目录。

但是,fuser 命令的默认输出不便于最终用户使用,即使按 Linux 标准来看也是如此。fuser 命令提供一个 -v 选项,它在 fuser 命令的输出中增加一些与标准 ps 命令相似的输出,见 清单 7。


清单 7. 挂载的 NFS 文件系统上的用户进程
$ fuser -v /mnt/yellowmachine 
           USER    PID ACCESS COMMAND 
/mnt/yellowmachine: wvh    23334 ..c.. bash 
           wvh    23697 ..c.. emacs 

上一页  1 2 3 4 5 6  下一页

Tags:解决 分区 卸载

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接