2

我在路径中有一个挂载的 iso 映像:

/mnt/iso

在这个 iso 中我有一个安装脚本 install.sh 我从 iso 运行安装脚本,最后脚本询问用户是否要卸载 iso 本身。如果用户按“y”,则脚本执行以下代码:

cd /
umount /mnt/iso
echo "Installation completed!"

不幸的是,当脚本尝试执行 umount 时出现错误

umount: /mnt/iso: device is busy

我想这是由于脚本本身的虚拟设备很忙。怎样才能让它发挥作用?肿瘤坏死因子

4

2 回答 2

3

使用-lor--lazy切换到umountwhich 将执行延迟卸载,只有在不再使用时才会完全卸载。手册页中的完整描述(这是一个 linux 特定选项)是:

懒卸载。现在从文件系统层次结构中分离文件系统,并在文件系统不再忙时清理对文件系统的所有引用。(需要内核 2.4.11 或更高版本。)

于 2013-11-15T12:33:13.110 回答
0

如果您使用的是最新版本,TomH 的解决方案将解决该问题。否则,Simone Palazzo 的评论是你最好的选择。您正在通过位于要卸载的区域中的脚本卸载某些东西。如果您从根目录运行脚本,它将成功。

于 2013-11-15T16:56:56.257 回答