本文介紹如何在ECS執行個體上將Red Hat Enterprise Linux(RHEL)7升級為RHEL 8或將RHEL 8升級為RHEL 9。
RHEL 7升級為RHEL 8
2024年06月30日後,RHEL 7從維護支援(Maintenance Support)階段過渡到延長生命週期(Extended Life)階段,紅帽僅提供有限的支援人員,為了您能夠獲得全面的支援人員和安全更新,建議您將RHEL 7升級到RHEL 8。
如果您是RHEL 7.9系統且當前的業務必須保留在RHEL 7.9版本,建議您先購買阿里雲Red Hat Enterprise Linux Extended Life Cycle Support (ELS) Add-On訂閱,以持續獲得安全更新和錯誤修複。更多資訊,請參見購買延長生命週期支援(ELS)訂閱。
前提條件
請確保待升級RHEL執行個體滿足系統啟動並執行要求。具體要求,請參見Red Hat Enterprise Linux 技術能力和限制。
請確保您RHEL執行個體是通過阿里雲公用鏡像購買的RHEL 7系統(已包含RHEL 7訂閱)或在阿里雲自行匯入的RHEL 7且購買了阿里雲RHEL 7訂閱的系統。
說明阿里雲RHEL訂閱是為了在阿里雲上使用RHEL作業系統時,提供合法的軟體存取權限、安全更新和支援人員。
如果您是自行購買的紅帽的RHEL系統,請參考紅帽官方文檔Upgrading from RHEL 7 to RHEL 8進行升級。
操作步驟
在升級之前,建議您提前瞭解升級風險並建立快照備份資料,以防升級出現問題時可以快速恢複。
使用root使用者遠端連線RHEL系統的ECS執行個體。
具體操作,請參見使用Workbench工具以SSH協議登入Linux執行個體。
重要升級操作涉及對系統設定檔、庫檔案等修改,需要root許可權進行操作,以確保升級過程順利完成。
運行以下命令,確認您的RHEL執行個體是否已使用阿里雲RHEL訂閱。
rpm -q client-rhel7如果沒有任何回顯資訊,表示您的系統未使用阿里雲RHEL訂閱,請先購買訂閱,再執行升級操作。
如果有類似
client-rhel7-3.0-1.el7_9.noarch回顯資訊,表示您的系統已使用阿里雲RHEL訂閱,可以繼續執行本文升級操作。
準備升級環境。
運行以下命令,將RHEL系統升級到最新版本,最新版本通常包含對已知漏洞、錯誤和安全問題的修複,並重啟系統使其生效。
yum -y update reboot運行以下命令,在RHEL系統上安裝Leapp升級工具。
yum -y install leapp leapp-rhui-alibaba --enablerepo="*"運行以下命令,確認Leapp是否安裝成功。
leapp --version如果有類似
leapp version xxx回顯資訊,表示Leapp安裝成功。
預升級檢查。
由於RHEL各系統差異較大,在升級前需要先通過Leapp工具對系統進行預升級檢查。您可以查看Leapp工具的檢查結果,並根據Leapp工具的建議進行修複,以滿足升級需求。
運行以下命令,進行預升級檢查。
預升級RHEL 8最新版本。
leapp preupgrade --no-rhsm預升級至具體的目標版本,例如需要將RHEL 7升級至RHEL 8.8版本。
leapp preupgrade --no-rhsm --target 8.8說明您可以通過
leapp preupgrade -h命令查看當前系統支援升級的目標版本。
查看預升級檢查結果。
Leapp工具預升級的檢查日誌儲存在以下記錄檔中:
/var/log/leapp/leapp-preupgrade.log:Leapp工具的日誌
/var/log/leapp/leapp-report.txt:文字格式設定的預升級檢查報告
/var/log/leapp/leapp-report.json :JSON格式的預升級檢查報告
預升級檢查失敗後,會列印出一些具體檢查失敗項, 如下圖所示。

