kvm一键部署脚本-亲测可用

部署环境:

系统:CentOS Linux release 7.9.2009 (Core){带图形化}

网络:外网通

注意事项:需开启cpu虚拟化支持,需提前看好自己网卡名称,如ens33

脚本如下:

#!/bin/bash
#function:install KVM
#author:tommypeng 20220707 final version
###############root用户判断#######################
if
  [  "$USER"  != "root"   ]
then
   echo "错误:非root用户,权限不足!"
  exit  0
fi
############防火墙与高级权限##########
systemctl stop firewalld && systemctl disable firewalld  && echo "防火墙已经关闭"
sed -i 's/SELINUX=.*/SELINUX=disabled/g'  /etc/selinux/config  && echo "关闭selinux"
##############脚本运行前置条件#################
echo  "主机CPU需要开启虚拟化引擎:Intel-VT-X 或者AMD-V"
sleep  5
read -p  "以上环境是否已经符合要求?请输入yes 或者 no  :"   guaiguai
case $guaiguai in
    yes)
    echo  "真是个乖孩子"
    ;;
    no)
    echo  "完犊子了,因为你的不听话,只能退出脚本运行了,你还是慢慢敲命令吧!"
    exit 0
    ;;
    *)
     echo "你好像不认识汉字也不认识英文,要不要我推荐你去厚街小学上学啊"
    exit 1
esac

###############网络检查#################
ping   -c  3  www.baidu.com
if
  [ $? = 0 ]
  then
    echo "外网通讯良好!"
  else
    echo  "丫的你在逗我吗?网都没有安装个毛线!"
   exit  1
fi
##############备份及更新源################
read -p  "是否更新镜像源到阿里云,请输入yes 或者 no  :"   wokaohaoshuai
case $wokaohaoshuai in
    yes)
    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
    ;;
    no)
    echo  "看来你的镜像源蛮快的"
    ;;
    *)
     echo "你好像不认识汉字也不认识英文,要不要我推荐你去厚街小学上学啊"
    exit 1
esac
yum makecache   &&  echo  "生成yum缓存"
###########KVM安装##############
modprobe kvm   &&  echo -e "kvm内核启用成功"
yum install -y qemu-kvm qemu-img virt-manager libvirt libvirt-python virt-manager libvirt-client virt-install virt-viewer 
if [ $? -eq 0 ]
then
  echo "kvm相关软件包安装成功"
else  
    echo "完犊子了,出现致命错误,即将退出"
    exit  1
fi
#############网络配置#############
read  -p  "请输入您的主机网卡名:"  ppo
onlyhostIP=$(ip a  | grep "inet "|grep "$ppo" | awk '{print $2}' | awk  -F '/' '{print $1}')
onlyhostMASk=$(ip a  | grep "inet "|grep "$ppo" | awk '{print $2}' | awk  -F '/' '{print $2}')
A=$(echo "$onlyhostIP"  | awk -F . '{print $1}')
B=$(echo "$onlyhostIP"  | awk -F . '{print $2}')
C=$(echo "$onlyhostIP"  | awk -F . '{print $3}')
SS1="$A.$B.$C.2"
echo "IPADDR=$onlyhostIP" >>/etc/sysconfig/network-scripts/ifcfg-$ppo
echo "PREFIX=$onlyhostMASK" >>/etc/sysconfig/network-scripts/ifcfg-$ppo
echo "GATEWAY=$SS1" >>/etc/sysconfig/network-scripts/ifcfg-$ppo
echo "DNS1=$SS1" >>/etc/sysconfig/network-scripts/ifcfg-$ppo
echo  "BOOTPROTO=static"  >>/etc/sysconfig/network-scripts/ifcfg-$ppo
sed -i 's/BOOTPROTO=.*/BOOTPROTO=static/g' /etc/sysconfig/network-scripts/ifcfg-$ppo
echo "BRIDGE=br0" >>/etc/sysconfig/network-scripts/ifcfg-$ppo
cat >> /etc/sysconfig/network-scripts/ifcfg-br0  << EOF
"#HWADDR=00:0C:29:F1:B0:E9
TYPE=Bridge
BOOTPROTO=none
#PROXY_METHOD=none
#BROWSER_ONLY=no
IPADDR=192.168.10.1
PREFIX=24
GATEWAY=192.168.10.254
#DNS1=192.168.145.1
PEERDNS=yes
DEFROUTE=yes
PEEROUTES=YES
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=br0
DEVICE=br0
#UUID=2d182d1c-56e1-323f-be1a-d4ae07b1f614
ONBOOT=yes
#AUTOCONNECT_PRIORITY=-999"  
EOF
#sed -i 's/BOOTPROTO=.*/BOOTPROTO=none/g' /etc/sysconfig/network-scripts/ifcfg-br0
ifdown  ens33  && ifup  ens33
systemctl start libvirtd  
systemctl enable libvirtd  
echo "完成咯,即将重启"
sleep 10
reboot
 



运行完脚本可进入图像化界面进入虚拟系统管理器添加管理虚拟机。

对脚本有任何意见请留言!!!!! 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT大白鼠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值