下载更换内核
最新内核查看这里: http://elrepo.org/linux/kernel/el7/x86_64/RPMS/
运行以下代码:
- rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
- rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
- yum --enablerepo=elrepo-kernel install kernel-ml -y
查看内核是否安装成功
- rpm -qa | grep kernel
- kernel-tools-libs-3.10.0-693.21.1.el7.x86_64
- kernel-ml-4.17.2-1.el7.elrepo.x86_64
- kernel-3.10.0-693.el7.x86_64
- kernel-3.10.0-693.11.6.el7.x86_64
- kernel-tools-3.10.0-693.21.1.el7.x86_64
- kernel-headers-3.10.0-693.21.1.el7.x86_64
- kernel-3.10.0-693.21.1.el7.x86_64
- kernel-devel-3.10.0-693.21.1.el7.x86_64
删除旧内核(可选), 根据上面内容输入旧内核的前面几个字母, 用 tab 键补全
rpm -ev 旧内核
更新 grub 系统引导文件并重启, 下面的[default 2] 表示将第三个内核设置为默认运行, 选择最新内核就对了, 至于你的是哪个, 请运行下面的第一行代码后, 自己认真观察, 换成正确的数字, 请务必记得, 是从 0 开始算起. 执行以下代码:
- egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
- grub2-set-default 2
去你的 vps 管理面板重启你的机器.
注意, 某些服务商 (如 Digital Ocean) 可能需要首先将 VPS 配置为可自定义内核, 然后 grub2 的配置才会生效.
另外, 如果你是设置了默认内核后, 再删除旧内核, 请务必在开机前先重新设置一次默认内核, 因为, 位置变了, 不再是原来的 2 了.
开启 bbr
开机后 uname -r 查看内核
- [root@ss ~]# uname -r
- 4.17.2-1.el7.elrepo.x86_64
- [root@ss ~]# lsmod |grep bbr
- [root@ss ~]# modprobe tcp_bbr
- [root@ss ~]# echo "tcp_bbr">> /etc/modules-load.d/modules.conf
- [root@ss ~]# echo "net.core.default_qdisc=fq">> /etc/sysctl.conf
- [root@ss ~]# echo "net.ipv4.tcp_congestion_control=bbr">> /etc/sysctl.conf
- [root@ss ~]# sysctl -p
- net.ipv6.conf.all.accept_ra = 2
- net.ipv6.conf.eth0.accept_ra = 2
- sysctl: setting key "net.ipv4.icmp_echo_ignore_all": Invalid argument
- net.ipv4.icmp_echo_ignore_all = 0net.core.default_qdisc=fq
- net.ipv4.tcp_congestion_control = bbr
- [root@ss ~]# lsmod |grep bbr
- tcp_bbr 20480 1
观察 BBR 是否开启成功, 执行以下代码:
[root@ss ~]# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = reno cubic bbr
- [root@ss ~]# sysctl net.ipv4.tcp_congestion_control
- net.ipv4.tcp_congestion_control = bbr
如果结果都有 bbr, 则证明你的内核已开启 bbr
看到有 tcp_bbr 模块即说明 bbr 已启动
来源: http://www.bubuko.com/infodetail-2660093.html