在 CentOS/RHEL 6,7 如何使 ethtool 设置在重新启动后保持不变

默认情况下,使用 ethtool 程序所做的任何更改都不会在重新启动或者网络模块(驱动程序)重新加载后持续存在。
按照下面给出的步骤添加更改,使其在启动时自动应用。
在为 ethtool 设置持久选项之前,请确保我们拥有最新版本的包“initscripts”。

# yum update initscripts

注意:当我们应用下面给出的步骤时,我们假设 NetworkManager 已关闭。

  1. 在 /etc/sysconfig/network-scripts/ 目录下的接口 ifcfg 文件中设置 ETHTOOL_OPTS 参数。
    网络服务脚本会在每次界面出现时运行 ethtool 程序。
    可以通过用分号分隔值来多次调用 ethtool:

例如,命令:

# ethtool -s eth0 speed 100 duplex full autoneg off

将 eth0 设备设置为 100Mbs,全双工,关闭自动协商。
要在每次启动 eth0 设备时设置初始化脚本,请在 /etc/sysconfig/network-scripts/ifcfg-eth0 中添加一行,如下所示:

# vi /etc/sysconfig/network-scripts/ifcfg-eth0
ETHTOOL_OPTS="speed 100 duplex full autoneg off"

下面是另一个示例,我们可以其中持久设置单个选项和多个选项。

## Setting a single option (running ethtool once)
ETHTOOL_OPTS="-G ${DEVICE} rx 4096"
## Setting multiple options (running ethtool multiple times)
ETHTOOL_OPTS="-G ${DEVICE} rx 4096; -G ${DEVICE} -A autoneg on"

这里 ${DEVICE} 是取自 ifcfg 配置文件的变量,因此我们无需提及实际设备。

日期:2020-09-17 00:13:42 来源:oir作者:oir