Linux下调整分区容量大小的方法(适用于centos6-7)
说明:以下方法均使用centos6.9和centos7.4进行测试。
Centos6分区容量调整方法
1、web分区空间不足,新添加一块硬盘给web分区扩容(基于LVM)。
[[email protected] ~]# pvcreate /dev/sdb        #创建物理卷
[[email protected] ~]# pvs        #查看物理卷状态
[[email protected] ~]# vgdisplay    #查看卷组信息
[[email protected] ~]# vgextend vg_centos6 /dev/sdb    #把sdb物理卷添加到vg_centos6卷组中
[[email protected] ~]# vgs    #查看卷组状态
[[email protected] ~]# lvs    #查看逻辑卷状态
[[email protected] ~]# lvextend -l +100%FREE /dev/mapper/vg_centos6-LogVol02
#把空闲的卷组空间全部添加到vg_centos6-LogVol02逻辑卷中
[[email protected] ~]# resize2fs /dev/mapper/vg_centos6-LogVol02
#调整vg_centos6-LogVol02逻辑卷的容量
[[email protected] ~]# df -h        #查看调整后的空间大小
2、给web分区缩容(基于LVM)。
[[email protected] ~]# df -h  #查看磁盘空间
[[email protected] ~]# umount /web        #卸载web分区
[[email protected] ~]# e2fsck  -f /dev/mapper/vg_centos6-LogVol02
#强制检查vg_centos6-LogVol02逻辑卷文件系统
[[email protected] ~]# resize2fs /dev/mapper/vg_centos6-LogVol02 20G
#调整vg_centos6-LogVol02逻辑卷在文件系统中的容量为20G
[[email protected] ~]# lvs        #查看逻辑卷信息
[[email protected] ~]# lvresize  -L 20G /dev/mapper/vg_centos6-LogVol02
#调整vg_centos6-LogVol02逻辑卷的容量为20G
[[email protected] ~]# mount /web        #挂载web分区
[[email protected] ~]# df -h        #查看调整后的空间大小
#可以通过vgdisplay查看减少的空间,减少的空间可以增加到其他的逻辑卷上面,也可以留作备用。
Free  PE / Size       6565 / 25.64 GiB
3、根目录(/)空间不足,其他目录空间有很大的空闲,在不增加硬盘的情况下,在线对已有的空间进行调整(基于LVM)。
查看磁盘分区信息
[[email protected] ~]# e2fsck -f /dev/mapper/vg_centos6-LogVol02
#强制检查vg_centos6-LogVol02逻辑卷文件系统
[[email protected] ~]# resize2fs -p /dev/mapper/vg_centos6-LogVol02 15G
#调整vg_centos6-LogVol02逻辑卷在文件系统中的容量为15G
[[email protected] ~]# lvreduce -L 15G /dev/mapper/vg_centos6-LogVol02
#把vg_centos6-LogVol02逻辑卷的空间调整为15G
[[email protected] ~]# vgdisplay        #查看卷组的信息
[[email protected] ~]# lvextend -L +10.64G /dev/mapper/vg_centos6-lv_root
#把空闲的空间加到vg_centos6-lv_root逻辑卷中
[[email protected] ~]# resize2fs -p /dev/mapper/vg_centos6-lv_root
#调整vg_centos6-lv_root逻辑卷在文件系统中的容量
#所遇到的问题
1、在卸载/home目录的时候失败
可先执行如下fuser命令,然后再umount即可:
[[email protected] ~]# fuser -m /web
2、设定完vg_centos6-LogVol02的大小,再次mount该分区时,发现用df命令无法看到给分区,此时只要在mount一次即可
3、在设定vg_centos6-lv_root的大小时,不要把Free PE / Size的空间全部都用上,这很可能会出现Free PE空间不足的现象,建议保留一点Free PE的空间。
centos7调整分区容量方法
web分区空间不足,新添加一块硬盘给web分区扩容(基于LVM)。
[[email protected] ~]# pvcreate /dev/sdb
[[email protected] ~]# vgextend cl /dev/sdb
[[email protected] ~]# lvextend -l +100%FREE /dev/mapper/cl-web
[[email protected] ~]# xfs_growfs /dev/mapper/cl-web
减少/web分区空间,扩大/ 的空间。
[[email protected] ~]# df -h            #查看磁盘空间状态
[[email protected] ~]# tar cvf /web.tar /web            #把web下的文件打包备份到/目录下
[[email protected] ~]# umount /web            #卸载/web
[[email protected] ~]# lvremove /dev/mapper/cl-web            #删除web逻辑卷
[[email protected] ~]# lvextend -L +5G /dev/mapper/cl-root            #扩展root逻辑卷,增加5G空间
[[email protected] ~]# xfs_growfs /dev/mapper/cl-root        #扩展root逻辑卷文件系统
[[email protected] ~]# lvcreate -L 20G -n web cl        #重新创建web逻辑卷(web是lv name,cl是vg name)
[[email protected] ~]# mkfs.xfs /dev/cl/web        #创建文件系统
[[email protected] ~]# mount /dev/cl/web /web        #挂载
[[email protected] ~]# df -h        #查看
[[email protected] ~]# cd /web        #进入web目录
[[email protected] web]# tar xvf /web.tar        #把备份的数据解包到web目录
[[email protected] web]# ls            #查看解包的数据