首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
系统相关
> 详细
shell 脚本创建虚拟机 并配置网卡ip地址(两个脚本)
时间:
2018-03-27 21:59:34
阅读:
912
评论:
0
收藏:
0
[点我收藏+]
标签:
kvm
#######################脚本1:创建虚拟机kvm#########################
#!/bin/bash
qcow2_dir=/var/lib/libvirt/images
read -p "请输入虚拟机号码:" num #主机号
if [ $num -lt 9 ];then
num=0$num ##主机号
fi
if [ -z "$num" ];then
echo "错误输出"
exit 1
fi
kvm_name=host$num #主机名字
echo "正在创建镜像........"
qemu-img create -f qcow2 -b ${qcow2_dir}/rhel7.4.qcow2 ${qcow2_dir}/${kvm_name}.qcow2 &> /dev/null ###镜像文件
echo -e "\e[32;1m[ok]\e[0m"
cat /etc/libvirt/qemu/rhel7.4.xml > /etc/libvirt/qemu/${kvm_name}.xml ##描述文件
sed -i "/<name>rhel7.4/s/rhel7.4/${kvm_name}/" /etc/libvirt/qemu/${kvm_name}.xml
sed -i "/<uuid>/d" /etc/libvirt/qemu/${kvm_name}.xml
sed -i "/<source/s/rhel7.4.qcow2/${kvm_name}.qcow2/" /etc/libvirt/qemu/${kvm_name}.xml
sed -i "/<mac address=/d" /etc/libvirt/qemu/${kvm_name}.xml #删除mac地址,开机动自动生成
virsh define /etc/libvirt/qemu/${kvm_name}.xml &> /dev/null
echo "正在创建虚拟机......."
echo -e "\e[32;1m[ok]\e[0m"
####################脚本2:eth0网卡配ip地址#####################
#!/bin/bash
clear
mountpoint="/media/virimage"
#判断不存在挂载目录
[ ! -d $mountpoint ] && mkdir $mountpoint
#如果有设备挂载到该挂载点,则先umount卸载
if mount |grep -q "$mountpoint" ;then
umount $mountpoint
fi
virsh list --all
read -p "输入虚拟机名称: " name
echo "请稍后..."
#将虚拟机的磁盘文件挂载到/media/virtimage目录
guestmount -d $name -i $mountpoint
echo "---------------------------------------"
read -p "请输入要配置的ip地址: " ip
read -p "请输入要配置的子网掩码位数: " num
#静态地址
sed -i "s;(BOOTPROTO=).
;\1none;" ${mountpoint}/etc/sysconfig/network-scripts/ifcfg-eth0
#开机自起
sed -i "s;(ONBOOT=).
;\1yes;" ${mountpoint}/etc/sysconfig/network-scripts/ifcfg-eth0
#如果ip地址不存在,就添加ip地址
grep -q "IPADDR" ${mountpoint}/etc/sysconfig/network-scripts/ifcfg-eth0 || echo "IPADDR=$ip" >> ${mountpoint}/etc/sysconfig/network-scripts/ifcfg-eth0
#如果ip地址存在
sed -i "s;(IPADDR=).
;\1$ip;" ${mountpoint}/etc/sysconfig/network-scripts/ifcfg-eth0
#如果子网掩码不存在,就添加子网掩码
grep -q "PREFIX" ${mountpoint}/etc/sysconfig/network-scripts/ifcfg-eth0 || echo "PREFIX=$num" >> ${mountpoint}/etc/sysconfig/network-scripts/ifcfg-eth0
#如果子网掩码存在
sed -i "s;(PREFIX=).
;\1$num;" ${mountpoint}/etc/sysconfig/network-scripts/ifcfg-eth0
echo "ifup eth0" >> ${mountpoint}/etc/rc.d/rc.local
chmod +x ${mountpoint}/etc/rc.d/rc.local
umount ${mountpoint}
sleep 0.5
virsh start $name
shell 脚本创建虚拟机 并配置网卡ip地址(两个脚本)
标签:
kvm
原文地址:http://blog.51cto.com/13587169/2091787
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
gitlab 在linux安装环境下存储地址
2021-07-29
当 Mac 未检测到外部显示器时如何修复它
2021-07-29
Ubuntu18.04安装qemu遇到问题-qemu : Depends: qemu-system (>= 1:2.11+dfsg-1ubuntu7)
2021-07-28
[Linux]Shell编程【待续】
2021-07-28
Linux系统资源查看
2021-07-27
Archlinux爬坑指南
2021-07-27
[Linux]Linux发展历程
2021-07-27
非桌面系统 (ubuntu)安装google-chrome
2021-07-27
在Ubuntu18.04系统中源码安装 gcc7.3.0
2021-07-23
Linux快捷键杂记
2021-07-22
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!