答案1
gparted
可以轻松做到这一点。顺便说一句,如果您不知道,您必须重新启动到 Live CD / USB,因为gparted
无法安全地移动或调整安装 RW 并正在使用的文件系统的大小。它无法移动运行的分区或调整其大小。 http://gparted.org/
具有可下载的 CD 和 U 盘 ISO 映像。
不管怎样,程序如下:
- 缩小
/dev/sda2
2G - 移动以在和
/dev/sda2
之间创建 2GB 的可用空间sda1
sda2
- 调整大小
/dev/sda1
并给它额外的 2GB
请注意,步骤 2 涉及移动 /dev/sda2 的每个字节。这可能非常耗时。
顺便说一句,你真的需要 8GB 交换空间吗?例如,您有 8GB RAM 并且正在使用挂起到磁盘。如果您实际上要交换那么多内存,正确的解决方案是向系统添加更多 RAM。如果您不执行挂起到磁盘的操作,那么最好这样做:
- 将 /dev/sda3 缩小 4GB
- 可选择缩小
/dev/sda2
2GB 或更多 - 移动
/dev/sda2
,使其齐平/dev/sda3
- 调整大小
/dev/sda1
以添加 4 或 6 GB 或更多。
但从长远来看,您最好的选择是sda
用 256 或 512GB 或更大的 SSD 替换 120GB(SSD?)。它们最近变得便宜很多,并且在不久的将来价格可能会再次大幅下跌。如果/当您这样做时,请不要再次犯下制作小型 rootfs 的错误 - 如果您无法为 root 分配至少 20-50GB(取决于您需要安装的软件),那么就不要有单独的/home
分区,只有一个大/
分区。
答案2
更改分区的起点相当复杂,包括移动一切在分区中。因此,如果 gparted 不支持这一点,我不会感到惊讶,但我从未使用过 gparted。如果它确实支持它,那么它可能已经经过测试达到安全的程度。
答案3
我无法仅通过使用来缩小分区gparted
。相反,我必须首先使用以下命令调整文件系统的大小resize2fs
:
resize2fs /dev/sdx# 50G
之后,我可以使用 gparted 缩小分区,不会出现任何问题或丢失数据。注意:仅调整分区大小,而不是整个磁盘。例如,不要选择 sda,而是选择 sda1。