ky10 server获取网卡配置文件, 并修改为静态ip, shell脚本(3)

ONBOOT=“yes”
CONFIG_FILE=“/etc/sysconfig/network-scripts/ifcfg-$NIC”

检查配置文件是否存在

if [ ! -f “$CONFIG_FILE” ]; then
echo “配置文件 $CONFIG_FILE 不存在,请检查网卡名是否正确。”
exit 1
fi

更新或添加网络配置项

function update_or_add_config {
KEY=$1
VALUE=KaTeX parse error: Expected group after '^' at position 14: 2 grep -q "^̲KEY=" “ C O N F I G F I L E " ∣ ∣ e c h o " CONFIG_FILE" || echo " CONFIGFILE"∣∣echo"KEY= V A L U E " > > " VALUE" >> " VALUE">>"CONFIG_FILE”
sed -i “/^ K E Y = / s ∣ = . ∗ ∣ = KEY=/ s|=.*|= KEY=/s=.=VALUE|” “$CONFIG_FILE”
}

设置静态IP配置

update_or_add_config “BOOTPROTO” “static”
update_or_add_config “IPADDR” “ S T A T I C I P " u p d a t e o r a d d c o n f i g " N E T M A S K " " STATIC_IP" update_or_add_config "NETMASK" " STATICIP"updateoraddconfig"NETMASK""NETMASK”
update_or_add_config “GATEWAY” “ G A T E W A Y " u p d a t e o r a d d c o n f i g " D N S 1 " " GATEWAY" update_or_add_config "DNS1" " GATEWAY"updateoraddconfig"DNS1""DNS1”
update_or_add_config “ONBOOT” “$ONBOOT”

重新加载网络服务

systemctl restart network # 对于 CentOS 6 或早期版本
systemctl restart NetworkManager # 对于使用 NetworkManager 的系统
systemctl restart systemd-networkd # 对于使用 systemd-networkd 的系统

echo “静态IP配置已完成。”

(可选)验证网络配置是否生效

sleep 5
ip addr show dev $NIC
ping -c 1 $GATEWAY


此脚本首先检查配置文件是否存在,然后定义了一个函数 `update_or_add_config`,该函数用于检查和更新配置文件中的特定键值对。接着调用该函数依次设置 `BOOTPROTO`、`IPADDR`、`NETMASK`、`GATEWAY`、`DNS1` 和 `ONBOOT` 字段。最后,根据系统使用的网络管理服务重启网络服务以应用更改。


请注意,根据 CentOS 版本和网络管理服务的不同,可能需要调整重新加载网络服务的部分。同时,确保在运行脚本之前具有适当的权限,并考虑在生产环境中做好配置备份。






**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
  • 21
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值