使用 GParted 更改分区表

使用 GParted 更改分区表

我有一台 Ubuntu 12.04 LTS 服务器,它有 6x600GB SAS 驱动器,采用 RAID 5 配置 (Perc 6/i)。

分区方案如下所示:

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 分区表规定的最大值 4294967295

我相信我需要创建一个新的分区表。然而,我也了解到这样做可能会导致问题。

我的基本问题是:如果我从 GParted Live CD 启动,应用新的分区表,扩展分区/dev/sda2并增加 LVM 的大小,系统是否会在之后启动,并且 LVM 是否仍然完好无损?我知道总是存在数据损坏的可能性,而且我已经备份了所有内容。真正的问题是这是否是修改磁盘配置的正确方法。

或者,是否有更好的方法将未分配的空间合并到 LVM 中?

答案1

5854484482 个扇区的分区长度超过了 msdos 分区表规定的最大值 4294967295

这清楚地表明(逻辑)磁盘超过 2 TB 限制。

要解决这个问题 - 你必须使用GPT分区表。要更改它,请执行以下操作:

#parted /dev/sda mklabel gpt

如果您将分区表从 msdos 更改为 gpt,您将丢失所有数据!确保您有备份来恢复数据。

如果您决定重新组织磁盘,请考虑使用整个 raid 阵列作为 lvm 物理卷。现在的ubuntu把/boot分区放在.txt文件里面是没有问题的lvm。这还有一个好处是您可以轻松调整该分区的大小。

答案2

乔丹提出了最好的建议。虽然msdos分区表不能容纳大于2TB的单个分区,但因为我有一个逻辑卷,所以我可以从未分配的空间(小于2TB)创建一个新分区并将其添加到逻辑卷中。

/dev/sda3首先,我从未分配的空间创建一个新的、未格式化的分区,以 GParted 命名。

现在新分区已经存在,我需要创建一个 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-logic-volume-management-in-ubuntu/

相关内容