インストール/アップグレードの方法と提案
1. CentOS / RHELシステムの場合、yumまたはRPMパッケージを使用してカーネルをインストール/アップグレードしてみてください。RedHatのRed HatLinuxサービスにはサブスクリプションが必要であることに注意してください。
2.カーネルを直接アップグレードする代わりに、新しいカーネルをインストールします。新しいカーネルをインストールしても、古いカーネルは上書きされません。アップグレードすると、新しいカーネルが古いカーネルに直接置き換わり、システムの起動に失敗する可能性があります。インストールにより、アップグレード後にロールバックすることもできます。■選択。
3.通常、ほとんどのLinuxディストリビューションでは、yum / dnfと公式ディストリビューションリポジトリを使用してカーネルをアップグレードします。この方法は、Linuxカーネルではなく、ディストリビューションのリポジトリによって提供される最新バージョンにのみアップグレードできます。組織によってリリースされた最新のカーネル。
4.最新のカーネルを迅速かつ安全に使用したい場合、CentOS / RHELシステムはyumが直接インストールまたはアップグレードすることをサポートしていません。次に、ELRepo(サードパーティのリポジトリ)を使用して、カーネルをインストールおよびアップグレードできます。
5.新しいカーネルのソースコードパッケージをダウンロードしてコンパイルおよびインストールします。この方法は、カーネルの基礎知識をより詳細に学習するのに役立ちますが、実稼働環境でのコンパイルとインストールはお勧めしません。
6.最新のLinuxディストリビューションを使用してみてください。新しいLiunxディストリビューションには、ディストリビューションによって維持されている新しいカーネルが含まれています。必要に応じて、yumupgradeまたはyumupdateを使用してシステムを更新してください。Ubuntu、Debian、およびその他のディストリビューションの場合、apt-getupdateを使用して更新します。
新しいカーネルをインストール/アップグレードする目的
- 以前のバージョンで見つかった脆弱性の回避など、セキュリティに関する考慮事項の多く
- カーネルをより完全に理解し、カーネルのさまざまなカーネルモジュールと機能を理解する
- 新しい
カーネルの新しい機能と機能のより良い使用/経験Linuxカーネルバージョンは、メインラインバージョン、安定バージョン、および長期バージョンに分けられます。すべてのカーネルバージョンは、公式のカーネル開発Webサイトhttps://www.kernel.orgで入手できます。
各バージョンの公式カーネルダウンロード
163ミラーステーションカーネルのダウンロード
CentOSにカーネルをインストール/アップグレードする
Linuxカーネルをアップグレードするには、通常2つの方法があります。
1.新しいバージョンのカーネルをサーバーにダウンロードし、コンパイルしてインストールしてから、古いカーネルを削除します。利点:コンパイル項目を完全に制御できます。短所:遅くて失敗しやすい;
2. yumメソッドを使用してインストールします。長所は次のとおりです。高速で便利、高い成功率。
[root@localhost ~]# cat /etc/redhat-release //查看系统版本
CentOS release 6.8 (Final)
[root@localhost ~]# cat /proc/version
Linux version 2.6.32-642.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC) ) #1 SMP Tue May 10 17:27:01 UTC 2016
[root@localhost ~]# uname -r //查看内核版本
2.6.32-642.el6.x86_64
[root@localhost ~]# yum list kernel --showduplicates //查看yum可升级的内核版本
...
已安装的软件包
kernel.x86_64 2.6.32-642.el6 @anaconda-CentOS-201605220104.x86_64/6.8
可安装的软件包
kernel.x86_64 2.6.32-754.el6 base
kernel.x86_64 2.6.32-754.2.1.el6 updates
kernel.x86_64 2.6.32-754.3.5.el6 updates
kernel.x86_64 2.6.32-754.6.3.el6 updates
kernel.x86_64 2.6.32-754.9.1.el6 updates
kernel.x86_64 2.6.32-754.10.1.el6 updates
kernel.x86_64 2.6.32-754.11.1.el6 updates
kernel.x86_64 2.6.32-754.12.1.el6 updates
kernel.x86_64 2.6.32-754.14.2.el6 updates
kernel.x86_64 2.6.32-754.15.3.el6 updates
kernel.x86_64 2.6.32-754.17.1.el6 updates
kernel.x86_64 2.6.32-754.18.2.el6 updates
kernel.x86_64 2.6.32-754.22.1.el6 updates
kernel.x86_64 2.6.32-754.23.1.el6 updates
kernel.x86_64 2.6.32-754.24.2.el6 updates
kernel.x86_64 2.6.32-754.24.3.el6 updates
kernel.x86_64 2.6.32-754.25.1.el6 updates
kernel.x86_64 2.6.32-754.27.1.el6 updates
kernel.x86_64 2.6.32-754.28.1.el6 updates
kernel.x86_64 2.6.32-754.29.1.el6 updates
kernel.x86_64 2.6.32-754.29.2.el6 updates
[root@localhost ~]# yum update kernel-2.6.32-754.el6.x86_64 //直接执行update升级内核
...
===============================================================================================================================
软件包 架构 版本 仓库 大小
===============================================================================================================================
正在安装:
kernel x86_64 2.6.32-754.el6 base 32 M
为依赖而更新:
kernel-firmware noarch 2.6.32-754.29.2.el6 updates 29 M
...
已安装:
kernel.x86_64 0:2.6.32-754.el6
作为依赖被升级:
kernel-firmware.noarch 0:2.6.32-754.29.2.el6
完毕!
[root@localhost ~]# reboot //重启系统
[root@localhost ~]# cat /proc/version
Linux version 2.6.32-754.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC) ) #1 SMP Tue Jun 19 21:26:04 UTC 2018
[root@localhost ~]# uname -r
2.6.32-754.el6.x86_64
CentOSでカーネルをダウングレードする
[root@localhost ~]# ls *.rpm //内核版本2.6.32-358rpm包
kernel-2.6.32-358.el6.x86_64.rpm kernel-firmware-2.6.32-358.el6.noarch.rpm
[root@vos vos3000]# uname -r //查看降级之前的系统内核版本
2.6.32-642.el6.x86_64
[root@localhost ~]# yum -y remove kernel kernel-firmware
...
删除:
kernel-firmware.noarch 0:2.6.32-642.el6
完毕!
[root@vos vos3000]# yum -y install kernel-2.6.32-358.el6.x86_64.rpm kernel-firmware-2.6.32-358.el6.noarch.rpm
...
已安装:
kernel.x86_64 0:2.6.32-358.el6 kernel-firmware.noarch 0:2.6.32-358.el6
完毕!
[root@localhost ~]# reboot //重启系统
[root@vos ~]# uname -r //查看降级后内核版本
2.6.32-358.el6.x86_64
[root@vos ~]# cat /proc/version
Linux version 2.6.32-358.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Fri Feb 22 00:31:26 UTC 2013
カーネルの更新を禁止する:
[root@spgpu ~]# vim /etc/yum.conf
在[main]部分加上:
exclude=kernel* centos-release
このように、yumの更新中にカーネルは更新されません。
https://mp.weixin.qq.com/s/19fNmg77H3_g1kWsllbOcw