CentOS 7內核升級

来源:https://www.cnblogs.com/surpassme/archive/2022/10/20/16812041.html
-Advertisement-
Play Games

1 獲取基本信息 1.1 查看系統版本 [root@surpass ~]# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) 1.2 查看系統內核版本 [root@surpass ~]# uname -r 3.10.0-1160 ...


1 獲取基本信息

1.1 查看系統版本

[root@surpass ~]# cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)

1.2 查看系統內核版本

[root@surpass ~]# uname -r
3.10.0-1160.el7.x86_64

2 升級內核

2.1 更新yum源倉庫

[root@surpass ~]# yum -y update

2.2 啟用 ELRepo 倉庫

    ELRepo 倉庫是基於社區的用於企業級 Linux 倉庫,提供對 RedHat Enterprise (RHEL) 和 其他基於 RHEL的 Linux 發行版(CentOS、Scientific、Fedora 等)的支持。其聚焦於和硬體相關的軟體包,包括文件系統驅動、顯卡驅動、網路驅動、音效卡驅動和攝像頭驅動等。操作步驟如下所示:

[root@surpass ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
[root@surpass ~]# yum install -y http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

2.3 查看可用的系統內核包

[root@surpass ~]# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
Loading mirror speeds from cached hostfile
 * elrepo-kernel: hkg.mirror.rackspace.com
elrepo-kernel                                                                       | 3.0 kB  00:00:00     
elrepo-kernel/primary_db                                                            | 2.0 MB  00:00:02     
Available Packages
elrepo-release.noarch                                7.0-5.el7.elrepo                         elrepo-kernel
kernel-lt.x86_64                                     5.4.163-1.el7.elrepo                     elrepo-kernel
kernel-lt-devel.x86_64                               5.4.163-1.el7.elrepo                     elrepo-kernel
kernel-lt-doc.noarch                                 5.4.163-1.el7.elrepo                     elrepo-kernel
kernel-lt-headers.x86_64                             5.4.163-1.el7.elrepo                     elrepo-kernel
kernel-lt-tools.x86_64                               5.4.163-1.el7.elrepo                     elrepo-kernel
kernel-lt-tools-libs.x86_64                          5.4.163-1.el7.elrepo                     elrepo-kernel
kernel-lt-tools-libs-devel.x86_64                    5.4.163-1.el7.elrepo                     elrepo-kernel
kernel-ml.x86_64                                     5.15.6-1.el7.elrepo                      elrepo-kernel
kernel-ml-devel.x86_64                               5.15.6-1.el7.elrepo                      elrepo-kernel
kernel-ml-doc.noarch                                 5.15.6-1.el7.elrepo                      elrepo-kernel
kernel-ml-headers.x86_64                             5.15.6-1.el7.elrepo                      elrepo-kernel
kernel-ml-tools.x86_64                               5.15.6-1.el7.elrepo                      elrepo-kernel
kernel-ml-tools-libs.x86_64                          5.15.6-1.el7.elrepo                      elrepo-kernel
kernel-ml-tools-libs-devel.x86_64                    5.15.6-1.el7.elrepo                      elrepo-kernel
perf.x86_64                                          5.15.6-1.el7.elrepo                      elrepo-kernel
python-perf.x86_64                                   5.15.6-1.el7.elrepo                      elrepo-kernel

2.4 安裝最新版本內核

[root@surpass ~]# yum --enablerepo=elrepo-kernel install -y  kernel-ml


--enablerepo選項開啟 CentOS 系統上的指定倉庫。預設開啟的是 elrepo,這裡用 elrepo-kernel 替換

2.5 設置 grub2

    內核安裝好後,需要設置為預設啟動選項並重啟後才會生效

2.5.1 查看系統上的所有可用內核

[root@surpass ~]# awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.15.6-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.49.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-5ef7dbbdd8c9491780c17c3f646464a0) 7 (Core)

2.5.2 設置新的內核為grub2的預設版本

    伺服器上存在4個內核,本次示例中使用5.15這個內核版本,可以通過以下方法來實現

  • 通過grub2-set-default 0 命令設置
grub2-set-default 0
  • 編輯/etc/default/grub 命令設置
[root@surpass ~]# cp /etc/default/grub /etc/default/grub.bak
[root@surpass ~]# vim /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=centos/root rd.lvm.lv=centos/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

2.5.3 生成 grub 配置文件並重啟

[root@surpass ~]# cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak
[root@surpass ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-5.15.6-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-5.15.6-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-1160.49.1.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-1160.49.1.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-1160.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-1160.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-5ef7dbbdd8c9491780c17c3f646464a0
Found initrd image: /boot/initramfs-0-rescue-5ef7dbbdd8c9491780c17c3f646464a0.img
done
[root@surpass ~]# reboot

2.5 驗證升級是否成功

[root@surpass ~]# uname -r
5.15.6-1.el7.elrepo.x86_64

如果顯示的內核版本為最新的版本,則代表升級成功

3 刪除舊內核

    在CentOS中,是允許存在多個內核版本,因些以下步驟為可選行為。

3.1 查看系統內核

[root@surpass ~]# rpm -qa | grep -i kernel
kernel-tools-3.10.0-1160.49.1.el7.x86_64
kernel-3.10.0-1160.el7.x86_64
kernel-ml-5.15.6-1.el7.elrepo.x86_64
kernel-3.10.0-1160.49.1.el7.x86_64
kernel-tools-libs-3.10.0-1160.49.1.el7.x86_64

3.2 刪除系統內核

yum remove -y kernel-3.10.0-1160.el7.x86_64 kernel-tools-3.10.0-1160.49.1.el7.x86_64 kernel-3.10.0-1160.49.1.el7.x86_64 kernel-tools-libs-3.10.0-1160.49.1.el7.x86_64

4、參考資料

原文地址:https://www.jianshu.com/p/39be2fb2864c

本文同步在微信訂閱號上發佈,如各位小伙伴們喜歡我的文章,也可以關註我的微信訂閱號:woaitest,或掃描下麵的二維碼添加關註:

作者: Surpassme

來源: http://www.jianshu.com/u/28161b7c9995/

         http://www.cnblogs.com/surpassme/

聲明:本文版權歸作者所有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出 原文鏈接 ,否則保留追究法律責任的權利。如有問題,可發送郵件 聯繫。讓我們尊重原創者版權,共同營造良好的IT朋友圈。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在進行滲透過程中,也可以藉助一些商用或者非商業平臺來進行信息搜索及驗證,主要針對郵箱、IP、功能變數名稱、文件md5、apk文件等進行搜索,整理和完善線索信息。為了大家方便, 對目前公開的威脅情報平臺進行搜集,在實際使用過程中建議交叉搜索,以獲得更多的信息。這些平臺都需要實名認證,認證後即可進行查詢。 一、 ...
  • 1 設計模式概述 ​ 軟體設計模式(Software Design Pattern),俗稱設計模式,設計模式是一套被反覆使用的、多數人知曉的、經過分類編目的、代碼設計經驗的總結。它描述了在軟體設計過程中的一些不斷重覆發生的問題,以及該問題的解決方案。也就是說,它是解決特定問題的一系列套路,是前輩們的 ...
  • 1、統一數據返回 使用逆向工程來進行測試,實體,mapper等省略; 1.1 直接使用 RequestResoult 1.1.1 RequestResoult 請求結果返回實體 //統一返回 實體 類 @Data public class RequestResult<T> { //狀態碼 priva ...
  • synchronized作為Java程式員最常用同步工具,很多人卻對它的用法和實現原理一知半解,以至於還有不少人認為synchronized是重量級鎖,性能較差,儘量少用。 但不可否認的是synchronized依然是併發首選工具,連volatile、CAS、ReentrantLock都無法動搖s... ...
  • WPF以其豐富靈活的控制項樣式設計,相較於WinForm而言,一直是工控組態軟體的寵兒。經過上一篇文章的學習,已經對WPF開發工控組態軟體有了一個基本的瞭解, 今天繼續學習冷卻塔和空氣壓縮機的開發,僅供學習分享使用,如有不足之處,還請指正。 ...
  • System.IO命名空間下麵有一個FileSystemWatcher,這個東西可以實現文件變動的提醒。需要監控文件夾變化(比如FTP伺服器)的情形非常適用。 需要監控文件新建時,我們可以這麼寫: _fileSystemWatcher.Path = path; _fileSystemWatcher. ...
  • 年底找工作不容易,但是目前的工作做起來沒意思了。 這家公司是檢測設備的公司,裡面需要wpf開發,我就去投了試一下,隔了一周hr說線下麵試。 1面:HR 主要是問一下為啥想要離職,以後的發展方向有沒有確定。hr說他們公司不加班,加班沒工資但是可以調休 2面:技術 來之前在hr那做了一份題目,主要是C# ...
  • 一個美麗的邂逅 昨天心血來潮,想著用了很久的HangFire這個任務調度組件,卻從來沒有研究過其源碼,所以我就想著看一下Hangfire的源碼,然後當我看到Hangfire源碼中 AspNetShutdownDetector(Asp.Net服務停止檢測器)這個類的源碼的時候,看到其實現方式中,有兩個 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...