Debian 扩充系统盘容量

不管是 VPS 还是弹性云主机,包括独立服务器。用 linux 来搭建建站环境挂载硬盘其实是件容易遗漏但却很重要的事情,很多新手在都会忽略这件事,用一段时间后发现空间不足,其实空余的大量硬盘空间没挂载,没有投入使用。或者是买来的 linux 主机明明有更大的硬盘却没用上。这种问题就是挂载硬盘的问题。

首先 SSH 链接后可以 df -hal 看看这一部分,参考。

2612773-a1cee7feb037114d.webp

橙色部分:是当前硬盘使用状况而且是系统盘的状况,我们要做的就是将未使用的硬盘空间添加到系统盘。
绿色部分:留意就好,它会告诉你后面添加硬盘时往哪里添加。

接下来进入开始动手,和挂载到目录前面方法不变。

通过 fdisk -l 命令查看当前闲置的硬盘空间

2612773-836d045f63f89918.webp

如上图所示,看到了这块闲置硬盘空间。/dev/sdb 42G 有余

接下来开始分区,格式化,然后再将其添加到系统盘。

命令 fdisk /dev/sdb (这里对应你主机闲置的磁盘)

可以参考《linux(centos)下 fdisk 分区并挂载目录》中的做法,因为这部分做法都一致。

2612773-a09405d63a1b7266.webp

成功添加新的分区之后,最后一步如上图所示是键入 W 保存退出。

紧接着就是格式化这个分区,方法如下:

mkfs.ext3 /dev/sdb1     sdb1 是我们刚刚新建的分区

然后创建物理卷并加入到组

用 pvcreate /dev/sdb1 创建物理卷
然后用 vgextend VolGroup00 /dev/sdb1 将该卷加入到 名为 VolGroup00的组中

关键问题请注意:上面代码中的 VolGroup00 也就是 VG name 以及后面即将用到的 LV name 并不是很多教程里恰巧所提及的固定名称,例如:"lvresize -L +4.95G /dev/VolGroup00/LogVol00" "resize2fs /dev/VolGroup00/LogVol00",这当中所包含的内容 "VolGroup00/LogVol00" 并不是固定的,不同供应可能会是各种名称,如何查看?方法是:

命令 lvdisplay

2612773-e4e47f72a9f93d5c.webp

如下图,VG 和 LV 名称可以明确看到。另外请注意上方特征,就是我们开篇所讲的绿色部分。因为会也许会发现不止一个盘,你如果认错了系统盘,后果你懂。

知道了如上内容,那么现在开始创建物理卷并将新创建的物理卷加入到组:

命令 pvcreate /dev/sdb1
命令 vgextend vg_cloud /dev/sdb1

完成后

键入命令 vgdisplay 查看物理卷及空间情况

2612773-f9c0699d70ead49d.webp

上图已经非常清楚的看到,允许使用的自由(空闲)空间为 39.99G,不要问我为什么不是 42G,总会有些系统须求。
如果上面一切没有问题,那么就是最后一步,将新增盘添加到系统盘!

首先显示可以增加空间是 39.99G,但我们也还要给点零头作为预留,所以增加 39.5G,如果你觉得那都是小事,可以直接 39G。

命令 lvextend -l +100%FREE /dev/vg_cloud/lv_root

此处请注意!上面的 -L 要大写 L 如果是小写 l 那么后面跟的数值和单位就不是 +39.95G 了,而是:逻辑卷的大小 按(LE 数)
上下命令行中包含的 vg_cloud 这个名称是对应 VG Name,而 lv_root 这个名称是对应 LV Name。
接下来 动态扩容分区大小

命令 resize2fs /dev/vg_cloud/lv_root

最后,检查确认。

命令 df -hal

2612773-2c0915a71f181de8.webp

如上图,已经增加完毕。对比原来系统盘空间大小,结果显而易见。

不过我也遇到过不同情况,根本不给你机会。比如 vgdisplay 和 lvdisplay 时直接被回复一个 "No volume groups found ",(如下图)我也没有细细再去折腾了,因为好的地方是那台 VPS 根本不需要我去挂载什么,几乎完整份额的系统盘。

2612773-4393af05206fdcfa.webp