自动生成Linux网卡配置
时间:2015-12-03 18:49 来源:www.it.net.cn 作者:IT
因为Linux虚拟机在复制时候网卡信息会更新,所以导致需要重新配置网卡。
本脚本功能,第一次添加网卡后,启动虚拟机,然后运行脚本(可以写在启动脚步中),然后根据ifconfig -a 的信息来创建ifcfg-ethX的配置文件或者修改对应的ifcfg-ethX的mac。
补充:这是对于第一次添加的网卡有效,如果需要重复添加和删除后自动配置,需要更改脚本,改为根据ip a命令的信息来修改。以后需要再改,暂时没有需求。 <无>
#!/bin/bash
#update:2013-02-25
#author:ihuotui
#version 0.1
cdate=$(date '+%Y%m%d')
num=$(ifconfig -a | grep eth | wc -l)
echo "ethX=" $num >> ethX
for ((n=1;n<${num};n++))
do
if [ -e /etc/sysconfig/network-scripts/ifcfg-eth${n} ] ; then
sed -i '/HWADDR/d' /etc/sysconfig/network-scripts/ifcfg-eth${n}
ifconfig -a | grep "eth${n}" | awk '{print "HWADDR=\""$5"\""}' >> /etc/sysconfig/network-scripts/ifcfg-eth${n}
else
touch /etc/sysconfig/network-scripts/ifcfg-eth${n}
ifconfig -a | grep "eth${n}" | awk '{print "HWADDR=\""$5"\""}' >> /etc/sysconfig/network-scripts/ifcfg-eth${n}
echo NM_CONTROLLED="\"yes\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n}
echo ONBOOT="\"yes\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n}
echo TYPE="\"Ethernet\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n}
echo BOOTPROTO="\"dhcp\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n}
echo UUID="\"2460e474-fad8-4b46-baba-da6f45ae158"${n}"\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n}
echo DEVICE="\"eth"${n}"\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n}
continue
fi
done
(责任编辑:IT)
因为Linux虚拟机在复制时候网卡信息会更新,所以导致需要重新配置网卡。 本脚本功能,第一次添加网卡后,启动虚拟机,然后运行脚本(可以写在启动脚步中),然后根据ifconfig -a 的信息来创建ifcfg-ethX的配置文件或者修改对应的ifcfg-ethX的mac。 补充:这是对于第一次添加的网卡有效,如果需要重复添加和删除后自动配置,需要更改脚本,改为根据ip a命令的信息来修改。以后需要再改,暂时没有需求。 <无> #!/bin/bash #update:2013-02-25 #author:ihuotui #version 0.1 cdate=$(date '+%Y%m%d') num=$(ifconfig -a | grep eth | wc -l) echo "ethX=" $num >> ethX for ((n=1;n<${num};n++)) do if [ -e /etc/sysconfig/network-scripts/ifcfg-eth${n} ] ; then sed -i '/HWADDR/d' /etc/sysconfig/network-scripts/ifcfg-eth${n} ifconfig -a | grep "eth${n}" | awk '{print "HWADDR=\""$5"\""}' >> /etc/sysconfig/network-scripts/ifcfg-eth${n} else touch /etc/sysconfig/network-scripts/ifcfg-eth${n} ifconfig -a | grep "eth${n}" | awk '{print "HWADDR=\""$5"\""}' >> /etc/sysconfig/network-scripts/ifcfg-eth${n} echo NM_CONTROLLED="\"yes\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n} echo ONBOOT="\"yes\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n} echo TYPE="\"Ethernet\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n} echo BOOTPROTO="\"dhcp\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n} echo UUID="\"2460e474-fad8-4b46-baba-da6f45ae158"${n}"\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n} echo DEVICE="\"eth"${n}"\"" >> /etc/sysconfig/network-scripts/ifcfg-eth${n} continue fi done (责任编辑:IT) |