安全卸载被占用分区需先解除占用再卸载:用fuser -v或fuser -m查进程,优先systemctl stop服务或通知用户退出,慎用fuser -k;残留引用可用lsof +D或findmnt -D排查,顽固情况用umount -l懒卸载,最后mount | grep验证。

要安全卸载被占用的磁盘分区,核心是先解除占用、再强制卸载,不能跳过排查直接硬卸。尤其当分区挂载在 /home、/var 或数据库路径等位置时,常有后台进程持续读写,导致 umount 报错 “device busy”。
确认谁在占用分区
用 fuser 查看具体进程:
-
fuser -v /mount/point(例如fuser -v /data)—— 显示所有访问该挂载点的用户、PID 和访问类型(如 cwd、txt、mem) -
fuser -m /dev/sdXN(例如fuser -m /dev/sdb1)—— 按设备路径查,更底层可靠 - 若提示未找到命令,先安装:
yum install psmisc -y(CentOS/RHEL)或apt install psmisc -y(Debian/Ubuntu)
安全终止占用进程
不建议直接 kill -9 所有进程,优先尝试优雅退出:
Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...
- 对普通用户进程:记录 PID 后通知用户保存并退出
- 对服务类进程(如 nginx、mysql):
systemctl stop service_name停止对应服务 - 若需快速释放且可接受中断:
fuser -k /mount/point—— 发送 SIGKILL 终止所有关联进程(慎用于生产环境)
检查是否仍有残留引用
某些情况即使进程退出,内核仍缓存引用(如 NFS 客户端、已删除但仍在运行的程序打开的文件):
- 运行
lsof +D /mount/point再次扫描打开的文件和目录 - 检查是否有子挂载点:
findmnt -D /mount/point,如有嵌套挂载(如 /mount/point/subdir),需先卸载子项 - 若确认无活跃访问但仍报 busy,可尝试 lazy 卸载:
umount -l /mount/point—— 解除挂载点关联,待资源真正空闲后自动清理(适用于紧急维护,不推荐长期依赖)
卸载后验证与清理
成功卸载后别急着删分区,做两件事:
- 执行
mount | grep /mount/point确认已消失 - 检查
/etc/fstab,注释或删除对应行,避免重启时自动挂载失败报错 - 如后续要删除该分区,再用
fdisk /dev/sdX→d→w,或用parted /dev/sdX rm N

















