场景:
vmware 虚拟机,装了CentOS ,更改了虚拟机磁盘的大小:从200G,扩展到320G,可以参考本文写了步骤。
1. 在线扫描虚拟机SCSI新增的容量
# for i in `find /sys/class/scsi_host/host*`;do echo "- - -" > $i/scan; done
# for i in `find /sys/class/scsi_device/*`;do echo 1 > $i/device/rescan; done
2. 变更LVM容量
# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 cl lvm2 a-- 99.51g 0
/dev/sdb vg_data lvm2 a-- 300.00g 80.00g
# pvresize /dev/sdb
Physical volume "/dev/sdb" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 cl lvm2 a-- 99.51g 0
/dev/sdb vg_data lvm2 a-- 320.00g 100.00g
# vgs
VG #PV #LV #SN Attr VSize VFree
cl 1 2 0 wz--n- 99.51g 0
vg_data 1 1 0 wz--n- 320.00g 100.00g
# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root cl -wi-ao---- 79.98g
swap cl -wi-ao---- 19.53g
lv_data vg_data -wi-ao---- 220.00g
# lvextend -L +50G /dev/vg_data/lv_data #lvextend -l +100%FREE /dev/vg1/data 此命令完全扩容完vgs的容量
Size of logical volume vg_data/lv_data changed from 220.00 GiB (56320 extents) to 270.00 GiB (69120 extents).
Logical volume vg_data/lv_data successfully resized.
# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root cl -wi-ao---- 79.98g
swap cl -wi-ao---- 19.53g
lv_data vg_data -wi-ao---- 270.00g
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cl-root 80G 1.7G 79G 3% /
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 0 7.8G 0% /dev/shm
tmpfs 7.8G 8.5M 7.8G 1% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/sda1 477M 109M 339M 25% /boot
tmpfs 1.6G 0 1.6G 0% /run/user/0
/dev/mapper/vg_data-lv_data 220G 33M 220G 1% /data
3. 扩展文件系统的容量
# xfs_growfs /dev/vg_data/lv_data
meta-data=/dev/mapper/vg_data-lv_data isize=512 agcount=5, agsize=13106944 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=57671680, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=25599, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 57671680 to 70778880
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cl-root 80G 1.7G 79G 3% /
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 0 7.8G 0% /dev/shm
tmpfs 7.8G 8.5M 7.8G 1% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/sda1 477M 109M 339M 25% /boot
tmpfs 1.6G 0 1.6G 0% /run/user/0
/dev/mapper/vg_data-lv_data 270G 33M 270G 1% /data
#CentOS 6.x 的命令是:# resize2fs /dev/vg_data/lv_data
4. LVM缩小空间
谨慎操作LVM缩减空间!!!!!
目的:把lv_home卷缩小到只有10G,然后把缩小的空间给到swap分区,如下:
# umount /dev/VolGroup/lv_home #先卸载lvm卷
# e2fsck-f /dev/VolGroup/lv_home #先检查一下lvm卷
# resize2fs/dev/VolGroup/lv_home 10G #10G表示要卸载的lvm卷需要减少的容量,减到只有10G
# lvreduce-L 10G /dev/VolGroup/lv_home #lvm卷减少到只有10G
# lvdisplay|more #查看是否缩减成功,也可以使用lvs命令查看
# mount-a #重新再挂载一下
# resize2fs/dev/VolGroup/lv_home #重新扩展一下文件系统
# lvreduce-L +10G /dev/VolGroup/lv_swap #swap分区增加10G
# sync #同步写入磁盘
# swapoff/dev/VolGroup/lv_swap #关闭swap分区
# mkswap/dev/VolGroup/lv_swap #算是格式化成swap分区吧
# swapon/dev/VolGroup/lv_swap #开启swap分区