1.kvm虚拟机克隆
  克隆kvm虚拟机 ,克隆前需要提前关机  
 
语法: virt-clone -o 原虚拟机  -n 新虚拟机 -f 新虚拟机镜像存放路径  
 选项中-o 表示 old  -n 表示new    虚拟机镜像: 就是整个虚拟机文件。 不是操作系统光盘镜像

[root@hd1 opt]# virt-clone -o centos7.5 -n hd11.com -f /opt/hd11.com.img
正在分配 'hd11.com.img'                                                         |  10 GB  00:00:18     
 
成功克隆 'hd11.com'。
 
2。kvm快照
快照作用:1.热备   2.灾难恢复   3.回到历史中某个状态
(1)创建kvm快照
先将虚拟机关机  virsh  shutdown  centos7.5
(2)查看要备份的磁盘镜像格式
qemu-img info /opt/centos7.raw

(3)raw不支持快照,需要把raw改成qcow2格式

[root@hd1 opt]# qemu-img convert -f raw -O qcow2 /opt/centos7.raw /opt/centos7.qcow2

(4)查看下备份的centos7.qcow2的磁盘镜像格式,

qemu-img info /opt/centos7.qcow2
file format:qcow2

(5)编辑centos7.5文件改他的主配置文件

[root@hd1 opt]# virsh edit centos7.5
<driver name='qemu' type='qcow2'/>
<source file='/opt/centos7.qcow2'/>

(6)重新重启下libvirtd

systemctl restart libvirtd

(7)创建快照

virsh   snapshot-create centos7.5

(8)查看快照的版本

virsh snapshot-list centos7.5
名称 生成时间 状态
------------------------------------------------------------
1629708007 2021-08-23 16:40:07 +0800 shutoff

(9)查看快照配置文件

 [root@hd1 opt]# virsh snapshot-current centos7.5
 注意:该配置文件在目录下/var/lib/libvirt/qemu/snapshot
 [root@hd1 opt]# cd /var/lib/libvirt/qemu/snapshot/centos7.5/
[root@hd1 centos7.5]# ls
1629708007.xml
 
7  恢复到指定的版本 1629708007 ,没有任何输出则代表恢复成功
root@hd1 centos7.5]# virsh snapshot-revert centos7.5 1629708007
 
确定一下
[root@hd1 centos7.5]# virsh snapshot-current centos7.5|grep creation
  <creationTime>1629708007</creationTime>
 
8  删除虚拟机快照。在删除快照之前,先看下快照信息:
 
[root@hd1 centos7.5]# qemu-img info /opt/centos7.qcow2
image: /opt/centos7.qcow2
file format: qcow2
virtual size: 10G (10737418240 bytes)
disk size: 1.4G
cluster_size: 65536
Snapshot list:
ID        TAG                 VM SIZE                DATE       VM CLOCK
1         1629708007                0 2021-08-23 16:40:07   00:00:00.000
2         1629708490                0 2021-08-23 16:48:10   00:00:00.000
 
删除第一个快照
 
[root@hd1 centos7.5]# virsh snapshot-delete centos7.5 1629708007
已删除域快照 1629708007
 
 
9 )快照只有编号吗?可以起名字吗 ?  
 
启动kvm中的虚拟机
[root@hd1 centos7.5]# virsh start centos7.5
 
登录192.168.1.120 创建一个a.txt
[root@localhost ~]# ls
anaconda-ks.cfg  a.txt
 
root@hd1 centos7.5]# virsh snapshot-create-as centos7.5 c-snap1
已生成域快照 c-snap1
 
查看当前的快照 
root@hd1 ~]# virsh snapshot-current centos7.5|grep name
 
[root@localhost ~]# touch b.xt
[root@localhost ~]# ls
anaconda-ks.cfg  a.txt  b.xt
 
再次创建快照
[root@hd1 centos7.5]# virsh snapshot-create-as centos7.5 c-snap2
已生成域快照 c-snap2
 
查看快照 
[root@hd1 centos7.5]# virsh snapshot-list centos7.5
名称               生成时间              状态
------------------------------------------------------------
1629708490           2021-08-23 16:48:10 +0800 shutoff
c-snap1              2021-08-23 17:03:23 +0800 running
c-snap2              2021-08-23 17:07:10 +0800 running
 
 
查看快照信息
 
[root@hd1 centos7.5]# qemu-img info /opt/centos7.
centos7.iso    centos7.qcow2  centos7.raw    
[root@hd1 centos7.5]# qemu-img info /opt/centos7.qcow2
 
Snapshot list:
ID        TAG                 VM SIZE                DATE       VM CLOCK
2         1629708490                0 2021-08-23 16:48:10   00:00:00.000
3         c-snap1                329M 2021-08-23 17:03:23   00:06:27.656
4         c-snap2                329M 2021-08-23 17:07:11   00:10:13.462
 
 
10   恢复快照 (恢复快照必须要关闭计算机?)
 
关机
[root@hd1 centos7.5]# virsh shutdown centos7.5
 
执行恢复snap1快照
[root@hd1 centos7.5]# virsh snapshot-revert centos7.5 c-snap1
 
[root@hd1 centos7.5]# virsh list
Id    名称                         状态
----------------------------------------------------
4     hd11.com                       running
7     centos7.5                      running
 
确认恢复到了c-snap1
 
root@hd1 centos7.5]# virsh snapshot-current centos7.5|grep name|more
 
<name>c-snap1</name>
    <disk name='vda' snapshot='internal'/>
    <disk name='hda' snapshot='no'/>
    <name>centos7.5</name>
 
 
 
