近日有朋友在Vultr 上买了VPS ,让我给他升级最新版本的内核以便开启Google的TCP BBR 拥塞控制算法。升级最新版内核也仅仅是为了尝鲜,所以再次提醒各位由于是使用最新版系统内核,最好勿在生产环境安装,以免产生难以预料的后果。
开始
新的VPS自然是先升级系统版本,然后再升级最新版内核。
如果先升级内核再升级系统版本,那么新内核会被系统的旧内核覆盖掉,所以就点忘各位注意下。
第一步
查看当前系统版本和内核版本
远程登录你的VPS,然后的输入命令查看查看系统版本:
1 |
cat /etc/redhat-release |
然后再输入命令内核版本:
1 |
uname -r |
第二步
升级当前系统
输入命令:
1 |
yum -y update |
当提示Complete!时代表当前系统已经升级完毕。
窗口会如下图显示:

升级完成之后,输入命令重启VPS。
第三步
升级内核并开启TCP BBR 拥塞控制算法
运行下面命令:
1 |
wget https://github.com/teddysun/across/raw/master/bbr.sh |
若出现报错,则wget后需要加上 –no-check-certificate 选项
1 |
wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh |
出现下图则表示脚本下载成功。

执行下面命令赋予bbr.sh的执行的权限
1 |
chmod +x bbr.sh |
然后执行脚本
1 |
./bbr.sh |
出现下图表明内核正在在更新中:

出现下图表明内核已经更新完毕并确认是否需重启,输入Y并回车后重启VPS。

重启完成后,进入 VPS,验证一下是否成功安装最新内核并开启 TCP BBR,输入以下命令:
查看内核版本:
1 |
uname -r |
如下图所示:

内核版本为:4.10.2,说明内核更新成功!
再次输入命令:
1 |
sysctl net.ipv4.tcp_available_congestion_control |
如下图所示,注意查看返回值,当最后一条命令输入完毕之后,返回值有 tcp_bbr 模块即说明bbr已启动。

后续升级内核
直接输入以下命令升级内核:
1 |
yum --enablerepo=elrepo-kernel -y install kernel-ml kernel-ml-devel |
如下图所示,系统先会和远程服务器上的内核版本先进行比较,如果有新版本则进行下载升级,如果没有新版本内核则不进行任何操作:

暂无评论内容