大部人在卸载或退出储存装置时都曾遇见以下讯息而被拒绝卸载或退出:
umount: /media/cdrom0: device is busy
这表示有些程序仍在开启储存装置中某些档案作读或写,如果这时移除装置,有机会会损坏档案系统、掉失资料和损害该程序,所以系统会拒绝卸载或退出。 此时,您需找出仍在使用储存装置的程序并要求它们关闭相关档案 (一般的方法是直接结束相关程序),才可以正常卸载或退出媒体。其中一个方法就是可以使用「fuser -m 挂载点
」列出正在使用装置挂载点目录以下档案的程序:
$ fuser -m /media/cdrom0 /media/cdrom0 6015c 6132
表示程序识别码 (PID) 为 6015 和 6132 的程序是在使用 /media/cdrom0 或以下的档案。PID 后的英文字母表示档案/目录如何被使用:
- c - 当前目录
- e - 程序被执行的目录
- f - 开启档案。fuser 的缺省显示模式会省去 f
- F - 开启档案作写入。fuser 的缺省显示模式同样会省去 F
- r - 根目录
- m - 使用 mmap 开启了档案或分享程序库 (shared library)
在 fuser 命令加上选项 -v
可以显示较详细的资讯: 站长教学网 eduyo.com
$ fuser -vm /media/cdrom0 USER PID ACCESS COMMAND /media/cdrom0: johndoe 6015 ..c.. bash johndoe 6132 f.... rhythmbox
亦使用命令「ps auxw | grep PID
」获知个别程序的详细资讯:
$ ps auxw | grep 6132 johndoe 6132 0.4 3.0 220017 57104 ? S+ 18:27 0:00 rhythmbox
以上画面显示音乐播放程序 Rhythmbox 使用了光盘,您只需要关掉 Rhythmbox 或播放清单,就可以卸载或退出光盘。
不行就kill -9它即可
(责任编辑:ken)