自动创建KVM虚拟机脚本(链接克隆)

作者: oldboy 分类: Openstack,Shell 发布时间: 2022-07-26 16:25
#!/bin/bash
[ $# -ne 1 ]&&echo "USAGE:$0 虚拟机名"&&exit
cd /var/lib/libvirt/images/
if [ -e $1.qcow2 ];then
  echo "$1.qcow2 file exist!"
  exit
else
  qemu-img create -f qcow2 -b c7.9.qcow2 $1.qcow2 &> /dev/null
  if [ $? -ne 0 ];then
    echo "创建磁盘镜像文件失败"
    exit
  else
    echo "创建磁盘镜像文件成功"
  fi
fi
cd /etc/libvirt/qemu/
if [ -e $1.xml ];then
  echo "$1.xml file exist!"
  exit
else
  sed "s#c7.9#$1#g" c7.9.xml >$1.xml
  if [ $? -ne 0 ];then
    echo "创建配置文件失败"
    exit
  else
    echo "创建配置文件成功"
    sed -i '/uuid/d' $1.xml
    if [ $? -ne 0 ];then
      echo "删除uuid失败"
      exit
    else
      echo "删除uuid成功"
    fi
    sed -i '/<mac/d' $1.xml
    if [ $? -ne 0 ];then
      echo "删除mac失败"
      exit
    else
      echo "删除mac成功"
    fi
  fi
fi
virsh define $1.xml &> /dev/null
if [ $? -ne 0 ];then
  echo "创建$1虚拟机失败"
  exit
else
  echo "创建$1虚拟机成功"
fi
virsh start $1 &> /dev/null
if [ $? -ne 0 ];then
  echo "$1虚拟机开机失败"
  exit
else
  echo "$1虚拟机开机成功"
fi
echo "$1对应vnc端口$(virsh vncdisplay $1)"

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

一条评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

标签云