Linux命令-lvreduce (收缩逻辑卷空间)

lvreduce 命令用于缩减逻辑卷(Logical Volume)的容量,这是一个高风险操作,操作不当会导致数据丢失,务必提前备份数据并严格遵循操作顺序。

核心原则:先缩减文件系统,再缩减逻辑卷

顺序与 lvextend 完全相反,且必须手动执行。

基本语法

bash 复制代码
lvreduce [选项] <逻辑卷路径>

关键选项

选项 说明
-L [-]大小 最常用 。指定缩减后的最终大小 (-表示减少量)。
-l [-]逻辑区块数 用逻辑区块(LE)数量指定大小。
-f / --force 强制操作,跳过某些确认提示。慎用。
-r 注意 :此处的 -r 仅尝试在缩减LV前调整文件系统,不支持大多数文件系统,不可依赖。

安全操作流程(以 ext4 文件系统为例)

绝对顺序:检查可用空间 → 卸载 → 检查文件系统 → 缩减文件系统 → 缩减逻辑卷 → 重新挂载

  1. 检查当前使用情况,确定可缩减空间

    bash 复制代码
    df -h /dev/myvg/mylv        # 查看已用空间,决定缩减到多少
    sudo e2fsck -f /dev/myvg/mylv # 强制检查文件系统,为缩减做准备
    sudo resize2fs /dev/myvg/mylv 15G # **关键一步:先将文件系统缩小到目标大小(例如15G)**
  2. 卸载逻辑卷(如果可能)

    bash 复制代码
    sudo umount /dev/myvg/mylv

    如果无法卸载(如根分区),必须进入单用户模式或救援模式操作。

  3. 执行逻辑卷缩减

    bash 复制代码
    sudo lvreduce -L 15G /dev/myvg/mylv # 将逻辑卷大小设置为与文件系统一致(15G)
  4. 重新挂载并检查

    bash 复制代码
    sudo mount /dev/myvg/mylv /mnt
    df -h /mnt

完整示例:将 /dev/vgdata/lv1 从 30G 缩减到 20G

bash 复制代码
# 1. 备份数据!
# 2. 检查文件系统,并强制缩减文件系统到20G(必须小于目标LV大小)
sudo umount /dev/vgdata/lv1
sudo e2fsck -f /dev/vgdata/lv1
sudo resize2fs /dev/vgdata/lv1 20G

# 3. 缩减逻辑卷
sudo lvreduce -L 20G /dev/vgdata/lv1
# 系统会警告数据可能丢失,确认已缩减文件系统后输入 `y`

# 4. 重新挂载验证
sudo mount /dev/vgdata/lv1 /your_mount_point
df -h /your_mount_point

重要警告

  • XFS 文件系统不支持缩小! 只能备份、重建、恢复。
  • 操作不可逆:缩减后空间被释放回卷组,数据无法直接恢复。
  • 预留缓冲:缩减文件系统时,目标值应略小于逻辑卷目标值(如文件系统19G,逻辑卷20G),避免计算误差导致损坏。

总结 :lvreduce 的核心是 "文件系统先行"。除非空间紧急且已充分备份,否则更安全的做法是备份数据后,删除逻辑卷并按需重建。

相关推荐
feng_you_ying_li4 分钟前
linux之网络层
linux·运维·网络
未来之窗软件服务13 分钟前
Linux 运维日志删除的多种方式—东方仙盟
linux·运维·服务器·仙盟创梦ide·东方仙盟
卓豪终端管理15 分钟前
IT 运维视角下的终端数据安全:能力框架与落地清单
运维
小雉系统25 分钟前
BcoreOS实战:用一个升级包,让Rocky Linux跑进Debian服务器
linux·运维·服务器·debian
thethefighter26 分钟前
快速预览Word、WPS秒开,支持空格弹窗
linux·word·wps·快速预览·空格弹窗·nhdeepview
甜到心里的蛋糕32 分钟前
从 QQ 机器人到 B 站 AI 运营:一套可复现的视频流水线踩坑实录
运维·人工智能·python·自动化·视频制作
QYR-分析44 分钟前
26.2% 高增!场内及园区无人物流车,厂内短驳自动化的 L4 货运载体
运维·自动化
熊猫钓鱼>_>1 小时前
鸿蒙 PC 三方库适配复盘:libfvad 1.0 —— 把 WebRTC VAD 做成能装进采集链路的静态库
服务器·开发语言·华为·harmonyos·openharmony·适配·鸿蒙pc
用户8351414049491 小时前
把日志和寄存器值喂给AI做故障定位,我的实际问法
linux·ubuntu
java_logo1 小时前
Docker 部署 DPanel:轻松搭建轻量容器管理平台
运维·docker·容器·podman·容器管理·dpanel·轩辕镜像