虚拟机的复制与恢复
复制虚拟机其实就是复制他的硬盘和硬件信息

/var/lib/libvirt/images/xxxx.qcow2  ##硬盘的储存路径
/etc/libvirt/qemu/xxxx.xml  ##硬件信息文件存储路径 

例如想要复制远程主机中名为westos的虚拟机 我们则需要复制他的硬盘和硬件信息

scp root@ip:/var/lib/libvirt/images/westos.qcow2   /mnt
scp root@ip: /etc/libvirt/qemu/westos.xml   /mnt  

在这里插入图片描述
在这里插入图片描述

当在虚拟机管理器中删除复制过来的虚拟机时 我们该如何恢复虚拟机 如下模拟恢复过程

cd  /mnt
virsh create test.xml  ##通过硬件信息文件启动名为test虚拟机
error: Cannot access strage file ' /var/lib/libvirt/images/xxxx.qcow2 '(as uid :107, gid 107): No such file or directory  ##出现报错  提示这个目录里面不存在这个硬件信息文件 有它对应的存储路径
mv  /mnt/test.qcow2    /var/lib/libvirt/images/  ##解决方法 将硬盘信息文件移动到相应目录下
virsh create test.xml  ##通过硬件信息文件启动虚拟机 该虚拟机被恢复 虚拟机管理器中出现该虚拟机 使用命令关掉之后该虚拟机就在管理器中消失了
virsh  define test.xml ##用命令关掉虚拟机之后 管理器中该虚拟机仍然存在

复制远程主机的虚拟机信息文件后 虚拟机的管理器中没有该台虚拟机 可以通过驱动复制来的虚拟机硬件信息文件来显示
在这里插入图片描述
发现报错 移动复制来的虚拟机硬盘信息文件
在这里插入图片描述
移动后再启动该虚拟机的硬件信息文件 发现成功在管理器中出现
在这里插入图片描述

虚拟机的管理

virt-manager ##打开虚拟机管理器
virsh start desktop ## 打开虚拟机不能被阻塞的 rht-vmctl start desktop 可能被阻塞的
virt-viewer desktop ##显示虚拟机不能被阻塞的 rht-vmctl view desktop 可能被阻塞的
virsh list ##显示正在运行的虚拟机
vrish list --all ##查看所有的虚拟机
vrish shutdown desktop ##正常关闭虚拟机
vrish destory desktop ##强行关闭

打开虚拟机的管理器

在这里插入图片描述打开被阻塞 和 不被阻塞
在这里插入图片描述

在这里插入图片描述
显示阻塞 显示不阻塞
在这里插入图片描述
在这里插入图片描述
列出正在运行的虚拟机
在这里插入图片描述
列出所有虚拟机的状态
在这里插入图片描述
shutdown 关闭虚拟机可能被阻塞
在这里插入图片描述

destroy 关闭虚拟机不能被阻塞
在这里插入图片描述

虚拟机的安装
(1)图形方式安装虚拟机

virt-manager ##在真机中输入该命令打开虚拟机管理器

在打开的虚拟机管理器点击“电视”标志图形 选择本地下载 llocal install media cdrom

在这里插入图片描述
选择好本地镜像路径
在这里插入图片描述
在这里插入图片描述

选择要安装虚拟机的内存大小 cpu个数
在这里插入图片描述
选择虚拟机占用内存大小

在这里插入图片描述
设定虚拟机名称 选择自定义虚拟机的硬件信息
在这里插入图片描述
硬盘选择虚拟化 virtio
在这里插入图片描述
网卡选择虚拟化
在这里插入图片描述
选择左上角开始安装 begin installation 出现如图所示界面

在这里插入图片描述
安继续 填写安装信息

在这里插入图片描述
进入如下界面开始信息 选择
在这里插入图片描述
选择时区亚洲上海
!在这里插入图片描述
语言支持 选择英文和简体中文
在这里插入图片描述选择安装后系统界面显示图形界面
在这里插入图片描述
选择自定义分区
在这里插入图片描述
设定分区 /boot swap / 根下不用选择自动分配剩下的内存

在这里插入图片描述
在这里插入图片描述
按开始安装 可以在添加超级用户和密码

在这里插入图片描述

(2)编辑脚本安装虚拟机(半自动)

通过脚本自动填入建立虚拟机时所需要录入的信息 实现执行脚本建立虚拟机

cd /mnt ##连接上个实验位置 可进入该目录也可以不进入
vim  vm_create.sh ##建立脚本 包含所创建虚拟机的全部所需信息
test -z "$1"  && {
                   echo "Error : Please  input VMname following scripts !! " ##当命令后加安装的虚拟机名称时不出现报错 否则出现报错
                   exit
                   }
  vrit-install \  ##下载
     --name $1 \  ##创建虚拟机的名称 $1表示占位
     --cdrom /root/rhel7.3/x86_64/isos/rhel_server-7.3-x86_64-dvd.iso \ ##选择镜像路径
     -- memory 1024 \ ##填入内存大小为1024
     --vcups 1 \ ##一个cpu ##安装的虚拟机有一个cpu
     --disk /var/lib/libvirt/images/$1.qcow2,size=6,bus=virtio \  ##物理硬盘的相关信息  该指定目录下产生所建虚拟机硬盘信息  大小6G 总线虚拟化
     --network source=br0,model=virtio  &> /dev/null  &  ##网络服务来源 网络模式虚拟化  将错误输出定向到垃圾桶  在后台下载            

如图执行脚本创建一个名为b的虚拟机 该虚拟机只完成了一部分操作是不能使用的
在这里插入图片描述

虚拟机快照生成(创建虚拟机的快照 该虚拟机是完全安装好的)

(1)基本方式生成快照

cd  /var/lib/libvirt/images
ls     
qemu-img create  -f  qcow2  -b /var/lib/libvirt/images/westos.qcow2   /var/lib/libvirt/images/su.qcow2
##该命令可以为虚拟机westos创建 名为su的快照硬件信息文件 前提是要有该虚拟机的硬件信息文件

图形方式创建快照 点击“电视”图标 选择导入快照硬盘信息文件创建快照
在这里插入图片描述
选择快照信息路径

在这里插入图片描述
在这里插入图片描述
选择创建的快照内存大小
在这里插入图片描述
设定快照名称为su 选择自定义快照硬件信息

在这里插入图片描述
开始选择硬件信息 和之前虚拟机创建的选择一样
在这里插入图片描述

在这里插入图片描述
如图创建成功

在这里插入图片描述

qemu-img create -f qcow2 -b /var/lib/libvirt/images/westos.qcow2 /var/lib/libvirt/images/su.qcow2 被复制的硬盘路径 得到硬盘路径

(2)使用脚本生成快照
cd /mnt ##在任意路径下建立生成快照的脚本文件
vim vm_create_shotsnop ##编辑脚本文件
qemu-img create
-f qcow2
-b /var/lib/libvirt/images/$1.qcow2 /var/lib/libvirt/images/$2.qcow2 &> /dev/null ##$1虚拟机名称 $2快照名称

virt-install \
--name $1\
  --cdrom /root/rhel7.3/x86_64/isos/rhel_server-7.3-x86_64-dvd.iso \ ##通过镜像路径安装系统
--memory 1024 \
--vcpus 1 \
--disk /var/lib/libvirt/images/$1.qcow2,bus=virtio \
--network source=br0,model=virtio \
--import  &> /dev/null  &  ##导入快照路径

用脚本为名为westos的虚拟机创建名为node1的快照
在这里插入图片描述
在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