新装机的centos7.*的系统网卡名字为enxxxxxx 想要改为以往的ethxxxx,操作
cd /etc/udev/rules.d/
创建 70-persistent-net.rules
对网卡进行名称绑定
echo "SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="$(ifconfig eth0|grep ether|awk '{print $2}')", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"" >/etc/udev/rules.d/70-persistent-net.rules
echo "SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="$(ifconfig eth1|grep ether|awk '{print $2}')", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"" >>/etc/udev/rules.d/70-persistent-net.rules
echo "SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="$(ifconfig eth2|grep ether|awk '{print $2}')", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"" >>/etc/udev/rules.d/70-persistent-net.rules
echo "SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="$(ifconfig eth3|grep ether|awk '{print $2}')", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3"" >>/etc/udev/rules.d/70-persistent-net.rules
相对应的进入/etc/sysconfig/network-scripts 对网卡配置文件编辑,将DEVICE该为绑定后的设备名称。
如果机器接入的是万兆网卡,那么建议对千兆网卡驱动进行禁用,操作如下
此处以intel 千兆网卡为例
echo "blacklist igb" >> /etc/modprobe.f
sed -i '/GRUB_CMDLINE_LINUX/{s/"$//g;s/$/rdblacklist=igb"/}' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg;
centos7的坑还是有很多,网卡并行启动 导致网卡启动在udev绑定之前,这样会导致机器网卡启动失败 建议网卡启动sleep五秒左右,具体操作如下
#!/bin/bash
#关闭network开机自启动
chkconfig network off
#添加sa-network服务延迟5秒重启network服务
echo '#!/bin/bash' >> /etc/init.d/sa-network
echo '#chkconfig:2345 90 05' >> /etc/init.d/sa-network
echo 'sleep 5' >> /etc/init.d/misa-network
echo 'service network restart' >> /etc/init.d/sa-network
chmod +x /etc/init.d/sa-network
chkconfig --add sa-network
chkconfig sa-network on
这样对centos7.0的网卡问题能解决的差不多。
如果使用万兆光模块环境进行pxe批量装机可以在初始化脚本中加入
# disable igb add houzhibo
udev_eth0_mac=`cat /etc/udev/rules.d/70-persistent-net.rules | grep -i eth0| awk -F '"' '{print $8}'`
ip_add_eth0_mac=`ip add | grep -A2 eth0 |grep -i 'ether' | awk '{print $2}'`
speed=`ethtool eth0 | grep -i 'Speed' |awk -F [:] '{print $2}'`
network_name=`ip add |grep -iB1 $udev_eth0_mac | grep -i eth|awk '{print $2}'| grep -i eth| awk -F : '{print $1}'`
if [ $udev_eth0_mac = $ip_add_eth0_mac ] && [ $speed = "10000Mb/s" ] ;then
echo "blacklist igb" >> /etc/modprobe.f
sed -i '/GRUB_CMDLINE_LINUX/{s/"$//g;s/$/rdblacklist=igb"/}' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg;
echo '默认万兆网卡,已禁用千兆igb驱动。'
elif [ $udev_eth0_mac != $ip_add_eth0_mac ] ;then
echo "blacklist igb" >> /etc/modprobe.f
sed -i '/GRUB_CMDLINE_LINUX/{s/"$//g;s/$/rdblacklist=igb"/}' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg
echo 'udev绑定网卡不匹配ip add网卡名称,已禁用千兆igb驱动,重启生效。'
elif [ $udev_eth0_mac = $ip_add_eth0_mac ] && [ $speed = "1000Mb/s" ] ;then
echo '默认千兆网卡,啥都不做。退出。'
fi
针对7.2和7.3测试通过 7.0有一些小问题,ps:7.0哪怕你做完udev绑定 它还是有几率识别为eth*~~~~~~,还有以上请针对自己的实际情况使用,不要死套用。
不过在此还是建议大家使用centos7.2 7.3版本 相对会稳定很多。7.0毕竟是个过渡版本。
感谢工作中麒麟大佬和新哥的指点。
本文发布于:2024-01-28 15:52:00,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17064283268532.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |