Centos 7升級內核


 

最近在學習 Docker,想在服務器上實踐一下.Docker 需要安裝在 CentOS 7 64 位的平台,並且內核版本不低於 3.10。 CentOS 7 滿足最低內核的要求,但由於 CentOS 7 內核版本比較低,部分功能(如 overlay2 存儲層驅動)無法使用,並且部分功能可能不太穩定.需要升級到最新的 CentOS 版本,並且內核也更新到最新的穩定版本.這是我對升級 CentOS 系統版本及內核的記錄,方便以后查閱,也分享給大家.

注意:這篇文章只在 CentOS 7.× 系列版本上驗證過,其他 CentOS 版本請謹慎使用.

檢查當前 CentOS 系統版本

# cat /etc/redhat-release

> CentOS Linux release 7.0.1503 (Core)

檢查當前 CentOS 系統內核版本

# uname -sr

> Linux 3.10.0-327.10.1.e17.x86_64

可以看出當前系統為 CentOS 7.4,系統內核版本為 3.10.

運行 yum 命令升級

CentOS 中 update 命令可以一次性更新所有軟件到最新版本。

# yum clean all

# yum update

期間會有確認提示,直接回車確認即可.

重啟系統

# reboot

檢查當前 CentOS 系統版本

# cat /etc/redhat-release

> CentOS Linux release 7.4.1611 (Core)

檢查當前 CentOS 系統內核版本

# uname -sr

> Linux 3.10.0-327.10.1.e17.x86_64

可以看到當前系統為 CentOS 7.3 已經升級成功了,但系統內核版本依舊為 3.10 並沒有升級,這是因為 CentOS 為了安全和穩定並不會把系統內核升級到最新的版本,所以 yum update 命令只會升級系統版本和更新軟件.接下來我們就來升級系統內核.

升級 CentOS 7.× 內核,啟用 ELRepo

要在 CentOS 7.× 上啟用 ELRepo 倉庫,請運行:

# 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 --disablerepo="*" --enablerepo="elrepo-kernel" list available

The difference is that kernel-lt is based on a "long term support" branch and kernel-ml is based on the "mainline stable" branch

接下來,安裝最新的lt內核: (ml 版安裝后有問題)

# yum --enablerepo=elrepo-kernel install kernel-lt

由於網絡原因,以上操作可能需要不少時間.

重啟機器,檢查當前 CentOS 系統內核版本

# uname -sr

> Linux 4.4.0-1.el7.elrepo.x86_64

可以看到系統內核已經升級到最新的主線穩定內核.

設置 GRUB 默認的內核版本

為了讓新安裝的內核成為默認啟動選項

# grub2-set-default 0

查看設置

# grub2-editenv list

重啟機器,查看系統當前內核版本,驗證最新的內核已作為默認內核

# uname -rs

>Linux 4.4.7-1.el7.elrepo.x86_64

刪除 CentOS 更新后的舊內核

查看系統中全部的內核 RPM 包:

# rpm -qa | grep kernel

> kernel-tools-3.10.0-514.26.2.el7.x86_64
> kernel-devel-3.10.0-514.10.2.el7.x86_64
> kernel-3.10.0-514.26.2.el7.x86_64
> kernel-3.10.0-327.el7.x86_64
> kernel-lt-4.4.0-1.el7.elrepo.x86_64
> kernel-headers-3.10.0-514.26.2.el7.x86_64
> kernel-devel-3.10.0-514.26.2.el7.x86_64
> kernel-tools-libs-3.10.0-514.26.2.el7.x86_64

刪除舊內核的 RPM 包

yum remove kernel-tools-3.10.0-514.26.2.el7.x86_64 kernel-devel-3.10.0-514.10.2.el7.x86_64 kernel-3.10.0-514.26.2.el7.x86_64 kernel-3.10.0-327.el7.x86_64 kernel-headers-3.10.0-514.26.2.el7.x86_64 kernel-devel-3.10.0-514.26.2.el7.x86_64 kernel-tools-libs-3.10.0-514.26.2.el7.x86_64

重啟系統

# reboot

ref http://www.jianshu.com/p/fdf6bb6c5b9c
http://elrepo.org/tiki/tiki-index.php


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM