我希望能够从映像挂载两组(可能更多)映像和文件(squashfs)并独立卸载它们。但是,当两组都已安装时(第一个然后第二个),umount
第一个映像安装点失败target is busy
(umount
在文件的第一个安装点成功之后)。代码如下。
当所有初始安装时,findmnt
显示两组图像和文件安装“占用”相同的循环设备(一组用于图像,一组用于文件)。为了解决这个问题,我尝试使用 来将映像安装到不同的循环设备mount -o loop=/dev/loopx
,但结果是overlaping loop device exists
.有什么方法可以避免复制映像并仍然独立地挂载/卸载映像+文件吗?
BTW 安装文件第二次输出额外的内容(与第一次相比):WARNING. source write-protected
.
PS 网上搜索发现如何同时从磁盘映像挂载多个分区?和https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1836914IMO 相关但不直接。
代码:
mkdir i_1 i_2 s_1 s_2
mount img i_1
WARNING: source write-protected, mounting read-only.
mount img i_2
WARNING: source write-protected, mounting read-only.
mount i_1/filesystem.squashfs s_1
mount i_2/filesystem.squashfs s_2
WARNING: source write-protected, mounting read-only.
umount s_1
umount i_1
target is busy.
为了重新执行,可以将一些发行版 iso 作为映像文件(替换为 squashfs 文件的正确路径)。