加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

编写shell脚本实现一键创建KVM虚拟机

发布时间:2020-12-16 01:39:42 所属栏目:安全 来源:网络整理
导读:shell脚本一键创建虚拟机 代码如下: #!/bin/bash name=$1 #把位置变量$1重新定义为name(创建虚拟机的名字) path1=/var/lib/libvirt/images/ #img存放路径 path2=/etc/libvirt/qemu/ #xml文件存放路径 function createkvm { #将创建虚拟机的命令定义为crea

shell脚本一键创建虚拟机

代码如下:

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

  上述代码运行结果:

1.当用户没有输入参数时:

?

?2.当用户输入参数时:

3.当用户输入参数存在时:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读