搜索
查看: 358|回复: 0

[****] 一键安装最新内核并开启 BBR 脚本

[复制链接]
  • TA的每日心情
    奋斗
    2017-6-9 15:29
  • 签到天数: 74 天

    [LV.6]常住居民II

    454

    主题

    1810

    帖子

    2万

    积分

    管理员

    Rank: 28Rank: 28Rank: 28Rank: 28Rank: 28Rank: 28Rank: 28

    积分
    20773
    发表于 2017-3-4 11:04 | 显示全部楼层 |阅读模式
    最近,Google 开源了其 TCP BBR 拥塞控制算法,并提交到了 Linux 内核,最新的 4.10 版内核已经用上了该算法。根据以往的传统,Google 总是先在自家的生产环境上线运用后,才会将代码开源,此次也不例外。
    根据实地测试,在部署了最新版内核并开启了 TCP BBR 的机器上,网速甚至可以提升好几个数量级。
    于是我根据目前三大发行版的最新内核,开发了一键安装最新内核并开启 TCP BBR 脚本。
    本脚本适用环境
    系统支持:CentOS 6+,Debian 7+,Ubuntu 12+
    虚拟技术:OpenVZ 以外的(KVM、Xen、VMware等)
    内存要求:≥128M
    日期  :2017 年 02 月 22 日
    关于本脚本
    1、本脚本已在 Vultr 上的 VPS 全部测试通过。
    2、当脚本检测到 VPS 的虚拟方式为 OpenVZ 时,会提示错误,并自动退出安装。
    3、某些服务商(如 DigitalOcean可能需要首先将 VPS 配置为可自定义内核,然后 grub2 的配置才会生效。
    4、脚本运行完重启发现开不了机的,打开 VPS 后台控制面板的 VNC, 开机卡在 grub 引导, 手动选择内核即可。
    5、由于是使用最新版系统内核,最好请勿在生产环境安装,以免产生不可预测之后果。
    使用方法
    使用root用户登录,运行以下命令:
    1. wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh
    2. chmod +x bbr.sh
    3. ./bbr.sh
    复制代码

    安装完成后,脚本会提示需要重启 VPS,输入 y 并回车后重启。
    重启完成后,进入 VPS,验证一下是否成功安装最新内核并开启 TCP BBR,输入以下命令:
    1. uname -r
    复制代码

    查看内核版本,含有 4.10 就表示 OK 了
    1. sysctl net.ipv4.tcp_available_congestion_control
    复制代码

    返回值一般为:
    net.ipv4.tcp_available_congestion_control = bbr cubic reno
    1. sysctl net.ipv4.tcp_congestion_control
    复制代码

    返回值一般为:
    net.ipv4.tcp_congestion_control = bbr
    1. sysctl net.core.default_qdisc
    复制代码

    返回值一般为:
    net.core.default_qdisc = fq
    1. lsmod | grep bbr
    复制代码

    返回值有 tcp_bbr 模块即说明bbr已启动。
    内核升级方法
    如果是 CentOS 系统,执行如下命令即可升级内核:
    1. yum --enablerepo=elrepo-kernel -y install kernel-ml kernel-ml-devel
    复制代码

    CentOS 6 的话,执行命令:
    1. sed -i 's/^default=.*/default=0/g' /boot/grub/grub.conf
    复制代码

    CentOS 7 的话,执行命令:
    1. grub2-set-default 0
    复制代码

    如果是 Debian/Ubuntu 系统,则需要手动下载最新版内核来安装升级。
    这里下载最新版的内核 deb 安装包。
    如果系统是 64 位,则下载 amd64 的 linux-image 中含有 generic 这个 deb 包;
    如果系统是 32 位,则下载 i386 的 linux-image 中含有 generic 这个 deb 包;
    安装的命令如下(以最新版的 64 位 4.9.3 举例而已,请替换为下载好的 deb 包):
    1. dpkg -i linux-image-4.9.3-040903-generic_4.9.3-040903.201701120631_amd64.deb
    复制代码

    安装完成后,再执行命令:
    1. /usr/sbin/update-grub
    复制代码

    最后,重启 VPS 即可。
    更新日志:
    2017 年 02 月 22 日:
    1、更新自动获取最新版 4.10 内核 。
    2017 年 01 月 20 日:
    1、新增自动获取并下载安装最新版内核的功能。
    2017 年 01 月 13 日:
    1、更新内核到 4.9.3。
    2017 年 01 月 09 日:
    1、更新内核到 4.9.1。
    参考链接:

    推荐DO注册:
    https://www.digitalocean.com/?refcode=de66f5a659fc
    优惠码SHIPITFAST。(免费获得10刀!)

    (目前本论坛就在这Digitalcean里,(*^__^*) 嘻嘻……!
    104302
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    手机版|Archiver|GoAgent论坛  

    GMT+8, 2017-9-25 19:40 , Processed in 0.083754 second(s), 26 queries .

    快速回复 返回顶部 返回列表