在 macos 中卸载挂载磁盘卷应先确认目标设备与路径,再排查并终止占用进程(如 mds、backupd),随后执行 diskutil unmount 或 unmountdisk 命令;强制选项仅作备用,卸载后需清理残留挂载点及空目录。

在 macOS 中用终端卸载挂载的磁盘卷,关键不是一上来就加 force,而是先看清谁在用、再稳妥断开,最后才动用底层命令。多数“资源繁忙”问题,靠几个简单操作就能解决,根本不需要硬来。
确认目标磁盘和挂载点
别急着敲卸载命令,先定位准确设备和路径:
- 运行
diskutil list,找到目标磁盘(比如外置硬盘显示为disk2,其分区是disk2s1) - 若已知卷名(如
MyDrive),可用df -h | grep MyDrive确认挂载路径(通常是/Volumes/MyDrive) - 检查当前终端所在目录:
pwd,如果输出是挂载点,先执行cd ~切出来——这是最常见的占用源之一
排查并释放占用进程
图形界面卡住时,终端能帮你看到后台真正在锁盘的程序:
macOS 微信消息自动化工具。通过 GUI 自动化实现:发送消息给指定联系人、读取聊天内容、监控新消息。适用于需要自动化微信操作的场景,如定时发送、批量回复、消息备份等。依赖 peekaboo 进行屏幕截图和 UI 交互。仅支持 macOS。开源地址:https://github.com/chairmanmia...
- 运行
lsof +D /Volumes/MyDrive(把MyDrive换成实际卷名),列出所有访问该卷的进程 - 重点关注
mds(Spotlight)、backupd(Time Machine)、QuickLookUIService这些常驻服务 - 若发现某个进程 PID 是 1234,可手动终止:
kill 1234;不确定时优先用sudo kill -TERM 1234,比-9更安全
执行卸载命令
确认无活跃占用后,按需选择对应命令:
- 只卸载单个卷:
diskutil unmount /dev/disk2s1或diskutil unmount /Volumes/MyDrive - 整块磁盘(含所有分区)都被锁死:
diskutil unmountDisk /dev/disk2 - 常规卸载失败且确认无程序在用,再用强制选项:
diskutil unmount force /dev/disk2s1或diskutil unmountDisk force /dev/disk2 - 若提示
dissented by PID XXXX,说明仍有强占进程 → 回头查 PID 并终止它
验证与清理残留
卸载成功不等于彻底干净,残留引用可能影响下次挂载:
- 运行
findmnt | grep MyDrive(Linux 风格)或diskutil list | grep MyDrive,确认已从列表消失 - 检查
/Volumes/下是否还留空目录:ls /Volumes/,如有残留可手动删除:sudo rmdir /Volumes/MyDrive - 若该卷反复自动重挂,可尝试修复元信息:
sudo diskutil quietRepairVolume disk2s1