(條件必選)處理預升級報錯。
在記錄檔
/var/log/leapp/leapp-report.txt中查看預升級是否有報錯資訊,請您根據Leapp工具的建議進行修複。以下按風險等級列出一些常見的預升級檢查報錯及處理辦法。high (inhibitor):高風險(阻止升級),這類問題會直接阻止升級過程,必須解決後才能繼續升級。
high:高風險,這類問題不會直接阻止升級,但建議您在升級前或升級後解決這些問題,以避免升級後出現問題。
medium:中風險,這類問題不會直接阻止升級,但建議您在升級前或升級後解決這些問題,以避免升級後出現潛在問題。
low:低風險,這類問題對升級過程或系統啟動並執行影響較小,但建議您在升級前或升級後解決這些問題,以確保系統穩定運行。
info:提示,這類問題通常是資訊性提示,不會對升級過程或系統運行產生影響。您可以查看報告中的具體提示,瞭解升級過程中會發生的變化。
運行以下命令,進行升級。
升級至RHEL 8最新版本。
leapp upgrade --no-rhsm升級至具體的目標版本,例如需要將RHEL 7升級至RHEL 8.8版本。
leapp upgrade --no-rhsm --target 8.8
如下圖所示,表示升級成功。

運行以下命令,重啟進入新系統。
reboot驗證升級結果。
運行
cat /etc/redhat-release命令檢查系統版本是否已更新。查看升級的執行日誌或報告是否正常。
觀察您的業務在RHEL 8系統上運行是否正常。
(條件必選)運行以下命令,配置RHEL的源。
使用Leapp升級工具升級完成後,預設會修改
/etc/dnf/vars/releasever檔案來限定系統升級到RHEL的具體版本。例如RHEL 8.8,repo源資訊為https://xxxx/8.8/xxx,後續您只能訪問RHEL 8.8版本下的軟體包。如果您希望能夠自動訪問RHEL 8最新版本的軟體包,確保擷取到最新的安全補丁和功能更新,可以通過刪除releasever設定檔並重建中繼資料快取來實現。rm -f /etc/dnf/vars/releasever dnf clean all && dnf makecache執行完成後,RHEL 8的repo源資訊會更新為
https://xxxx/8/xxx,系統將能夠自動擷取RHEL 8最新版本的安全補丁和功能更新,確保系統始終處於最新狀態。
RHEL 8升級為RHEL 9
RHEL 8雖然目前仍處於完全支援階段(Full Support),您可以按需將系統升級到RHEL 9,以獲得最新功能、硬體適配和長期支援等。
前提條件
請確保待升級RHEL執行個體滿足系統啟動並執行要求。具體要求,請參見Red Hat Enterprise Linux 技術能力和限制。
請確保您RHEL執行個體是通過阿里雲公用鏡像購買的RHEL 8系統(已包含RHEL 8訂閱)或在阿里雲自行匯入的RHEL 8且購買了阿里雲RHEL 8訂閱的系統。
說明阿里雲RHEL訂閱是為了在阿里雲上使用RHEL作業系統時,提供合法的軟體存取權限、安全更新和支援人員。
如果您是自行購買的紅帽的RHEL系統,請參考紅帽官方文檔Upgrading from RHEL 8 to RHEL 9進行升級。
操作步驟
在升級之前,建議您提前瞭解升級風險並建立快照備份資料,以防升級出現問題時可以快速恢複。
使用root使用者遠端連線RHEL系統的ECS執行個體。
具體操作,請參見使用Workbench工具以SSH協議登入Linux執行個體。
重要升級操作涉及對系統設定檔、庫檔案等修改,需要root許可權進行操作,以確保升級過程順利完成。
運行以下命令,確認您的RHEL執行個體是否已使用阿里雲RHEL訂閱。
rpm -qa |grep aliyun如果沒有任何回顯資訊,表示您的系統未使用阿里雲RHEL訂閱,請先購買訂閱,再執行升級操作。
如果有類似如下包含小版本
rhel8.6的回顯資訊,請先提交工單擷取並安裝最新的rpm包,再執行升級操作。
說明在阿里雲上運行RHEL時,系統需要通過阿里雲的RHUI服務訪問Red Hat的軟體倉庫。如果系統中安裝的是小版本的包(例如
aliyun_rhel8.6-2.0-1.noarch),系統可能無法正確串連到 RHUI,導致無法擷取軟體更新或無法升級到新版本。如果有類似
aliyun_rhui_rhel8-2.0-3.x86_64訂閱包回顯資訊,表示您的系統已使用阿里雲RHEL訂閱,可以繼續執行本文升級操作。
準備升級環境。
運行以下命令,將RHEL系統升級到最新版本,最新版本通常包含對已知漏洞、錯誤和安全問題的修複,並重啟系統使其生效。
yum -y update reboot運行以下命令,在RHEL系統上安裝Leapp升級工具。
yum -y install leapp leapp-rhui-alibaba --enablerepo="*"運行以下命令,確認Leapp是否安裝成功。
leapp --version如果有類似
leapp version xxx回顯資訊,表示Leapp安裝成功。
預升級檢查。
由於RHEL各系統差異較大,在升級前需要先通過Leapp工具對系統進行預升級檢查。您可以查看Leapp工具的檢查結果,並根據Leapp工具的建議進行修複,以滿足升級需求。
運行以下命令,進行預升級檢查。
預升級至RHEL 9最新版本。
leapp preupgrade --no-rhsm預升級至具體的目標版本,例如需要將RHEL 8升級至RHEL 9.4版本。
leapp preupgrade --no-rhsm --target 9.4說明您可以通過
leapp preupgrade -h命令查看當前系統支援升級的目標版本。
查看預升級檢查結果。
Leapp工具預升級的檢查日誌儲存在以下記錄檔中:
/var/log/leapp/leapp-preupgrade.log:Leapp工具的日誌
/var/log/leapp/leapp-report.txt:文字格式設定的預升級檢查報告
/var/log/leapp/leapp-report.json :JSON格式的預升級檢查報告
預升級檢查失敗後,會列印出一些具體檢查失敗項, 如下圖所示。

