umount取消挂载失败,报错device is busy
相关命令:
umount
-l --lazy,立即断开文件系统,所有清理以后执行,实际上就是延迟卸载,该挂载已从文件系统名称空间中删除,但它仍然安装,因此访问它的程序仍然可以访问它。当最后一个访问程序结束时,将执行实际卸载。
-a 卸载/etc/mtab中记录的所有文件系统
-O 限制文件系统集合(和-a选项一起使用)
-A --all-targets,卸载当前名字空间内指定设备对应的所有挂载点
-c --no-canonicalize,不对路径规范化
-d 若挂载了回环设备,也释放该回环设备
-f 强制卸载(遇到不响应的NFS系统时)
-h 显示帮助
-n 卸载时不要将信息存入/etc/mtab文件中
-r 若无法成功卸载,则尝试以只读的方式重新挂入文件系统
-t 限制文件系统集合,文件系统类型:仅卸载选项中所指定的文件系统
-v 执行时显示详细的信息
-V 显示版本信息
-r 若卸载失败,尝试以只读方式重新挂载
-R 递归卸载目录以及其子对象
lsof
-a 列出打开文件存在的进程
-c <进程名> 列出指定进程所打开的文件
-g 列出GID号进程详情
-d <文件号> 列出占用该文件号的进程
+d <目录> 列出目录下被打开的文件
+D <目录> 递归列出目录下被打开的文件
-n <目录> 列出使用NFS的文件
-i <条件> 列出符合条件的进程
-p <进程号> 列出指定进程号所打开的文件
-u 列出UID号进程详情
-h 显示帮助信息
-v 显示版本信息
fuser
-a 显示命令行中指定的所有文件
例如umount /dev/sdc1:
报错...: device is busy
此时处理方法:
①lsof
lsof /dev/sdc1
然后kill掉查出来的PID,再次尝试umount,看是否可以,不可以的话再试试下面的。
②fuser
fuser -mv /dev/sdc1
-v选项会打印出PID,这时候去kill掉或者直接这样:
fuser -kmv /dev/sdc1,直接会kill掉,不用再单独kill了。
再次尝试umount。
from:https://blog.csdn.net/qq_30168227/article/details/122299441
本文来自博客园,作者:海_纳百川,转载请注明原文链接:https://www.cnblogs.com/chentiao/p/16525518.html,如有侵权联系删除
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)