全部產品
Search
文件中心

Elastic Compute Service:轉換MBR分區為GPT分區

更新時間:Dec 10, 2024

MBR分區格式不支援2 TiB以上的雲端硬碟。如果您的雲端硬碟目前使用的是MBR分區類型,且希望將其擴容至2 TiB以上,需要先將分區類型從MBR轉換為GPT,再擴容分區及檔案系統。本文為您介紹如何將Linux和Windows資料盤的MBR分區轉換為GPT分區。

準備工作

轉換Linux資料盤的分區類型

您可以參考如下操作,將Linux資料盤的MBR分區轉換為GPT分區。本操作以資料盤/dev/vdb為例,請您根據實際環境進行操作。

  1. (可選)為雲端硬碟建立快照,做好資料備份。

    具體操作,請參見建立快照

    說明
    • Linux轉換分區過程中,正常情況下不會丟失原分區的資料。避免誤操作導致資料丟失或異常,建議您提前備份雲端硬碟上的所有資料。

    • 使用快照會產生計費。更多資訊,請參見快照計費

  2. 遠端連線ECS執行個體。

    登入ECS管理主控台,單擊左側導覽列執行個體,選擇目標執行個體,單擊遠端連線,登入執行個體,具體操作,請參見使用Workbench工具以SSH協議登入Linux執行個體

  3. 運行以下命令,安裝gdisk工具。

    • Alibaba Cloud Linux 2/3版本、CentOS 6及以上版本運行以下命令。

      type sgdisk || sudo yum install -y gdisk
    • Debian 8及以上版本、Ubuntu14及以上版本運行以下命令。

      type sgdisk || sudo apt-get install -y gdisk
  4. 運行以下命令,將MBR分區轉換為GPT分區。

    重要

    sgdisk只能對裝置(例如/dev/vdb)進行操作,不能對分區(例如/dev/vdb1)進行操作,否則可能會損壞檔案系統。

    以雲端硬碟裝置名稱/dev/vdb為例,則需要運行如下命令。

    sudo sgdisk -g /dev/vdb

    image

    說明

    如果運行sgdisk命令出現報錯提示,請參見常見問題進行解決。

    -g表示convert MBR to GPT。

  5. 運行以下命令,查看分區轉換結果。

    以雲端硬碟裝置名稱/dev/vdb為例,則運行如下命令。

    sudo fdisk -lu /dev/vdb

    如下圖所示,Disklabel type值為gpt時,表示已轉換為GPT分區,分區轉換成功。

    image

    說明
    • 不同作業系統的顯示略有不同。如果沒有Disklabel type欄位,可通過System欄位判斷。System值為GPT表示GPT分區。

    • 若轉換分區後資料出現異常,您可以使用快照復原雲端硬碟,使雲端硬碟恢複到建立快照時的狀態,具體操作詳見使用快照復原雲端硬碟

  6. MBR分區轉換為GPT分區成功後,您可依照擴容分區和檔案系統(Linux)繼續執行擴容分區及檔案系統操作。

轉換Windows資料盤的分區類型

您可以參考如下操作將Windows資料盤的MBR分區轉換為GPT分區。本操作以公用鏡像Windows Server 2016 64位、資料盤磁碟1為例,請您根據實際環境進行操作。

重要

轉換Windows雲端硬碟分區過程中,雲端硬碟資料不可用,如果您正在啟動並執行業務依賴於該盤的資料,可能會出現問題。建議您先停止服務,待分區轉換完成並恢複雲端硬碟資料後再繼續運行業務。

