全部產品
Search
文件中心

Server Migration Center:作業系統遷移(Linux)

更新時間:Aug 02, 2025

若您的作業系統因生命週期結束等原因進入EOL階段或需要將作業系統遷移至其他版本以滿足業務需求,您可以通過Server Migration Center在保留ECS執行個體系統硬碟資料的同時完成作業系統遷移。本文主要介紹如何通過SMC遷移CentOS 7/8、RedHat 7/8及Alibaba Cloud Linux 2。

說明

通過SMC將CentOS 7/8遷移至RedHat 7/8目前僅對部分使用者開放,如果您想體驗此功能,可以提交工單進行申請。

背景資訊

當您的ECS執行個體的作業系統進入作業系統生命週期概述的生命週期結束階段(End of Life,EOL)時,您可能會面臨更高的安全與使用風險,此時建議儘快更換已經處於EOL階段的作業系統。Server Migration Center(Server Migration Center,簡稱SMC)的作業系統遷移功能提供了部分遷移方案,遷移後作業系統核心版本及主要系統軟體包會進行原地轉換升級,同時保留系統硬碟資料。

說明

如果您不需要保留系統硬碟資料,或有更多的作業系統轉換選項需求時,您可以通過更換系統硬碟方式更換作業系統

遷移方案

CentOS 7/8

作業系統架構

源作業系統

目標作業系統

X86

CentOS 7.x

  • AnolisOS 7

  • AnolisOS 8

  • Alibaba Cloud Linux 2

  • Alibaba Cloud Linux 3

    說明

    更多有關Alibaba Cloud Linux資訊,請參見什麼是Alibaba Cloud Linux

  • RedHat 7

    說明

    目前僅支援部分使用者由Centos 7.9升級至RedHat 7,如果您想體驗此功能,可以申請開通白名單。

CentOS 8.x

  • AnolisOS 8

  • Alibaba Cloud Linux 3

  • RedHat 8

    說明

    目前僅支援部分使用者由Centos 8.5升級至RedHat 8,如果您想體驗此功能,可以申請開通白名單。

ARM64

CentOS 7.x

  • AnolisOS 7

  • AnolisOS 8

  • Alibaba Cloud Linux 3

CentOS 8.x

  • AnolisOS 8

  • Alibaba Cloud Linux 3

RedHat 7/8

作業系統架構

源作業系統

目標作業系統

x86

RedHat 7.9

  • Alibaba Cloud Linux 3

  • RedHat 8

    說明

    在遷移時不支援指定遷移至特定的RedHat小版本。

RedHat 8.x

  • RedHat 9

    說明

    在遷移時不支援指定遷移至特定的RedHat小版本。

  • Alibaba Cloud Linux 3

Alibaba Cloud Linux 2

作業系統架構

源作業系統

目標作業系統

x86

Alibaba Cloud Linux 2

Alibaba Cloud Linux 3

遷移限制

限制類別

限制說明

通用限制

  • Anolis OS和Alibaba Cloud Linux系統不提供i686架構的軟體包,如您的系統上安裝了CentOS的i386(包括i686)架構的軟體包,則無法正常遷移。詳細特性或軟體的遷移限制,請參看特性或軟體的遷移限制

  • 作業系統遷移工具在遷移過程中涉及軟體包的下載與安裝,會產生一定的資源消耗。因此,遷移前您需要確保執行個體內保留了以下可用的資源容量:

    • 記憶體大小:600 MiB

    • 雲端硬碟容量:

      • /usr目錄需要250 MiB

      • /var目錄需要4 GiB

      • /boot目錄需要100 MiB

    說明

    如果您的執行個體對應的計算資源(vCPU與記憶體)、儲存資源(系統硬碟與資料盤)較小,建議您停止執行個體內的業務再進行作業系統遷移,避免因資源不足而導致遷移失敗。

  • 僅支援特定的遷移方案

  • 若待作業系統遷移的執行個體下存在正在建立的快照時不支援遷移,需等待快照建立完成後,再開始遷移。

CentOS 7遷移至Alibaba Cloud Linux 2

