BBR 是 Google 提出的一种新型拥塞控制算法,可以使 Linux 服务器显著地提高吞吐量和减少 TCP 连接的延迟。
虚拟主机开启bbr加速,效果还是非常明显的。
本文记录CentOs7下手动开启bbr加速。
1、查看当前内核
2、导入ELRepo公钥
3、安装ELRepo
4、查看ELRepo提供的内核版本
5、安装kernel-ml内核,此步安装时间可能比较长,耐心等待并非卡住了
这一步结束后提示
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
Could not retrieve mirrorlist http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7 error was
12: Timeout on http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7: (28, 'Connection timed out after 30001 milliseconds')
* elrepo-kernel: mirror.rackspace.com
没有可用软件包 kernel-ml。
错误:无须任何处理
这个错误表示系统尝试从 mirrors.elrepo.org
获取 elrepo-kernel
镜像列表时超时,导致无法找到 kernel-ml
软件包。这可能是由于网络问题或镜像源本身的问题导致的。
需要手动安装
库文件:https://dl.lamp.sh/kernel/el7
手动下载和安装
wget https://dl.lamp.sh/kernel/el7/kernel-ml-5.5.4-1.el7.elrepo.x86_64.rpm
sudo rpm -ivh kernel-ml-*.rpm
你遇到的这个问题仍然是由于无法访问 elrepo
镜像源导致的。具体表现为从 mirrors.elrepo.org
获取镜像列表时出现超时错误。这通常是由于网络连接问题或镜像源临时不可用造成的。
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*.repo
sed -i s/mirror.centos.org/vault.centos.org/g /etc/yum.repos.d/*.repo
sed -i s/^#.*baseurl=http/baseurl=http/g /etc/yum.repos.d/*.repo
sed -i s/^mirrorlist=http/#mirrorlist=http/g /etc/yum.repos.d/*.repo
手动安装 elrepo
地址https://elrepo.org/linux/kernel/el7/x86_64/RPMS/elrepo-release-7.0-8.el7.elrepo.noarch.rpm
首先下载
wget http://elrepo.org/linux/kernel/el7/x86_64/RPMS/elrepo-release-7.0-8.el7.elrepo.noarch.rpm
然后安装内核
sudo rpm -ivh kernel-ml-*.rpm
安装完毕后使用下面的命令查看是否安装成功。
rpm -qa | grep kernel
显示:
kernel-3.10.0-1160.15.2.el7.x86_64
kernel-ml-5.5.4-1.el7.elrepo.x86_64
kernel-tools-libs-3.10.0-1160.15.2.el7.x86_64
kernel-tools-3.10.0-1160.15.2.el7.x86_64
等等
设置内核启动顺序默认顺序从1开始
kernel-ml-5.5.4为2
里面kernel-ml-5.5.4-1.el7.elrepo.x86_64就是安装的新版版本内核(你看到这篇教程的时候可能内核版本有变化,随机应变)
接下来需要设置系统启动顺序,使用下面的命令。
sudo egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
我的显示如下:
CentOS Linux (5.5.4-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-1160.15.2.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-96820b9851c24560b5f942f2496b9aeb) 7 (Core)
6、设置默认启动为新内核,然后更新 GRUB 并重启:
sudo grub2-set-default 0
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot
查看当前内核
7、启用BBR
错误排查:
已加载插件:fastestmirror, langpacks elrepo-release-7.el7.elrepo.noarch.rpm | 8.7 kB 00:00:00 正在检查 /var/tmp/yum-root-61Zo1l/elrepo-release-7.el7.elrepo.noarch.rpm: elrepo-release-7.0-6.el7.elrepo.noarch /var/tmp/yum-root-61Zo1l/elrepo-release-7.el7.elrepo.noarch.rpm:不更新已安装的软件包。 错误:无须任何处理 怎么解决这个问题
ChatGPT 说:
这个错误提示表明你尝试安装的 elrepo-release
软件包已经安装在系统中,因此无需再次安装。为了继续升级内核,你可以直接启用 elrepo-kernel
仓库并安装最新的内核,而无需重新安装 elrepo-release
。
你可以按照以下步骤继续:
1. 启用 elrepo-kernel
仓库
既然 elrepo-release
已经安装,那么 elrepo-kernel
仓库已经可用。你可以直接使用该仓库来安装最新的内核。
sudo yum --enablerepo=elrepo-kernel install kernel-ml -y
2. 更新 GRUB 配置
安装完新内核后,设置系统启动时默认选择新内核,并更新 GRUB 配置。
sudo grub2-set-default 0
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
3. 重启系统
安装完新内核后,重启系统以加载新内核。
4. 验证新内核
系统重启后,使用以下命令验证新内核是否成功加载:
如果显示的内核版本是 4.9 或更高版本,那么你就可以继续按照之前的步骤启用 BBR。
通过这些步骤,你应该能够成功安装新内核并启用 BBR。
您说:
已加载插件:fastestmirror, langpacks Error getting repository data for elrepo-kernel, repository not found 如何解决
ChatGPT 说:
这个错误表明系统未能找到 elrepo-kernel
仓库。以下是排查和解决这个问题的步骤:
1. 确认 elrepo-release
已正确安装
首先确认 elrepo-release
已正确安装。你可以通过以下命令查看是否安装了 elrepo-release
:
rpm -qa | grep elrepo-release
如果输出中显示 elrepo-release
,则说明已经安装。如果没有显示,则需要重新安装 elrepo-release
。
2. 重新安装 elrepo-release
如果 elrepo-release
没有正确安装,或者你希望确保它被正确配置,你可以尝试重新安装:
sudo yum remove elrepo-release -y
sudo yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm -y
3. 检查并启用 elrepo-kernel
仓库
安装 elrepo-release
后,再次尝试启用并安装最新的内核:
sudo yum --enablerepo=elrepo-kernel install kernel-ml -y
如果仍然遇到问题,请检查 elrepo
仓库配置文件是否存在,使用以下命令查看 /etc/yum.repos.d/
目录中的 elrepo.repo
文件:
ls /etc/yum.repos.d/elrepo.repo
如果文件存在,打开它并确保 [elrepo-kernel]
仓库部分未被注释并且已启用:
sudo vi /etc/yum.repos.d/elrepo.repo
确保 [elrepo-kernel]
部分如下:
[elrepo-kernel]
name=ELRepo.org Community Enterprise Linux Kernel Repository - el7
baseurl=http://elrepo.org/linux/kernel/el7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
如果 enabled=0
,将其改为 enabled=1
。
4. 清理 YUM 缓存并重试
如果仓库配置正确,但依然有问题,清理 YUM 缓存并重试:
sudo yum clean all
sudo yum --enablerepo=elrepo-kernel install kernel-ml -y
通过这些步骤,你应该能够解决 elrepo-kernel
仓库找不到的问题,并成功安装最新内核。
您说:
已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * elrepo: mirror.fcix.net * elrepo-kernel: mirror.fcix.net * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com elrepo | 3.0 kB 00:00:00 elrepo-kernel | 3.0 kB 00:00:00 没有可用软件包 kernel-ml。 错误:无须任何处理 怎么解决
ChatGPT 说:
这个错误表明 elrepo-kernel
仓库已经被正确识别,但在该仓库中找不到 kernel-ml
包。这个问题可能是由于以下几个原因导致的:
- 镜像同步延迟或镜像不完整:你选择的镜像服务器可能尚未同步到最新的包,或者该镜像有问题。
- 仓库配置错误:仓库可能配置不正确,导致无法找到相应的软件包。
解决方法
1. 切换到其他镜像源
你可以尝试手动指定另一个 elrepo
镜像源,以确保可以下载到最新的 kernel-ml
包。例如:
编辑 /etc/yum.repos.d/elrepo.repo
文件:
sudo vi /etc/yum.repos.d/elrepo.repo
找到 [elrepo-kernel]
部分,将 baseurl
更改为:
[elrepo-kernel]
name=ELRepo.org Community Enterprise Linux Kernel Repository - el7
baseurl=http://mirrors.coreix.net/elrepo/kernel/el7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
保存并退出,然后清理缓存并重新尝试安装:
sudo yum clean all
sudo yum --enablerepo=elrepo-kernel install kernel-ml -y
2. 检查仓库元数据
如果更换镜像源仍然无法解决问题,可以尝试手动更新仓库元数据并强制刷新包列表:
sudo yum clean all
sudo yum makecache --enablerepo=elrepo-kernel
sudo yum --enablerepo=elrepo-kernel list available
再尝试安装 kernel-ml
:
sudo yum --enablerepo=elrepo-kernel install kernel-ml -y
3. 手动下载并安装内核包
如果仍然无法通过 YUM 安装 kernel-ml
,你可以手动从 ELRepo 网站下载并安装最新的内核包。
- 访问 ELRepo kernel 下载页面。
- 找到最新版本的
kernel-ml
包,例如:
kernel-ml-<version>.el7.x86_64.rpm
kernel-ml-devel-<version>.el7.x86_64.rpm
- 下载这些包并使用
rpm
命令手动安装:
sudo rpm -ivh kernel-ml-*.rpm kernel-ml-devel-*.rpm
- 更新 GRUB 并重启系统:
sudo grub2-set-default 0
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot
通过这些步骤,你应该能够成功安装 kernel-ml
并启用新的内核。
您说:
ChatGPT 说:
你可以访问以下链接,直接浏览 ELRepo 提供的最新内核包:
ELRepo Kernel 下载页面
在这个页面上,你会找到最新的 kernel-ml
和 kernel-ml-devel
RPM 包。你可以选择适合你系统的内核版本进行下载和安装。下载后,使用 rpm
命令手动安装这些包。
您说:
ChatGPT 说:
你可以通过以下链接访问 ELRepo 的 Kernel 下载页面:
ELRepo Kernel 下载页面
这个链接将带你到 ELRepo 提供的所有 CentOS 7 兼容内核版本的下载页面,你可以选择适合你的 kernel-ml
包进行下载和安装。
您说:
ELRepo kernel 下载页面 链接 显示出来连接 不要加锚文本
ChatGPT 说:
您说:
已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * elrepo: mirror.fcix.net * elrepo-kernel: mirror.fcix.net * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com elrepo | 3.0 kB 00:00:00 elrepo-kernel | 3.0 kB 00:00:00 没有可用软件包 kernel-ml。 错误:无须任何处理
ChatGPT 说:
如果你仍然无法通过 YUM 安装 kernel-ml
,可以尝试以下几种方法来解决这个问题:
1. 手动下载并安装内核
你可以直接从 ELRepo 的官方网站手动下载 kernel-ml
包,然后使用 rpm
命令进行安装。以下是步骤:
- 访问 ELRepo Kernel 下载页面打开浏览器,访问以下链接:
http://elrepo.org/linux/kernel/el7/x86_64/RPMS/
- 下载内核包在页面上找到你想要的
kernel-ml
包及其相关的 kernel-ml-devel
包。通常你需要下载以下两个包:
kernel-ml-<version>.el7.x86_64.rpm
kernel-ml-devel-<version>.el7.x86_64.rpm
例如,假设最新版本是 kernel-ml-6.1.0
,你需要下载:
kernel-ml-6.1.0-1.el7.x86_64.rpm
kernel-ml-devel-6.1.0-1.el7.x86_64.rpm
- 使用
rpm
命令安装内核下载完成后,通过以下命令手动安装这些包:
sudo rpm -ivh kernel-ml-*.rpm kernel-ml-devel-*.rpm
- 更新 GRUB 并重启系统安装完成后,更新 GRUB 配置并重启系统以启用新内核:
sudo grub2-set-default 0
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot
2. 检查仓库配置
如果你更愿意通过 YUM 来安装内核,可以尝试以下操作:
- 清理缓存先清理 YUM 缓存,并重新生成缓存:
sudo yum clean all
sudo yum makecache
- 手动启用 ELRepo-Kernel 仓库并检查包强制启用
elrepo-kernel
仓库,并检查包是否可用:
sudo yum --enablerepo=elrepo-kernel list available | grep kernel-ml
如果以上方法都无法解决问题,那么手动下载并安装内核包通常是最直接的解决方案。
您说:
ChatGPT 说:
在远程 VPS 上下载文件并安装软件可以通过命令行工具来完成。以下是具体的步骤,假设你已经通过 SSH 登录到 VPS:
1. 使用 wget
或 curl
下载文件
你可以使用 wget
或 curl
命令来下载文件。这两个工具是常用的命令行下载器。
- 使用
wget
:
wget http://example.com/path/to/file
- 使用
curl
:
curl -O http://example.com/path/to/file
2. 安装下载的软件包
下载完成后,你可以使用相应的包管理器或安装工具来安装这个文件。以下是几种常见的安装方法:
安装 RPM 包
如果你下载的是 .rpm
包(适用于 CentOS/RHEL 系统),使用 rpm
命令安装:
或者使用 yum
安装:
sudo yum install file.rpm
安装 DEB 包
如果你下载的是 .deb
包(适用于 Debian/Ubuntu 系统),使用 dpkg
命令安装:
或者使用 apt
安装:
sudo apt install ./file.deb
安装脚本
如果你下载的是脚本文件,比如 .sh
文件,你可以先赋予它执行权限,然后运行它:
chmod +x script.sh
sudo ./script.sh
3. 示例:下载并安装内核包
以下载并安装一个内核包为例:
- 下载内核包:
wget http://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-ml-6.1.0-1.el7.x86_64.rpm
wget http://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-ml-devel-6.1.0-1.el7.x86_64.rpm
- 安装内核包:
sudo rpm -ivh kernel-ml-6.1.0-1.el7.x86_64.rpm kernel-ml-devel-6.1.0-1.el7.x86_64.rpm
- 更新 GRUB 并重启:
sudo grub2-set-default 0
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot
4. 自动化脚本
如果需要重复操作,或者你希望将下载和安装步骤自动化,可以编写一个简单的 Shell 脚本。例如:
#!/bin/bash
wget http://example.com/path/to/file
sudo rpm -ivh file.rpm
sudo grub2-set-default 0
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot
保存为 install_script.sh
,然后赋予执行权限并运行:
chmod +x install_script.sh
./install_script.sh
通过以上步骤,你可以轻松地在 VPS 上下载和安装文件。
您可以选择一种方式赞助本站
赏