Linux VPS 无损硬盘扩容

By | 2024年1月2日

随着业务的逐渐扩展,我们以往所购买的 VPS 配置终将迎来需要扩容的一天。不过众所周知内存和 CPU 只需要关机再启动即可升级完毕,但硬盘却是不会自动扩容的。本文将介绍 Linux 下硬盘无损扩容的一种方案,避免了重装或是数据迁移的麻烦。

一如既往的,教程基于 Debian 系统。所需软件只有一个:MobaXterm ,在官网下载免费版即可。我们会使用它来远程运行图形化分区程序。虽然命令行的优点很多,但分区软件还是图形化比较直观。

当然,如果机器上并没有什么数据的话,直接重装要方便得多。

1.安装运行GParted

GParted 是一款带有图形界面的硬盘分区软件,没什么费事的直接从软件源安装即可:

apt install --no-install-recommends gparted

安装完成后直接运行:gparted,或者也可以手动指定硬盘:gparted /dev/sda 。由于是远程运行的缘故,本地的图形界面响应可能比较慢,属于正常现象。

2.扩容逻辑分区

待 GParted 加载完硬盘分区后,根据系统安装时的不同,你可能会看到一块主分区,一块扩展分区和一块空闲空间。但也有可能会看到两块主分区,不过这种情况较为简单,只需要直接选中后进行移动即可,这里便不再额外额外进行说明。

下面我们的教程都是基于一块主分区,一块扩展分区(其中包含 SWAP )和一块空闲空间的情形。这种情况相对复杂,并不能直接移动 SWAP 分区来达到扩容数据分区的目的。

以上图为例,原有的磁盘分区为一块 49GB 的数据分区,一块 975MB 的扩展分区,以及新扩容的 50GB 空闲空间。保险起见首先将 SWAP 分区卸载,选中 /dev/sda5 后,在菜单中点选:Partition - Swapoff

现在我们开始扩容扩展分区,首先点击选中 /dev/sda2 ,在菜单中点选:Partition - Resize/Move 。在随后的弹出窗口中,将 New size 增加至最大值,点击 Resize/Move ,最后回到主页面点击对勾图标保存更改。

3.移动 SWAP

接下来我们便可以移动 SWAP 分区了,在选中 /dev/sda5 后,点选菜单:Partition - Resize/Move 。此时可以直接使用鼠标将 SWAP 拖动至最右侧,也可以将 Free space preceding 增至最大来移动分区,如上图所示。

同样的,修改后点击 Resize/Move ,最后回到主页面点击对勾图标保存更改。

4.压缩扩展分区

在移动好 SWAP 分区后,外层的扩展分区依然占用着大量的空闲空间。这并不是我们想要的,所以接下来对扩展分区进行裁剪。在选中 /dev/sda2 后,点选菜单:Partition - Resize/Move 。在弹出窗口中,使用鼠标将分区减至最小,或将 Free space preceding 增至最大,并调整选项 Align to: None

如上图所示,修改后点击 Resize/Move ,最后回到主页面点击对勾图标保存更改。

5.扩容数据分区

做完了所有的准备工作,接下来这一步是最简单的了。在选中 /dev/sda1 后,点选菜单:Partition - Resize/Move 。按照与之前同样的操作方法,将数据分区扩容至最大,并保存应用即可。

最后也别忘了选中 /dev/sda5 ,点选菜单:Partition - Swapon 来恢复 SWAP 分区。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

滑动到最右以进行验证 *