LVM 逻辑卷管理:不停机扩容磁盘的正确方式

发布时间:2026/6/30 9:28:39

LVM 逻辑卷管理:不停机扩容磁盘的正确方式 LVM 逻辑卷管理不停机扩容磁盘的正确方式买云服务器时硬盘往往选得比较保守等到磁盘快满了才想扩容。直接挂新磁盘可以但每个应用要分别挂载到不同路径管理起来麻烦。LVMLogical Volume Manager逻辑卷管理器允许把多块磁盘组合成一个大的存储池然后灵活分配给不同的逻辑卷扩容时不需要重建分区甚至不需要停机。LVM 三层结构物理卷PVPhysical Volume ↓ 组合成 卷组VGVolume Group ↓ 分割成 逻辑卷LVLogical Volume ↓ 格式化并挂载 文件系统类比PV 是原材料VG 是仓库LV 是仓库里分隔出来的储物间。安装 LVM 工具sudoaptinstall-ylvm2在云服务器上新挂载磁盘后的操作以 雨云 rainyuncom 的服务器为例在控制台新增一块数据盘比如 /dev/vdb然后在系统里操作。雨云新用户注册填优惠码2026off能领 5 折优惠券。# 查看当前磁盘lsblk# NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT# vda 252:0 0 40G 0 disk# └─vda1 252:1 0 40G 0 part /# vdb 252:16 0 50G 0 disk ← 新增的磁盘# 查看已有 LVM 信息sudopvdisplay# 物理卷sudovgdisplay# 卷组sudolvdisplay# 逻辑卷从零开始创建 LVM# 1. 创建物理卷PVsudopvcreate /dev/vdb# Physical volume /dev/vdb successfully created.# 2. 创建卷组VGsudovgcreate data_vg /dev/vdb# Volume group data_vg successfully created# 3. 创建逻辑卷LV# 创建一个 20GB 的逻辑卷sudolvcreate-L20G-ndata_lv data_vg# 或者使用全部可用空间sudolvcreate-l100%FREE-ndata_lv data_vg# 4. 格式化sudomkfs.ext4 /dev/data_vg/data_lv# 5. 挂载sudomkdir/datasudomount/dev/data_vg/data_lv /data# 6. 开机自动挂载echo/dev/data_vg/data_lv /data ext4 defaults 0 2|sudotee-a/etc/fstab扩展现有逻辑卷情况A卷组里还有空间# 查看卷组剩余空间sudovgs# 扩展逻辑卷增加 20GBsudolvextend-L20G /dev/data_vg/data_lv# 扩展后必须扩展文件系统sudoresize2fs /dev/data_vg/data_lv# ext4# 或者sudoxfs_growfs /data# xfs这步操作不需要卸载磁盘不需要停机数据完全安全。情况B需要添加新磁盘扩展# 新磁盘 /dev/vdc 挂载后# 创建新物理卷sudopvcreate /dev/vdc# 把新 PV 加入现有卷组sudovgextend data_vg /dev/vdc# 现在卷组有了更多空间再执行上面的 lvextendsudolvextend-L50G /dev/data_vg/data_lvsudoresize2fs /dev/data_vg/data_lv扩展根分区/根分区已满是常见的紧急情况。如果根分区使用了 LVMUbuntu 安装时选择 LVM 的情况可以热扩展# 查看根分区所在的逻辑卷df-h/# /dev/mapper/ubuntu--vg-ubuntu--lv ...# 扩展使用卷组全部剩余空间sudolvextend-l100%FREE /dev/ubuntu-vg/ubuntu-lv# 扩展文件系统sudoresize2fs /dev/ubuntu-vg/ubuntu-lv注意如果根分区不是 LVM需要重启到 Live CD 操作无法热扩展。所以新建服务器时推荐选择 LVM 分区方式。缩减逻辑卷危险操作需要谨慎# 先卸载sudoumount/data# 检查文件系统sudoe2fsck-f/dev/data_vg/data_lv# 缩小文件系统先于 LV 缩小sudoresize2fs /dev/data_vg/data_lv 15G# 再缩小逻辑卷sudolvreduce-L15G /dev/data_vg/data_lv# 重新挂载sudomount/data警告先缩文件系统再缩逻辑卷顺序反了会丢失数据。快照备份神器LVM 快照可以在几秒内创建一个一致的磁盘快照非常适合数据库备份# 创建快照分配 5GB 作为 CoW 存储空间sudolvcreate-L5G-s-ndata_lv_snap /dev/data_vg/data_lv# 挂载快照读取数据sudomount-oro /dev/data_vg/data_lv_snap /mnt/snap# 备份快照sudotarczf /backup/data-$(date%Y%m%d).tar.gz /mnt/snap# 卸载并删除快照sudoumount/mnt/snapsudolvremove /dev/data_vg/data_lv_snap常用命令速查# 物理卷sudopvs# 简洁显示sudopvdisplay# 详细信息sudopvcreate# 创建sudopvremove# 删除# 卷组sudovgssudovgdisplaysudovgcreatesudovgextend# 添加 PV 到 VG# 逻辑卷sudolvssudolvdisplaysudolvcreatesudolvextend# 扩展sudolvreduce# 缩减sudolvrename# 重命名sudolvremove# 删除LVM 是服务器磁盘管理的最佳实践主要价值是弹性扩容——业务增长导致磁盘不够时买一块新磁盘加入卷组几条命令完成扩容整个过程不停服。云服务商控制台加磁盘 Linux LVM 扩容是比迁移整个服务器便宜得多的应对磁盘紧张的方法。

相关新闻