我正在 python 脚本中运行,kpartx
作为我正在尝试执行的自定义操作系统构建的一部分。我正在使用 pythonsh
模块来运行 bash 命令。
sh.kpartx("-as", image)
这就是我附加图像的方式。
然后我创建分区并在每个分区上创建文件系统。然后我当然会卸载图像。
sh.kpartx("-d", image)
问题是,在我的脚本中,我多次使用上述附加和分离命令,并且每次都/dev/loopX
使用新命令。我希望在我从/dev/loop0
下一个附件中分离图像后,我将能够再次使用它。然而,情况并非如此并且/dev/loop1
被使用。
这是怎么回事?为什么?
答案1
我怀疑它kpartx
不存储任何状态,因此它不记得您最初是否在 on 上调用过/dev/loop0
,或者它是否必须设置循环设备。
从其页面中的示例来看man
,losetup
它是非常可编写脚本的,因此您自己处理该部分应该不会有太多额外的工作。