(條件必選)處理預升級報錯。
在記錄檔
/var/log/leapp/leapp-report.txt中查看預升級是否有報錯資訊,您可以根據Leapp工具的建議進行修複。以下按風險等級列出一些常見的預升級檢查報錯及處理辦法。high:高風險,這類問題不會直接阻止升級,但建議您在升級前或升級後解決這些問題,以避免升級後出現問題。
low:低風險,這類問題對升級過程或系統啟動並執行影響較小,但建議您在升級前或升級後解決這些問題,以確保系統穩定運行。
info:提示,這類問題通常是資訊性提示,不會對升級過程或系統運行產生影響。您可以查看報告中的具體提示,瞭解升級過程中會發生的變化。
運行以下命令,進行升級。
升級至RHEL 9最新版本。
leapp upgrade --no-rhsm升級至具體的目標版本,例如需要將RHEL 8升級至RHEL 9.4版本。
leapp upgrade --no-rhsm --target 9.4
如下圖所示,表示升級成功。

運行以下命令,重啟進入新系統。
reboot驗證升級結果。
運行
cat /etc/redhat-release命令檢查系統版本是否已更新。查看升級的執行日誌或報告是否正常。
觀察您的業務在RHEL 9系統上運行是否正常。
(條件必選)運行以下命令,配置RHEL的源。
使用Leapp升級工具升級完成後,預設會修改
/etc/dnf/vars/releasever檔案來限定系統升級到RHEL的具體版本。例如RHEL 9.4,repo源資訊為https://xxxx/9.4/xxx,後續您只能訪問RHEL 9.4版本下的軟體包。如果您希望能夠自動訪問RHEL 9最新版本的軟體包,確保擷取到最新的安全補丁和功能更新,可以通過刪除releasever設定檔並重建中繼資料快取來實現。rm -f /etc/dnf/vars/releasever dnf clean all && dnf makecache執行完成後,RHEL 9的repo源資訊會更新為
https://xxxx/9/xxx,系統將能夠自動擷取RHEL 9最新版本的安全補丁和功能更新,確保系統始終處於最新狀態。
相關文檔
您也可以通過Server Migration Center將RedHat 8升級至RedHat 9。具體操作,請參見作業系統遷移(Linux)。
有關Red Hat的更多介紹,請參見紅帽官方文檔Red Hat Enterprise Linux。
關於RHEL 7進入延長生命週期階段的常見問題可參考紅帽官方FAQ文檔。
