编写shell脚本实现一键创建KVM虚拟机
shell脚本一键创建虚拟机
代码如下:
1 #!/bin/bash 2 path1=/var/lib/libvirt/images/ #img存放路径 3 path2=/etc/libvirt/qemu/ #xml文件存放路径 4 function createkvm { #将创建虚拟机的命令定义为createkvm函数 5 qemu-img create -f qcow2 -b ${path1}jrjs.img ${path1}${1}.img #根据后端模板jrjs.img文件创建一个新的镜像盘文件 6 sed -e "s/jrjs/${1}/" ${path1}jrjs.xml > ${path2}${1}.xml #修改后端原始jrjs.xml文件重定向到一个新的xml文件 7 virsh define ${path2}${1}.xml #定义xml文件 8 } 9 if [ $# == 0 ];then #判断用户是否输入参数 10 echo "该脚本运行需要参数,如$0 test1 test2" #如果没有输入参数则返回“ ”的值 11 elif [ -e ${path1}${1}.img ];then #判断用户输入参数是否存在 12 echo "该虚拟机名称已经存在!" #如果存在则返回“ ”的值 13 else 14 for i in $# #若输入参数则将所有的参数开始循环($*代表所以位置变量的值) 15 do 16 createkvm $i #调用定义好的创建虚拟机函数,开始根据参数循环创建 17 done 18 fi
上述代码运行结果:
1.当用户没有输入参数时:
2.当用户输入参数时:
3.当用户输入参数存在时: