qcow2磁盘加密及libvirt访问

摘要:
1.创建qcow2加密磁盘[root@Coc-5test_encrypt]#qemu-imgconvert-fqcow2-Oqcow2-oencryptintemplate_Xpcencry1.qcow2Diskimage'encry1.qcow2'已加密。password://Enter此处输入密码123456[root@Coc-5test_encrypt]#qemu信息
 
1.创建qcow2加密磁盘
[root@Coc-5 test_encrypt]# qemu-img convert -f qcow2 -O qcow2 -o encryption template_xp encry1.qcow2
Disk image 'encry1.qcow2' is encrypted.
password:   //这里输入密码 123456


[root@Coc-5 test_encrypt]# qemu-img info encry1.qcow2 
image: encry1.qcow2
file format: qcow2
virtual size: 10G (10737418240 bytes)
disk size: 2.1G
encrypted: yes
cluster_size: 65536


2.virsh edit修改配置文件,将磁盘改为encry1.qcow2 


3.virsh start 显示错误
virsh # start instance-00000009
error: Failed to start domain instance-00000009
error: internal error: unable to execute QEMU command 'cont': 'drive-virtio-disk0' (/usr/local/noc/var/lib/noc/instances/test_encrypt/encry1.qcow2) is encrypted


4.在本地创建一个秘钥xml
[root@Coc-5 test_encrypt]# cat secret.xml 
<secret ephemeral='no' private='yes'>
</secret>


5.define秘钥


[root@Coc-5 test_encrypt]# virsh secret-define secret.xml 
Secret 3f8475e9-868c-4543-a510-7f668ba83d46 created


6.为秘钥设置密码
密码就用上面的123456


[root@Coc-5 test_encrypt]# MYSECRET=`printf %s "123456" | base64`
[root@Coc-5 test_encrypt]# echo $MYSECRET
MTIzNDU2
[root@Noc-5 test_encrypt]# virsh secret-set-value 3f8475e9-868c-4543-a510-7f668ba83d46 $MYSECRET
Secret value set


7.在libvirt配置文件磁盘段中添加秘钥
<encryption format='qcow'>
        <secret type='passphrase' uuid='3f8475e9-868c-4543-a510-7f668ba83d46'/>
      </encryption>


8.运行虚拟机
[root@Coc-5 test_encrypt]# virsh start instance-00000009
Domain instance-00000009 started

免责声明:文章转载自《qcow2磁盘加密及libvirt访问》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Maven创建父子工程(简单、完整)iOS的UI包 coredatalibrary下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Jenkins操作手册 巨详细,一篇足矣!

一、持续集成相关概念 1.1、什么是持续集成? 随着软件开发复杂度的不断提高,团队开发成员间如何更好的协同工作以确保软件开发的质量已经成为开发过程中不可回避的问题。尤其是近年来敏捷开发在软件领域越来越火,如何能在不间断变化的需求中快速适应和保证软件的质量显得尤其重要。持续集成正是针对这一问题的一种软件开发实践。它倡导团队开发成员必须经常集成他们的工作,甚至...

odoo 项目经验1

1.在xml中的domain表达式解析:|,&,!以及表示此意义的符号,都是遵从栈的规则(后进先出),右为栈底,所以从最左端的符号开始判断。 2.xml中也可以进行时间计算,比如在一周内的为即将开始等等等。 可参照https://www.cnblogs.com/hellojesson/p/8144474.html <filter strin...

.netcore在linux下使用P/invoke方式调用linux动态库

http://www.mamicode.com/info-detail-2358309.html   .netcore下已经实现了通过p/invoke方式调用linux的动态链接库(*.so)文件 1 [DllImport(@"libdl.so.2")] 2 public static extern IntPtr dlo...

php的session

来源:http://blog.163.com/lgh_2002/blog/static/4401752620105246517509/ http协议是WEB服务器与客户 端(浏览器)相互通信的协议,它是一种无状态协议。所谓无状态,指的是不会维护http请求数据,http请求是独立的,非持久的。而越来越复杂的WEB 应用,需要保存一些用户状态信息。这时候,S...

yml配置从nacos配置中心取数据(单个或多个),读读源码,寻找如何配置多个

更详细或者其他配置方法,可以参考这位大佬的博客:Nacos配置管理及动态刷新 1. 读取单个文件 spring: cloud: nacos: config: server-addr: localhost:8848 namespace: **********下面的配置文件必须在此命名空间下...

Sql多条件排序

多条件排序可以通过在order by语句后面使用case when then条件语句来实现。 select * from 表名 ORDER BY case when 条件 then 0 else 1 end 例子: 1.创建表case_test 共有id,case_type,case_location,case_way四个字段。 2.导入数据: INSER...