Alibaba Cloud Linux 2使用4.19核心,CentOS 7使用3.10核心,兩個版本的核心無法相互相容。對於依賴於核心介面編程的業務,例如涉及核心OOT模組開發、硬體使能等,需要提前做好評估,明確是否適合隨即轉移,以免作業系統遷移後業務無法運行。

CentOS 7遷移至Alibaba Cloud Linux 3

CentOS 7使用3.10核心,Alibaba Cloud Linux 3選用Linux kernel 5.10 LTS作為Alibaba Cloud Linux 3的核心,並選用GCC 10.2、binutils 2.35、glibc 2.32作為基礎工具鏈。兩個版本的核心無法相互相容,依賴於核心介面編程的業務,例如涉及核心OOT模組開發、硬體使能等,需提前做好評估,明確是否適合隨即轉移,以免作業系統遷移後業務無法正常運行。

CentOS 8遷移至Alibaba Cloud Linux 3

Alibaba Cloud Linux 3選用Linux kernel 5.10 LTS作為Alibaba Cloud Linux 3的核心,並選用GCC 10.2、binutils 2.35、glibc 2.32作為基礎工具鏈。在軟體包生態上與CentOS 8相容。當您使用本文介紹的作業系統遷移工具將CentOS 8遷移為Alibaba Cloud Linux 3時,工具會對待遷移的作業系統進行基礎判斷。

同時,您還需要注意以下作業系統相關特性或軟體的遷移限制:

特性或軟體

支援情況

是否影響作業系統遷移流程

說明

i386架構的軟體包

不支援

Alibaba Cloud Linux不提供i386架構的軟體包。如果您當前使用的CentOS 7/8系統內帶有i386架構的軟體包,則不支援使用遷移工具遷移作業系統。您需要先刪除這些軟體包,然後再進行遷移操作,以免遷移時系統發生異常。

epel-modular

不支援

CentOS 7/8中EPEL源所依賴的platform與Alibaba Cloud Linux 3不同。因此,您可以遷移作業系統,但需要注意遷移後無法安裝基於epel-modular的軟體包。

C/C++語言程式相容性

不保證

Alibaba Cloud Linux 3選用GCC 10.2、binutils 2.35、glibc 2.32作為基礎工具鏈,且系統自身的軟體包已經做了相容性處理。作業系統遷移後,建議您基於新的基礎工具鏈重新對您的C/C++語言程式進行編譯驗證,避免出現相容性問題。

核心模組相容性

不支援

Alibaba Cloud Linux 3選用Linux kernel 5.10 LTS作為核心,在軟體包生態上與CentOS 8相容,但您需要注意,Alibaba Cloud Linux 3無法完全相容CentOS 7的3.10核心和CentOS 8的4.18核心。因此,依賴於核心介面編程的業務(例如核心OOT模組開發、硬體使能等業務情境),您需要在遷移前自行做好遷移評估,避免遷移後業務無法正常運行。

MySQL資料庫

僅支援向同版本或更高版本的MySQL遷移

  • 如果向同版本或更高版本的MySQL遷移則不影響

  • 如果向低版本的MySQL遷移則影響

Alibaba Cloud Linux 3支援MySQL資料庫,但您需要注意,由於MySQL不支援降低版本,當Alibaba Cloud Linux 3提供的MySQL版本低於待遷移的CentOS 7/8內的MySQL版本時,不支援使用遷移工具完成作業系統遷移。

作業系統熱遷移

不支援

使用作業系統工具遷移作業系統時涉及軟體包的重新安裝,會引起系統內服務重啟,進而造成業務中斷。因此,您需要在遷移前建立快照做好資料備份並隔離待遷移的作業系統環境,避免影響正常業務。

遷移注意事項

重要

請您在作業系統遷移前務必瞭解以下事項。

遷移過程

注意事項

遷移前

  • 已完成遷移前準備工作。具體操作,請參見遷移前準備

  • 在正式遷移前,強烈建議您瞭解遷移限制,並預先在目標作業系統環境下完成所有商務應用程式的全面測實驗證,以確保應用程式與目標作業系統之間的相容性及效能表現,從而有效避免遷移後可能出現的業務運行不暢或功能失效等問題。

  • 遷移過程中,源執行個體系統會被安裝或更新系統核心及軟體包,並自動重啟多次,期間業務無法正常運行,建議在正式遷移前請您評估影響,暫停業務後再進行操作。

