错误地直接挂载到 /mnt

错误地直接挂载到 /mnt

我在两个文件夹之间执行了 rsync:

rsync -avzh /mnt/folder1 /mnt/folder2

(folder1 是 /dev/sdb,folder2 是 /dev/sdc,都是 ext4 分区)

然后我卸载了folder1,我犯了一个错误,我将/dev/sdc直接安装在/mnt上:

mount /dev/sdc /mnt

事实上我想将 /dev/sdc 挂载到 /mnt/folder1

现在我无法卸载 /mnt:

umount /mnt/
umount: /mnt/: target is busy
    (In some cases useful info about processes that
     use the device is found by lsof(8) or fuser(1).)

我怎样才能解决这个问题?

答案1

这是,为了防止数据丢失

运行以下命令,查看哪些进程阻止卸载。我假设您跳过了开发上的分区以减少输入:

lsof | grep '/dev/sdc'

关闭您的工作或结束给定的进程并再次卸载。您还可以看到哪些文件仍然打开:

fuser -u /mnt/

而以下命令将终止所有进程本身并可能导致数据丢失:

fuser -km /mnt

或者将其显示为已卸载,并在进程完成后让它自动卸载:

umount -l /mnt

答案2

检查是否没有任何进程使用安装点,例如您自己的 shell。

如果那还不行的话

lsof |grep /mnt/

可以帮助您查明正在使用安装点的内容。

相关内容