脚本为学习过程中所写,还有些功能不太完善,共同进步吧,有问题留言
#!/bin/bash
#
mean(){
cat <<EOF
请输入你的选择
1) 创建新的客户机
2) 开启客户机
3) 关闭客户机
4) 增加磁盘
5) 增加网卡
6) 编辑客户机
7) 查看客户机的情况
8) 删除客户机
9) 修改网络模式
q) 退出
=======================
EOF
}
guest_create(){
while true
do
read -p "请输入要创建的虚拟机的个数" num
if echo $num |grep [^0-9]
then
break
fi
read -p "请输入你要创建的虚拟机的名字" name
guest=`virsh list --all|grep "${name}"|awk '{print $2}'|grep "^${name}$" `
if [ -z "$guest" ]
then
for ((i=1;i<=num;i++))
do
qemu-img create -f qcow2 -b /kvm/images/centos7.img /kvm/images/${name}-${i}.img
cp /etc/libvirt/qemu/centos7-bak.xml /etc/libvirt/qemu/${name}-${i}.xml
source_name=`grep "/name" /etc/libvirt/qemu/${name}-${i}.xml | awk -F \> '{print $2}' | awk -F \< '{print $1}'`
sed -i "s#${source_name}#${name}-${i}#g" /etc/libvirt/qemu/${name}-${i}.xml
source_uuid=`grep uuid /etc/libvirt/qemu/${name}-${i}.xml | awk -F \> '{print $2}' | awk -F \< '{print $1}'`
uuid=`uuidgen`
sed -i "/$source_uuid/d" /etc/libvirt/qemu/${name}-${i}.xml
source_mac=`grep "mac address=" /etc/libvirt/qemu/${name}-${i}.xml | awk -F \' '{print $2}'`
limit_mac=`od /dev/urandom -w5 -tx1 -An|sed -e 's/ //' -e 's/ /:/g'|head -n 1`
sed -i "/$source_mac/d" /etc/libvirt/qemu/${name}-${i}.xml
virsh define /etc/libvirt/qemu/${name}-${i}.xml
done
return 0
else
echo "客户机${name}已经存在"
continue
fi
done
}
guest_start(){
start_menu="==================
1.开启一台虚拟机
2.开启一组虚拟机
3.开启所有的虚拟机
=================== "
read -p "$start_menu" key
if [ $key -eq 1 ]
then
read -p "输入虚拟机的名字" name
virsh start $name
e