centos7升級內核
阿新 • • 發佈:2018-07-17
gre test pre port lis rhgb 使用 swa cfg 由於業務需求,需要將線上服務器的Centos7系統的內核升級為4.4.14lt版本,除此之外考慮到內核漏洞問題,學習了如何更新linux內核
官方給出的使用yum 更新,但是這只會升級內核到倉庫中可以使用的最新版本,並不是將內核升級到內核發布的最新的版本,內核發布頁:https://www.kernel.org/
由於Red Hat只允許使用yum升級內核,這很糟糕
但是CentOs可以通過第三方來升級內核
參考升級內核第三方文檔:http://elrepo.org/tiki/tiki-index.php
官方給出的使用yum 更新,但是這只會升級內核到倉庫中可以使用的最新版本,並不是將內核升級到內核發布的最新的版本,內核發布頁:https://www.kernel.org/
由於Red Hat只允許使用yum升級內核,這很糟糕
但是CentOs可以通過第三方來升級內核
參考升級內核第三方文檔:http://elrepo.org/tiki/tiki-index.php
首先導入第三方的公共key rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org 安裝就近的鏡像 rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/elrepo/kernel/el7/x86_64/RPMS/elrepo-release-7.0-3.el7.elrepo.noarch.rpm 查看目前可以使用的longterm 版本(生產環境中一定要使用這種版本) [root@test ~]# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * elrepo-kernel: mirrors.tuna.tsinghua.edu.cn Available Packages kernel-lt-devel.x86_64 4.4.140-1.el7.elrepo elrepo-kernel kernel-lt-doc.noarch 4.4.140-1.el7.elrepo elrepo-kernel kernel-lt-headers.x86_64 4.4.140-1.el7.elrepo elrepo-kernel kernel-lt-tools.x86_64 4.4.140-1.el7.elrepo elrepo-kernel kernel-lt-tools-libs.x86_64 4.4.140-1.el7.elrepo elrepo-kernel kernel-lt-tools-libs-devel.x86_64 4.4.140-1.el7.elrepo elrepo-kernel kernel-ml.x86_64 4.17.6-1.el7.elrepo elrepo-kernel kernel-ml-devel.x86_64 4.17.6-1.el7.elrepo elrepo-kernel kernel-ml-doc.noarch 4.17.6-1.el7.elrepo elrepo-kernel kernel-ml-headers.x86_64 4.17.6-1.el7.elrepo elrepo-kernel kernel-ml-tools.x86_64 4.17.6-1.el7.elrepo elrepo-kernel kernel-ml-tools-libs.x86_64 4.17.6-1.el7.elrepo elrepo-kernel kernel-ml-tools-libs-devel.x86_64 4.17.6-1.el7.elrepo elrepo-kernel perf.x86_64 4.17.6-1.el7.elrepo elrepo-kernel python-perf.x86_64 4.17.6-1.el7.elrepo elrepo-kernel 我們使用4.4.140版本的 yum --enablerepo=elrepo-kernel install kernel-lt 同時修改默認加載內核的啟動順序,修改成如下: [root@test ~]# cat /etc/default/grub GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed ‘s, release .*$,,g‘ /etc/system-release)" GRUB_DEFAULT=0 GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap net.ifnames=0 rhgb quiet" GRUB_DISABLE_RECOVERY="true" 執行重建內核配置 grub2-mkconfig -o /boot/grub2/grub.cfg 重啟系統 我們再檢查是否更新 uname -a 刪除原來的內核及內核工具 [root@test ~]# rpm -qa | grep kernel* kernel-lt-4.4.140-1.el7.elrepo.x86_64 kernel-3.10.0-862.3.2.el7.x86_64 kernel-headers-3.10.0-862.3.3.el7.x86_64 kernel-tools-libs-3.10.0-862.3.2.el7.x86_64 kernel-tools-3.10.0-862.3.2.el7.x86_64 yum remove kernel-3.10.0-862.3.2.el7.x86_64 kernel-headers-3.10.0-862.3.3.el7.x86_64 kernel-tools-libs-3.10.0-862.3.2.el7.x86_64 kernel-tools-3.10.0-862.3.2.el7.x86_64 安裝最新的內核工具 yum --disablerepo=\* --enablerepo=elrepo-kernel install -y kernel-headers kernel-ml-tools.x86_64
至此更新完畢
還有一種更新內核的方法:編譯安裝內核,這種方法費事費力,如果沒必要,不要采用此種方法,很有可能導致系統不能使用。除非是你需要研究linux內核,這是個很好的途徑。
centos7升級內核