遷移中

  • 遷移過程中請勿人工或通過營運指令碼對ECS雲端服務器執行停止、重啟、釋放等操作,否則可能會導致遷移失敗。

  • 遷移演練或取消遷移可能會觸發自動復原遷移前快照的操作,遷移期間產生的資料將丟失。

  • 遷移過程會對 ECS 雲端服務器進行建立快照、作業系統核心版本轉換、軟體包重新安裝升級、停止、啟動等操作。建議提前做好重要資料備份,合理安排遷移視窗期,避免因上述操作對業務造成影響。

  • 遷移中系統會對源執行個體進行遷移條件檢測及遷移預評估。如果源系統不滿足遷移條件或遷移預評估失敗,遷移會出錯中斷,並不能保證一定能遷移成功,建議您提前熟悉遷移條件及出錯排查文檔並進行測試。遷移問題,請參見作業系統遷移中問題(Linux)RedHat遷移出錯排查官方文檔

遷移後

  • 遷移後,執行個體會自動啟動,執行個體ID、鏡像ID、執行個體VPC、執行個體公/私網IP、執行個體主機名稱等保持不變,執行個體作業系統會變更為遷移後目標作業系統。

  • 原有系統硬碟資料不變,但應用軟體可能由於環境或依賴關係改變而無法正常運行,導致業務無法正常運行,因此請您做好測實驗證。

計費說明

遷移過程中系統會對ECS執行個體的全部雲端硬碟建立快照以備份資料,快照以隨用隨付方式收取一定費用。更多資訊,請參見產品計費

遷移操作

重要

