Linux

使用 GParted 更改分區表

  • March 21, 2020

我有一個 Ubuntu 12.04 LTS 伺服器,它在 RAID 5 配置(Perc 6/i)中具有 6x600GB SAS 驅動器。

分區方案如下所示:

Partition    File System   Mount Point    Size
/dev/sda1    ext2          /boot          243.00 MiB
/dev/sda2    extended                     1.09 TiB
 /dev/sda5  lvm2                         1.09 TiB
unallocated  unallocated                  1.64 TiB

我想擴展/dev/sda5分區以包含未分配的空間,並創建一個大分區。但是,當我嘗試擴展分區時,出現錯誤:

5854484482 個扇區的分區長度超過了 msdos-partition-table-imposed 的最大值 4294967295

我相信我需要創建一個新的分區表。但是,我也讀到這樣做會導致問題。

我的基本問題是:如果我從 GParted Live CD 啟動,應用新的分區表,擴展/dev/sda2分區並增加 LVM 的大小,系統會在之後啟動嗎,LVM 還會完好無損嗎?我了解始終存在數據損壞的可能性,並且我已經備份了所有內容。真正的問題是這是否是修改磁碟配置的正確方法。

或者,有沒有更好的方法將未分配的空間合併到 LVM 中?

喬丹有最好的建議。雖然 msdos 分區表不能容納大於 2TB 的單個分區,但是因為我有一個邏輯卷,所以我可以從未分配的空間(小於 2TB)中創建一個新的分區並將其添加到邏輯卷中。

首先,我從未分配的空間創建一個名為/dev/sda3GParted 的新的未格式化分區。

現在存在一個新分區,我需要創建一個 LVM 物理卷:

nalice@gerty:~$ sudo pvcreate /dev/sda3
 Physical volume "/dev/sda3" successfully created

接下來我需要擴展邏輯卷以包含新的物理卷:

nalice@gerty:~$ sudo lvextend -L2731.75G /dev/mapper/GERTY-root
 Extending logical volume root to 2.67 TiB
 Logical volume root successfully resized

請注意,-L參數lvextend表示邏輯卷的大小,而不是邏輯卷的擴展量。

最後,我擴展了文件系統以包含邏輯卷中的所有可用空間:

nalice@gerty:~$ sudo resize2fs /dev/mapper/GERTY-root 
 resize2fs 1.42 (29-Nov-2011)
 Filesystem at /dev/mapper/GERTY-root is mounted on /; on-line resizing required
 old_desc_blocks = 67, new_desc_blocks = 171
 Performing an on-line resize of /dev/mapper/GERTY-root to 716111872 (4k) blocks.
 The filesystem on /dev/mapper/GERTY-root is now 716111872 blocks long.

有了它,一個 2.9TB 的邏輯卷,無需更改分區表。

資料來源: http: //www.howtogeek.com/howto/40702/how-to-manage-and-use-lvm-logical-volume-management-in-ubuntu/

5854484482 個扇區的分區長度超過了 msdos-partition-table-imposed 的最大值 4294967295

這清楚地表明(邏輯)磁碟超過了 2 TB 限制。

要解決它 - 您必須使用GPT分區表。要改變它:

#parted /dev/sda mklabel gpt

**如果您將分區表從 msdos 更改為 gpt,您將失去所有數據!**確保您有一個備份來恢復數據。

如果您決定重組磁碟,請考慮將整個 RAID 陣列用作 lvm 物理卷。目前的 ubuntu 將/boot分區放在lvm. 這還有一個好處是您可以輕鬆調整此分區的大小。

引用自:https://unix.stackexchange.com/questions/67835