700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > shell脚本编程《linux下kvm虚拟机的创建 开启 显示 停止 重置》

shell脚本编程《linux下kvm虚拟机的创建 开启 显示 停止 重置》

时间:2024-03-25 03:09:55

相关推荐

shell脚本编程《linux下kvm虚拟机的创建 开启 显示 停止 重置》

Shell脚本编程——案例一

编程要求:

1.创建vm-ctl脚本,在/bin/下

2.实现功能:创建虚拟机、创建虚拟机快照、开启虚拟机、显示虚拟机、停止虚拟机、重置虚拟机。

脚本实现预期结果:

sh vm-ctl create|nodecreate|start|view|stop|reset vmname

实现脚本如下:

#!/bin/bash

case "$1" in

create)##创建虚拟机

echo create vm $2 ...

virt-install \

--name $2 \

--ram 1000 \

--file /var/lib/libvirt/p_w_picpaths/$2.qcow2 \

--file-size 8 \

--cdrom /home/kiosk/Downloads/rhel-server-7.1-x86_64-dvd.iso &

echo Create vm $2 successful! Please create vmnode by nodecreate after this!!!##创建完虚拟机之后,请再创建虚拟机快照之后使用虚拟机快照来操作。

;;

nodecreate)##创建虚拟机快照

virsh destroy $2

virsh undefine $2

qemu-img create -f qcow2 -b /var/lib/libvirt/p_w_picpaths/$2.qcow2 /var/lib/libvirt/p_w_picpaths/

$2node.qcow2 &>/dev/null

virt-install \

--name $2 \

--ram 1000 \

--disk /var/lib/libvirt/p_w_picpaths/$2node.qcow2 \

--import &>/dev/null &

echo Create vm $2node successfull!!!

;;

start)##开启虚拟机

echo start vm $2 ...

virsh start $2 &>/dev/null

echo Start vm $2 successful!!!

;;

view)##显示虚拟机

echo view vm $2 ...

virt-viewer $2 &>/dev/null

echo View vm $2 successful!!!

;;

stop)##关闭/停止虚拟机

echo stop vm $2 ...

virsh destroy $2 &>/dev/null

echo vm $2 is stopped!!!

;;

reset)##重置虚拟机

echo reset vm $2 ...

virsh destroy $2 &>/dev/null

virsh undefine $2 &>/dev/null

rm -fr /var/lib/libvirt/p_w_picpaths/$2node.qcow2##删除原磁盘快照文件

qemu-img create -f qcow2 -b /var/lib/libvirt/p_w_picpaths/$2.qcow2 /var/lib/libvirt/p_w_picpaths/

$2node.qcow2 &>/dev/null ##重新创建快照

virt-install \##使用这个新快照创建虚拟机

--name $2 \

--ram 1000 \

--disk /var/lib/libvirt/p_w_picpaths/$2node.qcow2 \

--import &>/dev/null &

echo Reset vm $2 successfule!!!

;;

*)##其他,显示报错信息

echo"ERROR:please input create|nodecreate|start|view|stop|reset after vm-ctl"

esac

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。