遷移過程中系統會對ECS執行個體的全部雲端硬碟建立快照備份資料,建立的快照將以隨用隨付方式收取一定費用。更多資訊,請參見產品計費

  1. (條件必選)如果您需要遷移CentOS 7/8至RedHat 7/8,則必須完成以下操作,否則請跳過此步驟。

    1. 如果源系統已安裝Security Center用戶端,則需要先卸載。

      說明

      遷移完成後可再安裝。具體操作,請參見手動安裝

      用戶端卸載後會有一段保護期。如果您需要再次為伺服器安裝用戶端,您必須在用戶端卸載超過24小時後,重新安裝用戶端。如果您不想等待,可在伺服器上重複執行3次以上安裝命令才能重新安裝成功(忽略其間的報錯),否則重新安裝的用戶端會被自動卸載。

      1. 訪問阿里雲雲安全用戶端卸載介面,選擇執行個體進行卸載。具體操作,請參見卸載用戶端

      2. 使用遠端連線工具串連伺服器,執行以下命令。

        wget "http://update2.aegis.aliyun.com/download/uninstall.sh" && chmod +x uninstall.sh && ./uninstall.sh
        if ! lsmod | grep AliSecGuard; then echo 'Uninstall Success'; else echo "Uninstall Failed"; fi

        返回Uninstall Success,表示Security Center用戶端已成功卸載。

    2. 執行以下命令,將源系統升級至最新核心版本。

      CentOS 7

      #備份原yum軟體源並更新為阿里雲CentOS 7源
      mv /etc/yum.repos.d/ /etc/yum.repos.d.backup/
      mkdir -p /etc/yum.repos.d/
      wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
      wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
      yum clean all
      yum makecache
      #更新系統並重啟
      yum -y update
      reboot

      CentOS 8

      #備份原yum軟體源並更新為阿里雲CentOS 8源
      mv /etc/yum.repos.d/ /etc/yum.repos.d.backup/
      mkdir -p /etc/yum.repos.d/
      wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.aliyuncs.com/repo/Centos-8.repo
      wget -O /etc/yum.repos.d/epel-archive-8.repo http://mirrors.cloud.aliyuncs.com/repo/epel-archive-8.repo
      yum clean all
      yum makecache
      #更新系統並重啟
      yum -y update
      reboot
  2. 作業系統遷移。

    快速遷移(推薦)

    說明

    如果您的執行個體是在2017年12月01日之前購買,或通過自行上傳的自訂鏡像建立,或是第三方雲端服務器,若需使用此方式,則需為該ECS執行個體安裝雲助手Agent。2017年12月01日之後使用公用鏡像建立的ECS執行個體,已預設預裝了使用此方式所需的雲助手Agent,無需關注此條說明。

    1. 訪問SMC控制台-作業系統遷移

    2. 作業系統遷移頁面,單擊開始遷移

    3. 在彈出的作業系統遷移對話方塊中,通過執行個體ID、地區確定並選擇待遷移的ECS執行個體後,單擊前置檢測

      image

    4. 在彈出的作業系統遷移對話方塊中,系統自動進行作業系統遷移前置檢查,大約需要10s,請您耐心等待。

      • 當前置檢測狀態由image變為image,表示前置檢查通過。

      • 當前置檢測狀態由image變為image,表示前置檢查不通過,您可以根據介面提示修複問題後重新遷移。

    5. 仔細閱讀作業系統遷移注意事項後,選中我已知曉以上風險,同意並授權阿里雲為該執行個體的全部雲端硬碟建立快照,並單擊下一步

      image

    6. 在彈出的作業系統遷移對話方塊中,按需選擇目標作業系統。

      • 統一遷移至同一目標作業系統:如果執行批量遷移,您可以將不同執行個體統一遷移至同一個作業系統。

      • 按執行個體選擇目標作業系統:如果執行批量遷移,您可以按需將不同執行個體遷移至不同的作業系統。

    7. 單擊檢測是否可遷移,查看遷移檢測結果。

      檢測大約需要30s,請您耐心等待。

      • image:表示作業系統可以遷移。

      • image:表示不支援遷移。您可以根據介面提示,查看不支援遷移的原因。

    8. 單擊確定遷移

      您可以在作業系統遷移頁面,查看作業系統遷移的進度。

      警告

      在作業系統遷移的過程中,請勿人工或通過營運指令碼對ECS執行個體執行停止、重啟、釋放等操作,否則會導致作業系統遷移失敗。

    分段移轉

    步驟一:匯入遷移源

    遷移源指您準備遷移的IDC伺服器、虛擬機器或其他雲平台的雲主機。SMC支援多種匯入遷移源方式,您可以按需選擇對應的遷移源方式

    命令列一鍵匯入遷移源(推薦)

    重要
    • 原始伺服器需要具備公網訪問能力。如果原始伺服器存在防火牆限制,請參見SMC服務網域名稱有哪些,擷取SMC網域名稱和連接埠,並添加至防火牆白名單。

    • 如果您的原始伺服器無法訪問公網或想通過私網傳輸提升遷移效率,請參考私網傳輸遷移方案。

    1. 訪問SMC控制台-作業系統遷移

    2. 作業系統遷移頁面,單擊匯入遷移源

    3. 根據介面提示配置參數並複製啟用碼命令,關於參數的說明,具體如下表所示。

      參數

      說明

      遷移源類型

      選擇阿里雲ECS雲端服務器

      匯入方式

      選中命令列匯入

      啟用數額度

      啟用碼可啟用的遷移源數量。取值範圍為1~1000 ,預設為200。

      有效期間

      啟用碼的有效期間。取值範圍為1~90天,預設為90天。

      啟用碼

      產生啟用碼後,複製命令。操作步驟如下:

      1. 單擊生成啟動碼

      2. 單擊Linux Shell頁簽。

      3. 單擊複製,複製啟用碼命令。

    4. 登入原始伺服器,使用管理員權限粘貼並運行複製的命令,執行匯入遷移源的操作。

      1. 登入Linux原始伺服器。

      2. 使用管理員權限粘貼並運行複製的命令,執行匯入遷移源的操作。

        image.png

        執行命令後,出現類似Import Source Server [s-bp18x8751kgz2oyh****] Successfully!回顯資訊,表示匯入遷移源成功。

    5. 在SMC控制台的作業系統遷移頁面的遷移即時狀態列,查看遷移源的狀態。

      • 如果遷移源為遷移源線上狀態,表示匯入遷移源成功。

      • 如果遷移源為其他狀態,表示匯入遷移源失敗。請參見以下方案解決問題後,重新匯入遷移源。

        • 請根據控制台出錯提示或者通過查看SMC用戶端目錄下記錄檔解決問題。SMC用戶端預設安裝目錄為/smc

        • 常見問題及修複方案,請參見SMC FAQ排除報錯

    通過SMC用戶端匯入遷移源

    關於SMC用戶端的更多資訊,請參見SMC用戶端使用指南

    1. 訪問SMC控制台-作業系統遷移

    2. 作業系統遷移頁面,單擊匯入遷移源

    3. 匯入遷移源頁面,配置相關參數,參數說明如下表所示。

      參數

      說明

      遷移源類型

      阿里雲ECS雲端服務器

      匯入方式

      選中用戶端匯入

      匯入說明

      匯入說明後,請根據原始伺服器作業系統(Linux和Windows)和位元(32位和64位),下載對應的SMC用戶端。

    4. 匯入遷移源。

      重要

      遷移過程中請勿關閉SMC用戶端。否則遷移源將與SMC控制台失聯,導致遷移失敗。

      1. 使用支援檔案傳輸的遠端連線工具(如WinSCP)將擷取的SMC用戶端上傳至Linux原始伺服器。

      2. 遠端連線Linux原始伺服器並解壓SMC用戶端壓縮包。

        本樣本以Linux 64位通用版為例,如果使用其他版本SMC用戶端,請將命令中的壓縮包名稱需要替換為實際下載的檔案名稱。

        tar -zxvf go2aliyun_client.tar.gz
        說明

        Linux 64位ARM版支援的執行個體規格類型系列為通用型執行個體規格類型系列g6r和計算型執行個體規格類型系列c6r。更多執行個體規格資訊,請參見企業級ARM運算規格類型系列

      3. (可選)您可按需過濾、排除不需要遷移的檔案或目錄

        重要

        如果開啟塊複製功能遷移,則不支援排除不遷移的檔案或目錄。

      4. 擷取啟用碼或者存取金鑰(AccessKey)。

        • (推薦)擷取啟用碼:在SMC控制台的匯入說明中,單擊產生啟用碼並複製啟用碼資訊。

        • 擷取存取金鑰(AccessKey):阿里雲帳號的存取金鑰AccessKey包括AccessKey ID和AccessKey Secret,如果您未建立,請先建立。具體操作,請參見建立AccessKey

      5. 在SMC用戶端檔案夾下,執行以下命令,運行SMC用戶端。

        cd go2aliyun_client_linux_x86_64
        sudo chmod +x go2aliyun_client
        sudo ./go2aliyun_client
      6. 根據提示資訊,輸入啟用碼或者存取金鑰(AccessKey)。本樣本以輸入啟用碼為例:adad

        輸入啟用碼或者存取金鑰後,可能會出現以下提示資訊:

        • 若遷移源系統沒有安裝快照驅動,則SMC用戶端會提示,具體如下圖所示,您可根據需求選擇是否安裝快照驅動。

          • 如果在建立遷移任務時啟用塊複製,則輸入yes,自動安裝快照驅動。

          • 如果在建立遷移任務時不啟用塊複製,則輸入no即可。

          重要

          如果安裝快照驅動失敗,請勿在建立遷移任務時啟用塊複製,否則會導致遷移失敗。

          123

        • 多數主流遷移源系統已預設安裝rsync。若沒有安裝,則SMC用戶端會提示,請輸入yes自動安裝rsync,如下圖所示。安裝rsync

        • 若遷移源系統的SELinux處於開啟狀態,則SMC用戶端會提示您關閉。請輸入yes自動關閉SELinux,如下圖所示。關閉SELinux

        當回顯出現類似Import Source Server [s-bp11npxndknsycqj****] Successfully!的資訊時,表示匯入遷移源成功。

        說明

        如果匯入遷移源失敗,您可以根據回顯資訊,解決問題後,依次運行以下命令,退出背景程式並重新匯入遷移源。常見問題及修複方案的更多資訊,請參見SMC FAQ排除報錯

        sudo ./go2aliyun_client --abort
        sudo ./go2aliyun_client
    5. 在SMC控制台的作業系統遷移頁面的遷移即時狀態列,查看遷移源的狀態。

      • 如果為遷移源線上狀態,表示匯入成功。

      • 如果為其他狀態,表示匯入失敗。請參見以下方案解決問題後,重新匯入。

        • 請根據控制台出錯提示或者通過查看SMC用戶端目錄下記錄檔解決問題。SMC用戶端預設安裝目錄為 /smc

        • 常見問題及修複方案,請參見SMC FAQ排除報錯

    步驟二:遷移配置

    1. 在目標遷移源的操作列,單擊開始遷移

    2. 在彈出的遷移配置對話方塊中,配置參數資訊。

      作業系統遷移參數配置說明如下所示:

      • 當前作業系統:預設顯示當前作業系統,不可修改。例如:CentOS 7。

      • 目標作業系統:在下拉式清單中選擇目標作業系統。例如:Alibaba Cloud Linux 3。

      • 遷移演練(可選項):

        根據需要來決定是否開啟遷移演練,預設開啟。目前僅支援Linux作業系統遷移。更多資訊,請參見配置遷移演練

        說明

        遷移演練是在實際遷移前對遷移方案進行類比和驗證的過程。它可以協助使用者在實際遷移前充分瞭解遷移方案的可行性和風險,從而減少實際遷移中可能出現的問題和損失。

        遷移演練可以協助您快速發現遷移中存在的潛在問題,並提供修複方案,提升遷移成功率。

      • 執行方式(條件必選):

        遷移演練開啟時,可在執行方式選項中,更換所需的遷移演練執行方式。預設選項是演練並遷移

        兩種方式的區別如下:

        • 僅演練:僅建立遷移演練任務,遷移演練完成後,如果需要作業系統遷移,需要手動啟動作業系統遷移任務。

        • 演練並遷移:遷移演練完成後,如果不存在狀態為嚴重的演練項,系統自動啟動作業系統遷移任務。

    3. 單擊開始遷移,在彈出的作業系統遷移請確認對話方塊中,仔細閱讀注意事項後,單擊我確認我已知曉

    4. 作業系統遷移頁面,查看遷移即時狀態。

      警告

      在作業系統遷移的過程中,請勿人工或通過營運指令碼對該Linux執行個體執行停止、重啟、釋放等操作,否則會導致作業系統遷移失敗。

