udo*_*dan 25 configuration centos network-interface
我正在通过修改/etc/sysconfig/network-scripts
.
修改后的网络脚本内容如下:
# cat /etc/sysconfig/network-scripts/ifcfg-nic0
DEVICE=nic0
BOOTPROTO=static
ONBOOT=yes
HWADDR=xx:xx:xx:xx:xx:xx
USERCTL=no
IPV6INIT=no
MASTER=bond0
SLAVE=yes
Run Code Online (Sandbox Code Playgroud)
重新启动会激活新配置。但是如何在不重新启动的情况下激活此配置?
Asystemctl restart network
不起作用。
我可以按旧名称 ( ifdown eth0
)关闭一个接口,但ifup
无论提供旧名称还是新名称,都会导致以下消息:
错误:[/etc/sysconfig/network-scripts/ifup-eth] 设备 nic0 似乎不存在,延迟初始化。
/etc/init.d/network status
显示此输出:
Configured devices:
lo bond0 nic0 nic1
Currently active devices:
lo eth0 eth1 bond0
Run Code Online (Sandbox Code Playgroud)
两者,ifconfig
并ip a
显示旧的接口名称。
Jam*_*wey 40
您可以使用 ip 命令重命名设备:
/sbin/ip link set eth1 down
/sbin/ip link set eth1 name eth123
/sbin/ip link set eth123 up
Run Code Online (Sandbox Code Playgroud)
编辑:
为了完整性和后代(以及为了信息目的),我将保留以下内容,但我已经确认了swill 的评论和Marco Macuzzo 的回答,即简单地更改接口的名称和设备 /etc/sysconfig/network-scripts/ifcfg-只要 hwaddr= 字段包含在配置文件中, eth0(并重命名文件)将导致设备被正确命名。我建议在引用更新后使用此方法。
您可能还想确保配置了 udev 规则,以便下次重新启动时也能使用。udev 的路径在 CentOS 7 中移动到 /usr/lib/udev/rules.d/60-net.rules 但你仍然可以用同样的方式管理它。如果您将“net.ifnames=0 biosdevname=0”添加到您的内核引导字符串以返回到您的 nics 的旧命名方案,您可以删除
ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="1", PROGRAM="/lib/udev/rename_device", RESULT=="?*", NAME="$result"
Run Code Online (Sandbox Code Playgroud)
并将其替换为
ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{address}=="00:50:56:8e:3f:a7", NAME="eth123"
Run Code Online (Sandbox Code Playgroud)
每个网卡需要一个条目。确保使用正确的 MAC 地址并更新 NAME 字段。如果您没有使用“net.ifnames=0 biosdevname=0”,请小心,因为可能会出现意想不到的后果。
小智 13
实际上,我认为最好的答案是已经发布的两个答案的组合。为了在不重新启动网络服务的情况下更改设备名称,请使用ip link
James Shewey ( ip link set <old_device_name> name <new_device_name>
)建议的命令。
要使更改在 Red Hat Linux 中重新启动后仍然有效,请修改/etc/sysconfig/network-scripts/
. 将文件重命名ifcfg_<old_device_name>
为ifcfg_<new_device_name>
并将DEVICE
里面的变量更改为<new_device_name>
. 此外,请确保HWADDR
变量已设置且正确。不需要触及 udev 规则,因为60-net.rules
实际上在那里读取/etc/sysconfig/network-scripts
.
小智 6
ip link set ens33 down
ip link set ens33 name eth0
ip link set eth0 up
mv /etc/sysconfig/network-scripts/ifcfg-{ens33,eth0}
sed -ire "s/NAME=\"ens33\"/NAME=\"eth0\"/" /etc/sysconfig/network-scripts/ifcfg-eth0
sed -ire "s/DEVICE=\"ens33\"/NAME=\"eth0\"/" /etc/sysconfig/network-scripts/ifcfg-eth0
MAC=$(cat /sys/class/net/eth0/address)
echo -n 'HWADDR="'$MAC\" >> /etc/sysconfig/network-scripts/ifcfg-eth0
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
184606 次 |
最近记录: |