menu E4b9a6's blog
rss_feed
E4b9a6's blog
有善始者实繁,能克终者盖寡。

解决取消挂载时提示“targetisbusy”的错误

作者:E4b9a6, 创建:2021-12-29, 字数:983, 已阅:181, 最后更新:2021-12-29

这篇文章更新于 1059 天前,文中部分信息可能失效,请自行甄别无效内容。

Linux在取消挂载磁盘时经常会提示无法取消挂载

Bash
➜  ~ sudo umount /mnt/sda
umount: /mnt/sda: target is busy.

使用“lsof”可以查看具体是什么进程在占用磁盘

Bash
➜  ~ sudo lsof /mnt/sda
COMMAND   PID    USER   FD   TYPE DEVICE   SIZE/OFF     NODE NAME
smbd    12583 chancel  cwd    DIR   8,33       4096 16515073 /mnt/sda/transmission-downloads
smbd    12583 chancel   14r   DIR   8,33       4096 16515073 /mnt/sda/transmission-downloads
smbd    12583 chancel   33r   REG   8,33 5209156640 16515219 /mnt/sda/transmission-downloads/chancel.ts

可以看到是transmission的下载占用了磁盘,可以选择直接kill杀死进程也可以选择正常的关闭进程

Bash
# 方法一
sudo systemctl stop transmission-daemon.service
# 方法二
sudo kill -9 12583

或者使用fuser也可以实现查看进程占用磁盘的信息

Bash
➜  sda fuser -mv /mnt/sda
                     USER        PID ACCESS COMMAND
/mnt/sda:            root     kernel mount /mnt/sda
                     chancel    1616 ..c.. zsh

使用fuser杀死对应磁盘进程

Bash
sda fuser -kv /mnt/sda

Tip:尽量选择合理的关闭进程方式,无论是kill还是fuser都是直接杀死进程,进程数据有丢失的风险


[[replyMessage== null?"发表评论":"发表评论 @ " + replyMessage.m_author]]

account_circle
email
web_asset
textsms

评论列表([[messageResponse.total]])

还没有可以显示的留言...
gravatar
[[messageItem.m_author]] [[messageItem.m_author]]
[[messageItem.create_time]]
[[getEnviron(messageItem.m_environ)]]
[[subMessage.m_author]] [[subMessage.m_author]] @ [[subMessage.parent_message.m_author]] [[subMessage.parent_message.m_author]]
[[subMessage.create_time]]
[[getEnviron(messageItem.m_environ)]]