1安装虚拟机##########
1:图形界面(电脑有些问题,后续上传)
2:命令安装
可以写在脚本里
~~~~~~~~~~
#!/bin/bash ##命令运行环境的指定
virt-install \ ##安装虚拟机
--name $1 \ ##虚拟机名称指定,$1表示脚本后的第一串字符
--ram 1000 \ ##内存
--file /var/lib/libvirt/images/$1.img \ ##硬盘文件
--file-size 8 \ ##硬盘文件大小
--cdrom /var/ftp/pub/iso/rhel-server-7.1-x86_64-dvd.iso & ##安装源指定
~~~~~~~~~~
2.管理命令####
virt-manager ##开启图形管理工具
virt-viewer vmname ##显示虚拟机,vmname表示虚拟机名称
virsh list ##列出正在运行的vm
virsh list --all ##列出所有vm
virsh start vmname ##运行指定vm
virsh shutdown vmname ##正常关闭指定vm
virsh destroy vmname ##强行结束指定vm
virsh create vmname.xml ##临时恢复指定vm,vmname表示前端管理文件
virsh define vmname.xml ##永久恢复vm
virsh undefine vmname ##删除vm的前端管理,不会删除存储
3.虚拟机快照##########
在linux中,虚拟机可以方便大家做实验,但是当虚拟机出问题时,重新装虚拟机费时费力气,所以引进了一个虚拟机快照的概念
假设虚拟机是垃圾桶,扔垃圾可以当作虚拟机中进行操作,当垃圾满后或者虚拟机出现问题后,我们直接扔掉垃圾桶和重新安装虚拟机都不是最好的解决方法,人们给垃圾桶套带,垃圾满了扔掉垃圾袋,我们给虚拟机作快照,在快照形成的虚拟机中作操作,当出现问题后,直接重新拍照
上面举例为了解释虚拟机快照这个概念,在虚拟机中,真实的虚拟机可以作母板,对他拍照,得到.qcow2的快照,用他形成的虚拟机,所有初始设置是母板的,但是操作和修改是在快照出的虚拟机上。
qemu-img create -f qcow2 -b /var/lib/libvirt/images/vm2.qcow2 /var/lib/libvirt/images/node1.qcow2 #新建新的拍照,母板是/var/lib/libvirt/images/vm2.qcow2 快照是/var/lib/libvirt/images/node1.qcow2
在快照后,我们需要将其倒入做成虚拟机,图形界面时在create界面选择import existing disk image倒入,其他和新建虚拟机一样
当然我们可以u把虚拟机快照过程写成脚本,方便执行
vim haha.sh
!/bin/bash virsh destroy $1 &> /dev/null ##强行结束指定vm即执行脚本后面跟的第一个 virsh undefine $1 &> /dev/null qemu-img create -f qcow2 -b /var/lib/libvirt/images/$1.qcow2 /var/lib/libvirt/images/$2.qcow2 &> /dev/null virt-install \ ##虚拟机快照 --name $2 \ ##新的虚拟机名字,即执行脚本后面跟的第二个 --ram 1000 --disk /var/lib/libvirt/images/$2.qcow2 \ --import &> /dev/null &
注:一定要写绝对路径 -f qcow2 表示格式 -b 后面跟母板 再后面为新建快照
执行: sh haha.sh 原先的虚拟机 新的虚拟机