我使用 Ubuntu Linux 开发应用程序,但通常让 Linux 管理员设置最终环境。我有一个 Linux 机器(通过 VMWare),里面装有我们的应用程序和 Docker 容器。这很有效,而且很棒。
我们现在需要将主驱动器/卷扩展到 10 TB 以上。最初,出于某种原因,他们使原始驱动器只有 1 TB。现在我们必须把它变大。
服务器团队(通过 VMware)为虚拟机(500gb)添加了磁盘空间,我通过一些教程能够通过 fdisk 将 500gb 添加到驱动器中。
太好了!现在他们为服务器增加了 10 TB 的空间。我可以看到空间,但是当我使用 fdisk 时,我发现它无法对大于 2 TB 的空间进行分区。
我在网上读到我可以使用 gdisk 或类似的东西。我的问题是:
1) 我怎样才能将这 10 TB 的空间添加到服务器?和
2) 如果我使用 fdisk 以外的东西设置这个分区,我以后可以用这个空间扩展我的主驱动器,因为它不是在 fdisk 中设置的吗?
gdisk是一个 Ubuntu 工具,它使您能够扩展分区。
正如男人所说,是的,你可以。最初使用的工具并不限制您使用其他工具。您可能会考虑使用LVM,因为随着事情的变化更容易调整分区。
您看到的 2TB 限制来自(古代,大约 1983 年)DOS MBR 分区表格式。您仅限于 2³² 扇区,其中 512 字节扇区是 2TiB 的来源。
fdisk
通常只支持 DOS MBR。对此的解决方案是使用更新的分区表格式 GPT。
gdisk
是处理 GPT 表的几个工具之一,它会在启动时尝试转换。转换仅在内存中完成,直到您点击w
. 如果您不只是扩展磁盘,这通常会失败,但您已经这样做了(GPT 需要磁盘末尾和开头的一些扇区;DOS MBR 不需要结尾)。当您启动 gdisk 时,您应该会看到如下内容:
您可以使用 fdisk 中您应该熟悉的普通命令来操作 GPT 分区表。
显然,您应该有备份,至少您的服务器团队应该对您的虚拟机进行快照。
从长远来看,您应该尽可能考虑使用非分区设备,也许是通过 LVM。然后扩展它们要容易得多,并且通常是在线操作(例如,如果您将未分区的设备提供给 LVM,它会很简单
pvresize /dev/whatever
,只需几分之一秒并在线完成)。