驗證遷移結果

  • 當遷移即時狀態為已完成時,表示作業系統遷移成功。

    image

    說明

    遷移任務完成後,ECS執行個體會自動重啟,在系統初始化階段進行更新軟體包等操作,請勿對ECS執行個體進行操作,等待系統啟動成功即可。系統初始化階段大約需要15~30分鐘,具體時間與系統軟體包數量有關。

    在目標遷移源的操作列下單擊查看目標執行個體,然後在ECS執行個體的執行個體詳情頁中查看作業系統已經遷移為目標作業系統。

    重要

    遷移後,源執行個體系統會被遷移為新的系統核心及軟體包,原有系統硬碟資料不變,但應用軟體可能由於環境或依賴關係改變而無法正常運行,導致業務無法正常運行,請您做好測實驗證。

  • 遷移即時狀態出錯時,表示遷移任務出錯。

    此時,您需要排查問題後重試:

    1. 操作列,單擊排查錯誤,根據錯誤碼和錯誤資訊提示修複問題。更多資訊,請參見SMC FAQ排除報錯

    2. 修複問題後,在操作列,單擊重試遷移。系統會從上一次結束的進度處繼續遷移。

      重要

      如果中轉執行個體已被釋放,需要重新遷移。具體操作,請參見誤釋放了中轉執行個體怎麼辦

    如果需要復原源系統雲端硬碟資料,您可以在快照列表使用自動備份的快照進行資料恢複。操作步驟如下:

    1. 訪問ECS管理主控台-快照

    2. 在自動備份的快照操作列中單擊復原雲端硬碟image

    3. 在彈出的復原雲端硬碟對話方塊中,單擊確定

資源清理

遷移時,SMC會對ECS執行個體的雲端硬碟建立名稱為SMC_Backup_Snapshot_XXX的隨用隨付快照,用於備份資料。如果您不再需要此快照,請及時刪除快照,避免不必要的計費。具體操作,請參見刪除快照