在我们使用Linux系统过程中,经常会遇到根目录空间不足的情况,而部分目录空间不但大却使用不到,本文以CentOS 7系统为例介绍一下根目录扩容的操作。
在扩容之前需要先看看当前的系统分区,有标准分区和lvm分区,不同分区扩容方式也不同
区分lvm分区和标准分区
lvm分区:
标准分区:
lvm格式扩容
在扩容前,若是虚拟机需要注意:
1、若是存在快照,则需要新增一块磁盘,若没有快照,则可以直接给磁盘增加大小
2、扩容分为两种方式,减少其它目录空间(如/home)或者增加磁盘大小
调整分区扩容
1、df -hT
命令查看磁盘容量以及相应格式(后面需要)
2、取消home目录的挂载。取消挂载前需要把home下文件备份到其它目录,可使用命令mkdir backup && cp -r /home /backup
备份文件,然后输入命令umount /home
取消挂载,若出现无法卸载情况,可使用umount -lf /home
命令强制取消挂载。
3、使用命令lvreduce -L -50G /dev/mapper/centos-home
来重新分配home大小,将home分区减去50G,输入y确认减去
4、使用命令mkfs.xfs -f /dev/mapper/centos-home
重新格式化home分区,格式化后才能再次挂载到home下,会发现此时home分区已经减少了50G。
注意:该命令为格式化文件系统为xfs的命令,是否为xfs格式第1步时df -hT命令后type列即可查看
5、使用命令mount /dev/mapper/centos-home /home
来重新挂载home目录
6、使用vgdisplay
命令查看系统上的空闲空间,此时Free PE/size一栏增加了50G空间
7、使用命令lvextend -L +50G /dev/mapper/centos-root
给root目录增加50G空间
此处由于第一次操作时未加单位,故图片不是增加的原50G大小空间
8、 使用xfs_growfs /dev/mapper/centos-root
调整root分区大小,并用df -h
查看
(这里的centos-root为xfs格式,所以使用xfs_growfs
命令来刷新分区,若为ext4
,请将xfs_growfs
换成resize2fs
)
9、成功扩容之后可将原备份文件拷贝至home目录下,若相关文件组需要重新设置组,可使用chown命令来重新设置,此时也完成了对相应的分区扩容。
增加磁盘方式扩容
1.给虚拟机磁盘调整空间
2、分区fdisk /dev/sda
依次输入:
n(新分区)
p(选择主分区)
4(分区号)
t #修改分区格式
4 (分区号)
8e (#格式选择8e linux LVM)
w(保存)
3、重启系统
4、创建物理卷,使用pvcreate /dev/sda4
命令(此处博主的sda3已被使用了,故为sda4,此处可从sda1、sda2、sda3……向下递增选择)。
5、pvdisplay
命令查看新建的物理卷和大小。
6、使用vgextend centos /dev/sda4
命令,将新添加的物理卷,加载到centos卷组,并再次使用pvdispaly命令查看一下物理卷。
7、使用lvresize -L +50G /dev/mapper/centos-root
命令,增加50GB的centos-root大小。
8、重新识别centos-root大小,使用xfs_growfs /dev/mapper/centos-root
命令。并用df -h
查看增加后的大小。
(这里的centos-root为xfs格式,所以使用xfs_growfs
命令来刷新分区,若为ext4
,请将xfs_growfs
换成resize2fs
)
此时根目录由上面的200G增加至250G,已完成50G的扩容。