centos – 如何通过重启来持久化ethtool设置

我想在CentOS5服务器上关闭tcp分段卸载.使用ethtool命令是ethtool -K eth0 tso off但是,此设置仅在此会话中保留.如何通过重新启动使其持续存在?
从这 webpage

您可以在/etc/rc.local(或您的发行版等效)中输入ethtool命令,其中命令在当前运行级别完成后运行,但这并不理想.网络服务可能在运行级别期间启动,而ethtool命令往往会中断网络流量.最好是将作为接口应用的命令引出.

CentOS中的网络服务有能力执行此操作.脚本/ etc / sysconfig / network-scripts / ifup-post检查是否存在/ sbin / ifup-local,如果存在,则使用接口名称作为参数运行它(例如:/ sbin / ifup-local eth0 )

我们可以使用touch / sbin / ifup-local创建这个文件,使其可执行,使用chmod x / sbin / ifup-local将其SELinux上下文设置为chcon –reference / sbin / ifup / sbin / ifup-local,然后在编辑.

将相同设置应用于所有接口的简单脚本就是这样的

#!/bin/bash
if [ -n "$1" ]; then
/sbin/ethtool -G $1 rx 4096 tx 4096
/sbin/ethtool -K $1 tso on gso on
fi

请记住,这将尝试将设置应用于所有接口,甚至是环回.

如果我们有不同的接口,我们想要应用不同的设置,或者想要跳过环回,我们可以做一个case语句

#!/bin/bash
case "$1" in
eth0)
/sbin/ethtool -G $1 rx 16384 tx 16384
/sbin/ethtool -K $1 gso on gro on
;;
eth1)
/sbin/ethtool -G $1 rx 64 tx 64
/sbin/ethtool -K $1 tso on gso on
/sbin/ip link set $1 txqueuelen 0
;;
esac
exit 0

现在,ethtool设置在接口启动时应用于接口,所有可能的网络通信中断都会在接口启动时完成,您的服务器可以继续使用完整的网络功能启动.

相关文章

Centos下搭建性能监控Spotlight
CentOS 6.3下Strongswan搭建IPSec VPN
在CentOS6.5上安装Skype与QQ
阿里云基于centos6.5主机VPN配置
CentOS 6.3下配置multipah
CentOS安装、配置APR和tomcat-native