我有一个 bash 脚本,我将 ISO 挂载到循环设备:
mount -o loop my.iso /tmp/foo
碰巧同时在我的操作系统(Linux Mint 19)中,我安装了一个 ISO 映像,使用此操作的 GUI 选项。
所以我得到了错误
mount: /tmp/foo: /dev/loop0 ya está montado o el punto de montaje está ocupado。
(...loop0 挂载点忙...)
问题:
我可以选择挂载 ISO 的循环吗,例如:
mount - loop3 my.iso /tmp/foo
所以我不需要卸载以前的ISO?
错误不是因为您已经安装了另一个 ISO 设备;而是因为您已经安装了另一个 ISO 设备。将
mount -o loop
始终获得第一个未使用的循环设备或创建一个新设备。这并不是因为同一个 ISO 映像/循环设备已经安装在另一个目录上——同一个设备可以同时安装在不同的安装点上。
您可能想要做的是在同一个挂载点上挂载相同的 ISO 两次。该
mount(8)
实用程序将尝试通过检查支持文件是否已附加到循环设备并重用该设备来保护您,而不是将同一文件附加到多个循环设备。但如果你真的想这样做,你可以通过手动附加循环设备来绕过检查
losetup
:两者结合:
然后,您应该使用显式
-d
选项umount(8)
,或者之后手动分离循环,使用losetup -d
:对于只读文件系统,如 ISO,这应该是相当安全的。永远不要将它与以读写模式安装的文件系统一起使用。