LVM分区缩容-xfs格式

问题

业务上要求调整分区大小,如 / 分区减少20G,划分给 /home。

操作流程

操作系统centos7 系列,文件系统格式为xfs格式,分区管理采用lvm管理。
由于xfs系统不支持resize2fs 缩容到指定大小,所以需要先备份分区内容,然后缩减lv,格式化lv,再恢复备份内容。下文展示为 /dev/mapper/centos-root lv 空间减小20G,划分给 /dev/mapper/centos-home

  1. 使用安装光盘启动系统,进入排错模式,选择3 不挂载文件系统。
  2. 在系统sh界面激活lvm,备份 / 分区,缩容 / lv,格式化 / lv 并恢复内容。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    vgchange -ay centos  #centos 为vg名称
    mount /dev/mapper/centos-home /mnt #将 home 分区挂载到mnt,放置备份文件。
    ## 确认文件系统并备份
    df -t /dev/mapper/centos-root
    xfsdump -f /mnt/root.xfsdump /dev/mapper/centos-root
    ## 减小root lv,并格式化
    lvreduce /dev/mapper/centos-root -L -20G
    mkfs.xfs /dev/mapper/centos-root
    ## 创建临时挂载点,将root lv挂载并恢复
    mkdir /mnt1
    mount /dev/mapper/centos-root /mnt1
    xfsrestore -f /mnt/root.xfsdump /mnt1
  3. 重启系统,进入系统后扩容home lv

    1
    2
    3
    lvextend /dev/mapper/centos-home -L +20G
    xfs_grows /dev/mapper/centos-home
    df -h #查看验证

总结

lvm管理文件系统灵活。
xfs格式文件系统和ext4文件系统处理方式不一样,ext4可以直接使用resize2fs.
实践出真知。

参考

https://blog.csdn.net/j_ychen/article/details/79404197