linux磁盘扩容
一: 同一磁盘扩容(指一个磁盘还有未分配的空间扩容)
1. 查看磁盘信息,确认是否有空间进行扩容

上图可见,我根目录有15G的空间,挂载的磁盘是/dev/sda3的磁盘
$ df -h2. 执行fdisk -l命令查看磁盘分区状态,如下图

上图可见,/dev/sda磁盘目前有25G的空间,有三个分区/dev/sda1,/dev/sda2,/dev/sda3,我们需要扩容/dev/sda3而且该分区的size是15G,确定可扩容10G。
$ fdisk -l3. 开始扩容
执行命令,parted /dev/sda 进入磁盘,输入p可以看分区详情

可以看到有三个分区,硬盘总容量为25G,分区3的容量为14.5G,我们将3分区进行扩容
$ parted /dev/sda4. 执行resizepart 3
$ resizepart 3会提示根分区正在使用,是否继续,输入yes,然后提示输入要扩到多大的容量,我们也可以输入25GB,也可以输入-0,-0的意思是将剩余所有空间都分给3分区。扩完以后输入p查看分区详情:

5. 退出之后,用 df -h 命令看发现没有任何改变,但是使用 lsblk 命令会发现已经扩容成功了,因为这只是 block device 容量变大了,还没有反映到 file system 中

$ df -h
$ lsblk6. 此时需要使用resize2fs 命令来更新磁盘信息

再次使用df -h命令查看,发现根目录已经扩容成功。
$ resize2fs /dev/sda3二:新增一块磁盘,并扩容到原有分区
1.新增一块磁盘 /dev/sdb 大小为20G,并把空间扩容至 / 分区
$ df -h
$ fdisk -l
2.对 /dev/sdb 进行分区,并设置分区属性
t: 修改分区文件系统id,选择8e,LVM(与原有分区一致)
L:列出所有Hex代码
$ fdisk /dev/sdb
3.输入partprobe 让系统识别新增的分区,然后创建物理卷,使用pvcreate /dev/sdb1;pvdisplay查看
$ pvcreate /dev/sdb1
$ pvdisplay
4.将PV加入到原有VG中
$ vgextend centos /dev/sdb1
可以看到vg size和free size都变了
调整LV的空间
$ lvextend -L +19g /dev/mapper/centos-root
5.lvextend 扩展后只是扩展了lv的大小,而此时文件系统并未感知到,所有还需要使用xfs_growfs、resize2fs等命令来扩展文件系统,xfs_growf命令是扩展xfs文件系统,resize2fs是扩展ext4文件系统。
确认文件系统是否为xfs,如果为xfs分区类型,用xfs_growfs

$ df -h
$ xfs_growfs /dev/mapper/centos-root确认文件系统是否为ext4,如果为ext4分区类型,用resize2fs
$ resize2fs /dev/mapper/centos-root