CentOS7虚拟机硬盘空间原来分配了20GB,但是不知道都装了啥东西,突然提示磁盘空间不够了,需要扩容。
磁盘扩容主要分两大步:
一、VMware分配空间
这个操作首先要关闭虚拟机centos7,然后选择要扩容的虚拟机--硬盘--扩展,然周输入比原来的空间大的数字,点击“扩展”
二、CentOS7内部分配
1、查看当前磁盘空间,/dev/mapper/centos-root当前空间是27G,但是剩余的只有10G了,所以打算进行扩容
2、对新增的硬盘空间做新增分区(硬盘数没有增加,增加的是空间),使用命令:fdisk /dev/sda
[root@localhost uxdb]# fdisk /dev/sda
欢迎使用 fdisk (util-linux 2.23.2)。更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。 命令(输入 m 获取帮助):n
Partition type:
p primary (3 primary, 0 extended, 1 free)
e extended
Select (default e): p
已选择分区 4
起始 扇区 (62914560-83886079,默认为 62914560):
将使用默认值 62914560
Last 扇区, +扇区 or +size{K,M,G} (62914560-83886079,默认为 83886079):
将使用默认值 83886079
分区 4 已设置为 Linux 类型,大小设为 10 GiB命令(输入 m 获取帮助):t
分区号 (1-4,默认 4):4
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”命令(输入 m 获取帮助):p
磁盘 /dev/sda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000ada18 设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 41943039 19921920 8e Linux LVM
/dev/sda3 41943040 62914559 10485760 8e Linux LVM
/dev/sda4 62914560 83886079 10485760 8e Linux LVM命令(输入 m 获取帮助):w
The partition table has been altered!Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
正在同步磁盘。
ps:(1)n //添加新分区;(2)p //创建主分区;(3)4 //分区号;(5)回车 //起始扇区选择默认;(6)回车默认;(7)t //更改分区格式;(8)8e //更改分区格式为LVM;(9)p //查看已经设置好的分区;(10)w //保存分区并退出
3、reboot,重启系统
4、查看当前分区类型:df -T /dev/sda1
5、在新磁盘上创建xfs文件系统:mkfs.xfs /dev/sda4(这个磁盘就是刚才我们新增的那个磁盘)
6、创建物理卷(PV):pvcreate /dev/sda4,可以用pvdisplay查看已经创建的PV
[root@localhost uxdb]# pvcreate /dev/sda4
WARNING: xfs signature detected on /dev/sda4 at offset 0. Wipe it? [y/n]: y
Wiping xfs signature on /dev/sda4.
Physical volume "/dev/sda4" successfully created.
7、查看已有卷组名:vgdisplay,VG Name后面的即为卷组名,这里的卷组名为centos,VG Size为卷组大小,等下注意对比。
8、开始扩展,把/dev/sda4扩展到卷组centos下,vgextend后接VG Name:vgextend centos /dev/sda4.
9、产看逻辑卷,然后记住它的LVPPath路径:lvdisplay。
10、lvextend /dev/centos/root /dev/sda4 //lvextend参数-L是指定大小 如果不输入-L +10G 则默认使用全部空间.
11、再查看一下卷组:vgdisplay.
12、调整文件系统大小,本例中是xfs文件系统使用xfs_growfs命令调整,若其他文件系统,如ext4使用resize2fs命令,注意区分。
xfs_growfs /dev/centos/root(适用于xfs文件系统);
resize2fs /dev/mapper/centos-root(适用于其他文件系统)。
13、最后用df -h命令查看,可以看到/dev/mapper/centos-root空间已经能够增加了