我管理一些運行 Amazon Linux(不確定是什麼版本)的 EC2 實例,這些執行個體需要安全性修補程式。
很多軟體都打了很好的補丁,但我們一直停留在內核升級。我們無法按照我們的意願使用最新的核心版本。我們做了什麼?
- 透過執行從 Amazon 儲存庫取得最新的核心版本
yum update
。系統報告我們已經獲得了預期的最新核心版本,並且不再需要更新任何內容。 - 獲得最新的核心版本後,我們透過點擊 EC2 控制台上的「重新啟動」來重新啟動 EC2。 EC2重啟後,我們使用指令檢查了EC2的核心版本
uname -r
。它報告我們仍然使用相同的核心版本,而不是我們期望的最新核心版本。
我們錯過了什麼重點?請幫忙。
答案1
您可以使用亞馬遜 Linux 附加功能用於升級核心的儲存庫
首先,運行此命令以獲取所有可用的內核版本
sudo amazon-linux-extras |grep kernel
你會看到類似這樣的回复
_ kernel-5.4 available [ =stable ]
55 kernel-5.10=latest enabled [ =stable ]
62 kernel-5.15 available [ =stable ]
標記為啟用的核心版本是您電腦上安裝的版本
要升級到較新的版本(例如 kernel-5.15),只需執行此命令sudo amazon-linux-extras install kernel-5.15 -y
現在,您需要重新啟動伺服器sudo reboot
重啟後運行命令uname -r
確保新版本安裝成功
欲了解更多信息,請參閱此關聯
答案2
核心即時補丁適用於具有核心版本4.14.165-131.185
或更高版本的 Amazon Linux 2。若要檢查您的核心版本,請執行以下命令。
[root@actsupport ~]# yum list kernel
如果您已有受支援的核心版本,請跳過此步驟。如果您沒有支援的核心版本,請執行以下命令將核心更新到最新版本並重新啟動實例。
[root@actsupport ~]# sudo yum install -y kernel
[root@actsupport ~]# reboot
安裝用於核心即時修補的 yum 插件。
[root@actsupport ~]# yum install -y yum-plugin-kernel-livepatch
啟用核心即時修補的 yum 插件。
[root@actsupport ~]# yum kernel-livepatch enable -y
此命令還會從配置的儲存庫安裝最新版本的核心即時補丁 RPM。
若要確認用於核心即時修補的 yum 插件已成功安裝,請執行下列命令。
[root@actsupport ~]# rpm -qa | grep kernel-livepatch
當您啟用核心即時修補時,會自動套用空的核心即時修補 RPM。如果成功啟用核心即時修補,此指令將傳回包含初始空核心即時修補 RPM 的清單。
更新並啟動 kpatch 服務。該服務在初始化或啟動時載入所有核心即時補丁。
[root@actsupport ~]# yum update kpatch-runtime
[root@actsupport ~]# systemctl enable kpatch.service
配置 Amazon Linux 2 核心即時補丁儲存庫,其中包含核心即時補丁。
[root@actsupport ~]# amazon-linux-extras enable livepatch