Ubuntu server不停机扩容系统盘

警告: 操作有风险,数据无价,请务必事先备份数据。

  • 查看系统磁盘和容量信息
sudo fdisk -l

希仁之拥:

  • 查看磁盘挂载情况
sudo df -hl /

希仁之拥:

sudo lsblk

希仁之拥:

  • 查看逻辑卷和卷组信息
sudo vgdisplay

sudo lvdisplay

希仁之拥:

  • 在控制台上增加新的磁盘空间

提示:博主此处使用的是KVM虚拟化环境,VMware和Virtualbox之类的软件操作类似。

希仁之拥:

希仁之拥:

希仁之拥:

可以看到这里将系统磁盘大小从80G调整为了100G

  • 在终端再次查看磁盘信息
sudo fdisk -l  

希仁之拥:

看到红字部分已经提示提示磁盘空间发生变化了。

  • 执行扩容命令
sudo lvresize -L +20G /dev/ubuntu-vg/ubuntu-lv

希仁之拥:

因为我们是从80G扩容到100G,增加了20G,因此命令参数为20G

  • 查看逻辑卷和挂载信息

希仁之拥:

此时发现容量并未发生变化,这是因为我们需要刷新磁盘容量信息。

  • 刷新磁盘容量
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv

希仁之拥:

操作完成后,再次查看磁盘信息可以看到磁盘空间已经增加了20G。

但是到目前为止,还存在一个问题:在对虚拟机扩容时候,由于Linux系统没有对其磁盘信息进行更新,导致了磁盘实际容量和Linux系统容量不一致

查看磁盘信息时,看到有红字提示:

希仁之拥:

使用parted命令对磁盘信息进行更新

如果没有此命令请先安装 sudo apt-get install -y parted

sudo parted -l  

# 命令执行后,输入Fix,回车。

希仁之拥:

再次查看磁盘信息

希仁之拥:

至此,磁盘扩容操作完成。


(2024-10-23 10:47:07更新) 以下操作是在另外的机器,与上文的机器不同。


昨晚上因为推送镜像到Harbor失败,上Harbor的机器检查才发现是系统磁盘满了(最开始装机器是用的公用模板,系统盘都只有20G,中间扩了一次10G,所以在下面的图例中你将看到是30G),因此需要对系统盘进行扩容。扩容的时候遇到一点小问题,记录一下。

在PVE控制台为系统磁盘分配了新空间,扩展至80G。进入到Harbor机器,使用lvresize命令提示没有可用的空闲空间,但fdisk -l命令和lsblk命令都展示出系统盘/dev/sda已经是80G了。
iShot_2024-10-23_10.42.18.png

这里需要使用命令将空闲空间分配到第三个分区。

sudo growpart /dev/sda 3

iShot_2024-10-23_10.43.11.png
之后再执行lsblk命令查看结果:
iShot_2024-10-23_10.43.30.png
看到第三个分区的空间已经成功增长到了80G。
接下来,需要对物理分区大小进行重新计算:

sudo pvresize /dev/sda3

再接着将新增加的空闲空间分配到逻辑卷:

sudo lvresize -L +50G /dev/ubuntu-vg/ubuntu-lv

之后重新计算逻辑卷空间大小:

sudo resize2fs /dev/ubuntu-vg/ubuntu-lv

iShot_2024-10-23_10.44.47.png
最后我们来看一下最终的空间大小:
iShot_2024-10-23_10.45.25.png
到这里,系统磁盘的扩容算是真正的完成了。

转载请注明原文地址:https://blog.keepchen.com/a/ubuntu-server-non-stop-expansion-system-disk.html