重新登录192.168.1.120 查看当前目录下的文件
 
 
 
11 删除指定虚拟机快照
 
[root@hd1 centos7.5]# virsh snapshot-delete centos7.5 c-snap2
已删除域快照 c-snap2
 
查看快照配置文件 
 
[root@hd1 ~]# cd /var/lib/libvirt/qemu/snapshot/centos7.5/
[root@hd1 centos7.5]# ls
1629708490.xml  c-snap1.xml
 
12 查看开机创建的快照占用的磁盘空间:
 
[root@hd1 centos7.5]# qemu-img info /opt/centos7.qcow2
 
Snapshot list:
ID        TAG                 VM SIZE                DATE       VM CLOCK
2         1629708490                0 2021-08-23 16:48:10   00:00:00.000
3         c-snap1                329M 2021-08-23 17:03:23   00:06:27.656
 
 
 

kvm 虚拟化技术 1.3之kvm克隆以及快照的更多相关文章

  1. KVM虚拟化技术(二)KVM介绍

    KVM:Kernel Virtual Machine KVM是基于虚拟化扩展的x86硬件,是Linux完全原生的全虚拟化解决方案.部分半虚拟化支持,主要是通过半虚拟网络驱动程序的形式用于Linux和W ...

  2. kvm 虚拟化技术 1.2之kvm基础操作

    1.虚拟机基础操作 (1).查看.编辑.备份kvm配置文件以及查看kvm状态 [root@hd1 ~]# cd /etc/libvirt/qemu [root@hd1 qemu]# ls centos ...

  3. KVM虚拟化技术(三)KVM环境预配

    一.平台操作系统安装 选择合适的操作系统,此处选用CentOS 7 系统可最小化安装,也可标准安装: 如果要远程连接,建议安装VNC-Server 将防火墙配置可通信,SELINUX设为permiss ...

  4. KVM虚拟化技术

    KVM虚拟化技术 Qemu-kvm kvm virt-manager VNC Qemu-kvm创建和管理虚拟机 一.KVM简介 KVM(名称来自英语:Kernel-basedVirtual Machi ...

  5. [转] KVM虚拟化技术生态环境介绍

    KVM虚拟化技术生态环境介绍 http://xanpeng.github.io/wiki/virt/kvm-virtulization-echosystem-intro.html kvm和qemu/q ...

  6. 虚拟化技术:Xen与KVM的对比

    作为开源的虚拟化技术,对比Xen和KVM可以看到,Xen以6个无与伦比的优势领先:更好的可用资源.平台支持.可管理性.实施.动态迁移和性能基准. 可用资源:Xen的问世要比KVM早4年之久(两者分别是 ...

  7. kvm虚拟化学习笔记(四)之kvm虚拟机日常管理与配置

    KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...

  8. kvm虚拟化学习笔记(一)之kvm虚拟化环境安装

    平时一直玩RHEL/CentOS/OEL系列的操作,玩虚拟化也是采这一类系统,kvm在RHEL6系列操作系统支持比较好,本文采用采用OEL6.3操作系统,网上所有文章都说KVM比xen简单,我怎么感觉 ...

  9. KVM虚拟化技术(七)虚拟机配置文件

    KVM虚拟机的配置文件在/etc/libvirt/qemu/下,为xml文件 整体结构如下: <domain type='kvm'> 虚拟机整体信息 系统信息 硬件资源特性 突发事件处理 ...

随机推荐

  1. cache + redis(一)

    一.缓存的概念 1.Buffer,Cache的区别: buffer: 一般用于写操作,写缓冲. cache: 一般用于读操作,读缓存. 它们都是解决速度不一致的问题,都设计到IO操作. 2.Cache ...

  2. transformjs 污染了 DOM?是你不了解它的强大

    原文链接:https://github.com/AlloyTeam/AlloyTouch/wiki/Powerful-transformjs 写在前面 上星期在React微信群里,有小伙伴觉得tran ...

  3. 纹理集打包和动画转换工具Texture Merge的使用教程

    Texture Merger 可将零散纹理拼合为整图,同时也可以解析SWF.GIF动画,制作Egret位图文本,导出可供Egret使用的配置文件,其纹理集制作功能在小游戏开发中可以起到降低小游戏包体的 ...

  4. python-筛法求素数

    [题目描述]用户输入整数n和m(1<n<m<1000),应用筛法求[n,m]范围内的所有素数. [练习要求]请给出源代码程序和运行测试结果,源代码程序要求添加必要的注释. [输入格式 ...

  5. python正则表达式替换或去除指定字符

    代码: import re regEx = "[\n""|]" # 去除字符串中的换行符.中文冒号.|,需要去除什么字符就在里面写什么字符 str= re.su ...

  6. Android Studio安装及问题

    安装教程+虚拟机调试:https://blog.csdn.net/y74364/article/details/96121530 gradle下载缓慢解决办法:https://blog.csdn.ne ...

  7. JavaScript实现动态表格

    运行效果: 源代码: 1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta char ...

  8. 没有高度的div中的子元素高度自动撑开

     直接上代码: 很多时候 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  9. 学习Java必用的9个网站,最后一个最好用!

    Java语言已经成为IT编程界中一种持久的语言,从主要开放源码网站中统计的每月编程语言排名来看,Java一直位居榜首.因此,我们的程序员不能放弃学习Java呀!今日小编为大家整理了几个关于Java学习 ...

  10. spring原始注解开发-01

    我们使用xml-Bean标签的配置方式和注解做对比理解 1.创建UserDao接口以及UserDao的实现类UserDaoImpl(接口代码省略) public class UserDaoImpl i ...