linux中用脚本实现虚拟机的安装,重置,快照,开始,结束,删除等操作
1.使用kickstart工具生成对应的安装文件hello.cfg,
要修改对应配置文件,使其在网页上检测出如下结果即为成功
2.在目录/bin下建立文件test.sh,并加上可执行权限,可以生成为系统命令
3.test.sh文件内容,编辑脚本文件如下图:
1 #!/bin/bash
2 case "$1" in
3 start)
4 virsh start $2 &> /dev/null ##开启虚拟机
5 echo "开机成功"
6 virt-viewer $2 &> /dev/null ##显示虚拟机
7 ;;
8 stop)
9 virsh destroy $2 &> /dev/null ##强行结束虚拟机
10 echo "关机成功"
11 ;;
12 install) ##安装虚拟机并指定各项参数
13 virt-install \
14 --name $2 \
15 --ram 1024 \
16 --file /var/lib/libvirt/images/$2.qcow2 \
17 --file-size 8 \
18 --location http://172.25.254.91/rhel7.1 \
19 --extra-args "ks=http://172.25.254.91/hello.cfg" &> /dev/null &
20 echo "安装成功"
21 ;;
22 reset)
23 virsh destroy $2 &> /dev/null ##强行结束损坏的虚拟机
24 virsh undefine $2 &> /dev/null
25 rm -fr /var/lib/libvirt/images/$2.qcow2 ##删除损坏的存储
26 qemu-img create -f qcow2 -b /var/lib/libvirt/images/$3.qcow2 /var/lib/libvirt/images/$2.qcow2 &> /dev/null ##给参数3虚拟快照> 为参数2(重新快照,并将快照命名为原来的名字)
27 virt-install \
28 --name $2 \
29 --ram 1024 \
30 --disk /var/lib/libvirt/images/$2.qcow2 \
31 --import &> /dev/null & ##快照导入
32
33 virsh start $2 &> /dev/null ##重新启动虚拟机
34 echo "重置成功"
35 ;;
36 mksnopshot)
37 virsh destroy $2 &> /dev/null
38 virsh undefine $2 &> /dev/null
39 qemu-img create -f qcow2 -b /var/lib/libvirt/images/$2.qcow2 /var/lib/libvirt/images/$3.qcow2 &> /dev/null
40 virt-install \
41 --name $3 \
42 --ram 1024 \
43 --disk /var/lib/libvirt/images/$3.qcow2 \
44 --import &> /dev/null &
45 virsh start $3 &> /dev/null
46 echo "快照成功"
47 ;;
48 remove)
49 virsh destroy $2 &> /dev/null
50 virsh undefine $2 &> /dev/null
51 rm -fr /var/lib/libvirt/images/$2.qcow2
52 echo "删除成功"
53 ;;
54 *)
55 echo "ERROR:please input start|stop|install|reset|mksnopshot|remove after command"
56 ;;
57 esac
4.检测结果如图: