磁盘报警 机房一台老的虚拟服务器跑业务跑了半年,日志把 / 根目录直接撑爆了。在控制台花钱给硬盘买到了 40G,但重启进系统一看,df -h 还是显示 20G,因为新加的空间系统根本不认。

LVM 的魔法时刻 好在装系统的时候选择了 LVM(逻辑卷管理)分区。这玩意儿就像个面团,可以随时把新面粉揉进去,不需要重启,也不需要重新格式化。

惊心动魄的操作步骤 每一步都要极其小心,敲错可能就把数据干没了。

  1. 识别新硬盘空间:用 fdisk -l 看到了 /dev/sda 确实变成了 40G。利用 fdisk 或者 parted 命令,把后面多出来的 20G 划成一个新的分区 /dev/sda3
  2. 创建物理卷 (PV)
1pvcreate /dev/sda3
  1. 把物理卷加入原来的卷组 (VG): 先用 vgdisplay 查到组名叫 ubuntu-vg
1vgextend ubuntu-vg /dev/sda3
  1. 扩容逻辑卷 (LV): 把所有剩余空间全部梭哈给根目录所在的卷:
1lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
  1. 通知文件系统生效(最神奇的一步,热扩容): 如果是 ext4 格式:
1resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv

(不用卸载硬盘,直接无损拉大空间!)

敲完最后一行,再敲 df -h,容量瞬间变成 40G,业务一秒钟都没断过。底层运维的暴力美学莫过于此。