上周也是客户反馈,电子票据的web服务器突然无法使用了。经过一通排查,发现是服务器的磁盘空间满了,导致服务卡死了。
这是一台Linux服务器,当时安装的时候也是能过LVM逻辑卷管理的方式进行安装部署的,所以我们通过LVM扩容的方式很快处理好了这个问题。
# 查看物理卷、卷组、逻辑卷状态pvs # 物理卷信息vgs # 卷组信息 lvs # 逻辑卷信息# 查看磁盘空间lsblkfdisk -l
此处是虚拟机,直接添加一块虚拟硬盘,如果是物理机,可能涉及RAID扩容或者SAN存储扩容操作。# 对新磁盘分区(可选)fdisk /dev/sdb# 在fdisk中:n → p → 1 → 回车 → 回车 → t → 8e → w# 创建物理卷pvcreate /dev/sdb1# 或直接使用整个磁盘pvcreate /dev/sdb
# 查看已有分区lsblk# 调整分区大小(如需要)parted /dev/sda resizepart 2 100%
# 基本用法vgextend vg_name /dev/sdb# 实际示例vgextend ubuntu-vg /dev/sdb# 一次添加多个物理卷vgextend vg_name /dev/sdb /dev/sdc
# 查看可用的卷组空间vgs# 扩展逻辑卷(使用所有可用空间)lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv# 或指定具体大小lvextend -L +10G /dev/vg_name/lv_name # 增加10Glvextend -L 50G /dev/vg_name/lv_name # 扩展到50G
5.扩展文件系统大小
ext2/ext3/ext4文件系统扩容方法:
# 在线调整(无需卸载)resize2fs /dev/ubuntu-vg/ubuntu-lv# 如果resize2fs报错,可以先检查文件系统e2fsck -f /dev/ubuntu-vg/ubuntu-lvresize2fs /dev/ubuntu-vg/ubuntu-lv
# XFS只能增大,不能减小xfs_growfs /mount/point# 示例:如果挂载在 /homexfs_growfs /home
至此,可以看到根目录已经扩容成功了,一步一步操作下来其实非常简单,但对于生产系统的任何操作命令,在执行前我们一定要想清楚执行的后果,是否可能会造成数据的丢失,特别对于磁盘的操作,一旦失误,可能会造成严重的后果,一定要做到胆大心细。希望大家能理解整个过程的逻辑,明白每一条命令执行的意义。