我正在尝试将原始图像文件转换为带有luks加密的qcow2。我搜索了很多,主要是使用“-o encryption = on”,但它将来会在qemu-img工具中删除。< / p>
我正在使用qemu-img 2.8版本,我尝试这个命令:
qemu-img convert --object secret,data=123456,id=sec0 -O luks -o key-secret=sec0 raw.img demo.luks
qemu-img: Could not open 'demo.luks': Parameter 'key-secret' is required for cipher
有人知道如何解决这个问题吗?如果这个luks加密qcow2成功创建,那么是否有必要更改qemu-system-x86-64参数来运行此图像?
答案 0 :(得分:1)
不幸的是,qemu-img中的'convert'命令不支持在任何已发布的QEMU版本中输出luks格式图像所需的语法。
目前的GIT大师,有一点改进 - 您现在可以使用LUKS图像作为预先创建LUKS图像的目标提供。首先使用'qemu-img create'创建一个没有写入数据的空luks图像,然后转换为它。
首先我有一些我之前创建的随机qcow2图像
<div class="row Pad-10" style="height:33%">
我在访客中使用它或以其他方式写入数据,现在想转换为luks。首先,我必须创建一个完全相同大小的luks图像:
$ qemu-img create -f qcow2 demo.qcow2 10M
现在我可以从qcow2图像中提取数据,将其写入luks图像:
$ qemu-img create -f luks --object secret,data=123,id=sec0 \
-o key-secret=sec0 demo.luks 10M
注意,如上所述,这只是GIT master中的功能,现在来自
$ qemu-img convert --target-image-opts \
--object secret,data=123,id=sec0 -f qcow2 demo.qcow2 -n \
driver=luks,file.filename=demo.luks,key-secret=sec0
所以第一个版本将在下一个QEMU 2.10版本中提供。
答案 1 :(得分:0)
现在要加密支持文件?
qemu-img create -f luks -b demo.qcow2 snap.img
Backing file not supported for file format 'luks'
qemu-img create -f qcow2 -b demo.qcow2 -o encryption=luks snap.img
qemu-img: Parameter 'encryption' expects 'on' or 'off'
如果加密=开启 - 系统仿真器不再支持AES-CBC加密的qcow2映像 感谢。