lvm卷缩减和扩容

  • xfs文件系统
  • 操作
  • exit文件系统
  • 卸载文件系统
  • v检查文件系统是否有错误。
  • 缩小文件系统。
  • 减少逻辑卷(LVM)
  • LVM减少后再检查文件系统是否有错误


xfs文件系统

注:xfs格式不支持逻辑分区减小。故,我们考虑通过移除home目录后重建来完成这个任务。

在/etc/fstab中查看  
或 
使用命令 df -T
lsof /home/
查看哪些应用在使用home目录

操作

1.终止占用 /home 进程

fuser -m -v -i -k /home

2.备份/home

cp -r  /home/  homebak/

3.卸载 /home

umount /home

4.删除/home所在的lv

lvremove /dev/mapper/centos-home

5.扩展/root所在的lv,增加

lvextend -L +增加的内存大小 /dev/mapper/centos-root

6.扩展/root文件系统

xfs_growfs /dev/mapper/centos-root

7.重新创建home lv,这里可能出现文件系统大小不够的情况,这时,你需要删除/目录里的一部分数据。

lvcreate -L 40G -n home centos

8.创建文件系统

mkfs.xfs /dev/centos/home

9.挂载

mount /dev/centos/home /home

10.还原 /home 相关文件以及对应目录权限

exit文件系统

减少/缩小逻辑卷会给数据非常大的损坏风险。所以,如果可能的话,尽量避免这种情况,但如果没有其他选择的话,只能这样操作了。
缩减LVM之前,建议先做一个备份。
当你在LVM中的磁盘空间耗尽时,你可以通过缩小现有的不再使用全部大小的LVM来在卷组上腾出一些空闲空间,而不是增加一个新的物理磁盘。
请注意:在GFS2或XFS文件系统上不支持收缩。
减少逻辑卷涉及以下步骤:
卸载文件系统。
检查文件系统是否有错误。
缩小文件系统大小。
缩小逻辑卷的大小。
重新检查文件系统是否有错误(可选)。
挂载文件系统
检查减少的文件系统大小
例如;你有一个100GB的LVM,使用不完了,你想把它减少到80GB,这样20GB可以用于其他用途。

#df -h /home

删除centos路由 centos删除lv_centos

卸载文件系统

使用umount命令卸载文件系统

# umount /home

v检查文件系统是否有错误。

使用e2fsck命令检查文件系统是否有错误。

#e2fsck -f /dev/mapper/centos-home

e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/mapper/centos-home: 13/6553600 files (0.0% non-contiguous), 12231854/26212352 blocks

缩小文件系统。

下面的命令可以将 "/dev/mapper/centos-home "文件系统从100GB缩小到80GB。
文件系统缩减的常用语法(resize2fs)

resize2fs [Existing Logical Volume Name] [New Size of File System]

实际命令如下:
# resize2fs /dev/mapper/centos-home 80G

resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/mapper/vg01-lv002 to 28321400 (4k) blocks.
The filesystem on /dev/mapper/vg01-lv002 is now 28321400 blocks long.

减少逻辑卷(LVM)

现在使用lvreduce命令缩小逻辑卷(LVM)的大小。下面的命令"/dev/mappercentos-home "将把逻辑卷(LVM)从100GB缩小到80GB。
缩小LVM Reduce的常用语法

lvreduce [New Size of LVM] [Existing Logical Volume Name]
实际命令如下:

# lvreduce -L 80G /dev/mapper/centos-home

WARNING: Reducing active logical volume to 80.00 GiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv002? [y/n]: y
Reducing logical volume lv002 to 80.00 GiB
Logical volume lv002 successfully resized

可选。检查文件系统是否有错误

LVM减少后再检查文件系统是否有错误

# e2fsck -f /dev/mapper/centos-home

6)挂载文件系统,检查缩小的大小
最后挂载文件系统,并检查减少的文件系统大小。
使用mount命令来挂载逻辑卷。

#mount /dev/mapper/centos-home /home
#df -h /home