步驟一:轉換分區

  1. (可選)備份雲端硬碟資料。

    警告

    Windows轉換分區過程中,需要刪除卷,刪除卷會清除該卷上的所有資料,請您提前備份雲端硬碟上的所有資料。

    分區轉換成功後,可以通過備份資料恢複原雲端硬碟。您可以通過以下兩種方式備份Windows雲端硬碟資料。

    • 方式一:通過快照備份。

      說明
      • 建立快照。具體操作,請參見建立快照

      • 使用快照會產生計費。更多資訊,請參見快照計費

    • 方式二:將原雲端硬碟資料手動拷貝到ECS執行個體的其他雲端硬碟上。

  2. 遠端連線ECS執行個體。

    登入ECS管理主控台,點擊左側導覽列執行個體,選擇目標執行個體,單擊遠端連線,登入執行個體,具體操作,請參見使用Workbench工具以RDP協議登入Windows執行個體

  3. 在Windows Server案頭,按右鍵開始表徵圖表徵圖,然後單擊磁碟管理

  4. 找到待轉換分區的資料盤(以磁碟 1為例)。

    磁碟1

  5. 按右鍵一個簡單磁碟區,在快顯功能表中選擇刪除卷

    刪除卷

    重要

    如果刪除卷失敗,可能是您執行個體內仍有程式去訪問此塊雲端硬碟的資料或者資訊。您可以嘗試重啟執行個體後,再執行刪除卷。重啟執行個體會影響業務,建議您選擇合適的時間進行。

  6. 在彈出的刪除簡單磁碟區對話方塊中,單擊

  7. 磁碟1 的簡單磁碟區全部刪除完畢後,按右鍵磁碟,在快顯功能表中選擇轉換成GPT磁碟

    轉換GTP

  8. 按右鍵磁碟,在快顯功能表中選擇屬性>,查看磁碟分割格式是否轉換成功。 截屏2024-10-30 15

  9. 按右鍵磁碟的未分配地區,選擇建立簡單磁碟區

    建立簡單磁碟區

  10. 建立簡單磁碟區嚮導對話方塊中,單擊下一步,然後根據嚮導完成操作。

    1. 指定卷大小對話方塊中,設定簡單磁碟區大小,然後單擊下一步

      如果您只需要建立一個主區,直接使用預設值即可。您也可以根據需要設定簡單磁碟區大小,把磁碟 1分成多個分區來使用。指定卷大小

    2. 分配磁碟機代號和路徑對話方塊中,選擇分配以下磁碟機代號,並選擇盤符名稱(例如D),然後單擊下一步

      分配驅動號

    3. 格式化分區對話方塊中,選擇按下列設定格式化這個卷,並設定格式化資訊,然後單擊下一步

      設定格式化資訊

    4. 查看建立的簡單磁碟區資訊,單擊完成,關閉建立簡單磁碟區嚮導

    分區格式轉換完成後,磁碟管理磁碟 1的狀態如下圖所示。新磁碟狀態

(可選)步驟二:恢複雲端硬碟資料

如果您已備份並需要恢複原雲端硬碟資料,分區轉換完成後,您需要手動拷貝資料至原雲端硬碟,並確認資料無誤後再使用。

說明

如果您是通過快照備份資料:

  • 恢複資料時,需要通過快照建立一塊新雲端硬碟並掛載至ECS執行個體後拷貝資料,不可利用快照復原,避免復原至MBR模式。具體操作,請參見使用快照建立雲端硬碟掛載資料盤

  • 恢複雲端硬碟資料後建議刪除快照,避免快照產生計費。具體操作,請參見刪除快照

步驟三:擴容分區和檔案系統

MBR分區轉換為GPT分區成功後,您可依照擴容分區和檔案系統(Windows)繼續執行擴容分區及檔案系統操作。

常見問題

  1. 問題:運行轉換分區sgdisk -g命令時,提示如下資訊。

    Warning! Secondary partition table overlaps the last partition by 33 blocks!
    You will need to delete this partition or resize it in another utility.

    原因:雲端硬碟尾部剩餘空間不足33個扇區,沒有足夠的空間用於MBR轉換為GPT。

    解決方案:先參考步驟一:擴容雲端硬碟容量在ECS控制台擴容雲端硬碟容量後,再轉換分區格式。

  2. 問題:運行轉換分區sgdisk -g命令時,提示如下資訊。

    image

    原因:雲端硬碟頭部剩餘空間不足以容納GPT分區表所需的頭部資訊。這通常是因為資料或分區位於磁碟的非常靠前位置,沒有足夠的空間來放置GPT的分區表結構。這種情況下,是不支援轉換分區的。

    解決方案

    1. 為雲端硬碟建立快照備份資料。具體操作,請參見建立快照

    2. 建立一個新雲端硬碟並掛載至ECS執行個體。具體操作,請參見建立空資料盤掛載資料盤

    3. 通過rsync相關命令,將舊雲端硬碟的資料拷貝至新雲端硬碟。

    4. 卸載和刪除舊雲端硬碟。具體操作,請參見卸載資料盤釋放雲端硬碟

  3. 問題:運行轉換分區type sgdisk || yum install -y gdisk命令時,提示如下資訊。

    Error downloading packages:
      gdisk-0.8.10-3.1.al7.x86_64: Insufficient space in download directory /var/cache/yum/x86_64/2.1903/updates/packages
        * free   0
        * needed 190 k

    原因:下載目錄(/var/cache/yum/x86_64/2.1903/updates/packages)沒有足夠的空間來下載所需的包。

    解決方案:需要清理空間,增加下載目錄的大小。