Linux 中的 resize2fs 命令
在机器上,可以使用 resize2fs 指令扩展或收缩 ext2/3/4 目录系统。已部署的文件系统在安装时可以扩展,但不能缩小。要扩展或收缩文件系统,用户可以选择首选大小。如果您不明确大小,文件系统将被重新格式化为与分区相同的大小。重要的是要记住 resize2fs 只是调整文件系统的大小;它无法调整分区大小。在扩展文件系统之前,您应该首先使用 fdisk 或 LVM 实用程序等查询来增加磁盘或容器的大小。
在今天的指南中,我们将向您展示一种在 Linux shell 上使用 resize2fs 指令来调整分区大小的方法。在调整分区大小之前,我们必须确保 Linux 系统已完全更新和升级。如果没有,请从 Linux 系统打开 shell 应用程序,并在其查询区域使用“apt”实用程序尝试下面所示的指令。更新指令将在几分钟内更新您的 Linux 系统。
Linux系统更新后,请确保您已经使用升级后的系统。通过尝试通过“apt”实用程序执行升级指令,您可以确保系统已升级。
升级 Linux 系统(即 Ubuntu 20.04)的过程可能需要您确认才能继续系统更新。您必须从键盘上点击“y”并按 Enter 键。
在调整分区大小之前,我们必须了解 Linux 系统中的所有磁盘或设备。为了检查分区,Linux 提供了“lsblk”指令。运行后,我们会在终端屏幕上列出所有设备。我们的虚拟驱动器“sda”在下面的列表中列出,大小为 40GB。除此之外,它还有 2 个分区。 sd1 分区是根目录,其他分区是主驱动器。
每当您想要获取有关您拥有的驱动器及其分区的更多信息时,您往往会在 shell 中使用 fdisk 指令。 fdisk 指令应与“sda”驱动器的路径一起使用,即“/dev/sda”。
运行此指令后,您将进入可以对 sda 进行调整的界面。写入“p”以获取驱动器信息,例如其型号、字节总数、扇区大小、输入/输出解析大小、标签类型(即 des)及其标识符号以及有关其分区的信息。您可以看到分配给每个分区的内存总量、分区类型以及一些 ID 和扇区数据。
获取 sda 目录中的分区信息后,我们需要删除分区以调整其大小。我们可以选择删除任何分区或所有分区并创建新分区。要从“sda”目录中删除分区,我们必须在“命令”区域添加关键字“d”。
运行“d”命令后,系统会要求我们根据已有的分区添加分区号。该分区号将指定要删除的分区。它将显示分区编号以及要删除的分区的默认编号,即建议的分区编号为 5。
假设您要删除 2 号分区,即 sda2。为此,输入“2”并按 Enter 继续。您将收到一条成功消息,表明分区 2 已成功删除。之后,再次尝试使用“d”指令删除sda设备的另一个分区。这次,它选择分区 1 本身,并根据输出成功删除它。删除所有分区后,我将不再允许你执行“d”指令。
删除所有分区后,我们必须在同一 sda 设备中创建一个新分区。为此,请在我们提供的命令区域中尝试“n”命令。使用此说明后,您将获得两个选项来选择分区类型。 “p”代表“主”分区,“e”代表“扩展”分区。 “选择”查询区域要求您指定要创建的分区类型。如果您不指定任何一个,它将默认选择主分区,如下图所示。您需要向分区添加一个数字。如果未指定,它将选择数字 1。指定该分区的大小,即 2048 等于 40GB。
选择扇区后,您的分区将成功创建,即已生成大小为40的分区。此后,系统将询问您是否要删除签名。点击“Y”将其删除;否则,请点击“N”以避免删除签名。在这里,我们不打算删除签名。
再次使用“p”命令后,您将看到设备“sda1”已创建,大小为40,类型为“Linux”。
是时候写下改动了。为此,您必须在同一 sda 接口上使用“w”指令,您的分区表将成功更改。然后磁盘将同步在一起。
是时候使用 resize2fs 指令根据我们创建的新分区来调整 sda1 设备的大小了。为此,请在 Linux 终端中使用“resize2fs”指令以及路径“/dev/sda1”,如图所示。使用此指令后,您的 sda1 分区将被调整大小。
使用“df”指令和“-h”选项表明分区 sda1 已自动调整大小。
结论
我们已经解释了如何在终端 shell 中使用 resize2fs 指令来调整文件系统的大小。为此,我们需要删除以前的分区并创建新分区。之后,我们可以调整文件系统的大小而不影响总大小。