今天给服务器的一个LVM卷扩容 遇到了一个奇怪了问题 最后发现是个坑
问题描述
- 之前这个硬盘是Windows下使用了 原来的分区并没有删除 只是格式化了其中一个分区给Linux
- 最近Linux容量不够了 打算把之前Windows的C盘分区 添加到Linux的LVM里面
- 一切按照预想中的操作进行
- 因为这个盘本来就是没有挂载的 所以可以直接修改分区类型
- 进入分区管理
fdisk /dev/sda - 按
t输入8e(Linux的LVM分区类型) - 按
w保存分区表 这个时候提示重新读取分区表错误 - 重启完成之后
vgextend centos /dev/sda1添加到VG里面 - 然后扩容LV
lvextend -l +100%FREE /dev/mapper/centos-home - 然后刷新LV的容量
xfs_growfs /dev/mapper/centos-home - 到这里 提示错误
Re-reading the partition table failed with error 22
问题解决
百度之后 发现我忘了添加VG的时候输入vgcreate
捂脸捂脸捂脸然后我就去减少LV的容量
lvresize -l -20G /dev/mapper/centos-home继续移除VG
vgreduce centos /dev/sda1这个时候提示
Physical volume "/dev/sda1" still in use一脸懵比 什么鬼 大概浪费了20分钟左右 发现分区缩小的不够多
= =大概计算了一下 又缩减了 20G
lvresize -L -20G /dev/mapper/centos-home然后继续移除
vgreduce centos /dev/sda1成功了==============我是分割线===================
创建VG
pvcreate /dev/sda1扩展VG
vgextend centos /dev/sda1调整LV大小
lvextend -l +100%FREE /dev/mapper/centos-home把剩余的都加上重新调整文件系统
xfs_growfs /dev/mapper/centos-home这个时候提示 文件系统未挂载
xfs_growfs: /dev/mapper/centos-home is not a mounted XFS filesystem把LVM挂载回home
mount /dev/mapper/centos-home /home重新调整文件系统
1
2
3
4
5
6
7
8
9
10
11[root@localhost /]# xfs_growfs /dev/mapper/centos-home
meta-data=/dev/mapper/centos-home isize=256 agcount=4, agsize=2575104 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0 finobt=0 spinodes=0
data = bsize=4096 blocks=10300416, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal bsize=4096 blocks=5029, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 10300416 to 23117824最后 查看容量
/dev/mapper/centos-home 89G 407M 88G 1% /home已经扩容成功了