每次修改网卡的时候无论是使用命令还是修改配置文件都很麻烦,所以写了一个shell脚本,其中借用了一些其他人的思路,优化了脚本内容,使用脚本配置去配置网络减少了很多的输入,时间效率会增加
原文地址:https://www.cnblogs.com/hxlinux/p/13630086.html
网卡配置文件路径:/etc/sysconfig/network-scripts/ifcfg-ens33
vim ipddeadd.sh
#!/bin/bash
read -p "请输入网卡名称:ifcfg-" nname
read -p "使用DHCP请输入1,使用STATIC请输入2 : " DHCP #由后面的if语句判断1和2的结果
read -p "请输入您要使用的IP地址: " IP
read -p "请输入您的网关: " GATEWAY
read -p "请输入您要使用的DNS地址: " DNS
read -p "请输入您的子网掩码: " NETMASK
npath="/etc/sysconfig/network-scripts/ifcfg-$nname" #定义网卡路径变量
function echo_network_file(){ #使用函数及函数名称
echo "TYPE=Ethernet" > $npath
echo "BOOTPROTO="$A"" >> $npath #由if语句判断结果定义A的内容
echo "DEFROUTE="no"" >> $npath
echo "PEERDNS="yes"" >> $npath
echo "PEERROUTES="yes"" >> $npath
echo "IPV4_FAILURE_FATAL="no"" >> $npath
echo "IPV6INIT="yes"" >> $npath
echo "IPV6_AUTOCONF="no"" >> $npath
echo "IPV6_DEFROUTE="no"" >> $npath
echo "IPV6_PEERDNS="no"" >> $npath
echo "IPV6_PEERROUTES="no"" >> $npath
echo "IPV6_FAILURE_FATAL="no"" >> $npath
echo "NAME="$nname"" >> $npath #由输入的网卡名称填写
echo "UUID=$(cat /sys/class/dmi/id/product_uuid)" >> $npath #提取uuid文件的内容填写
echo "DEVICE="$nname"" >> $npath #由输入的网卡名称填写
echo "ONBOOT="yes"" >> $npath
echo "IPADDR="$IP"" >> $npath #写入IP地址
echo "GATEWAY="$GATEWAY"" >> $npath #写入网关地址
echo "NETMASK="$NETMASK"" >> $npath #写入子网掩码
echo "DNS="$DNS"" >> $npath #写入DNS地址
}
if [ "$DHCP" = 1 ];then #if语句判断等于1则使用DHCP,其他则使用静态ip
A="dhcp"
else
A="static"
fi
echo_network_file #函数结尾
echo "nameserver "$DNS"" >>/etc/resolv.conf #把DNS数据写入域名解析配置
systemctl restart network #重启网卡
echo "设置成功"
chmod +x ipaddradd.sh
使用过程: