CentOS7虚拟机硬盘空间原来分配了20GB,但是不知道都装了啥东西,突然提示磁盘空间不够了,需要扩容。

磁盘扩容主要分两大步:

一、VMware分配空间

这个操作首先要关闭虚拟机centos7,然后选择要扩容的虚拟机--硬盘--扩展,然周输入比原来的空间大的数字,点击“扩展”

虚拟机 centos 磁盘满 无法启动 centos虚拟机硬盘扩容_默认值

二、CentOS7内部分配

1、查看当前磁盘空间,/dev/mapper/centos-root当前空间是27G,但是剩余的只有10G了,所以打算进行扩容

虚拟机 centos 磁盘满 无法启动 centos虚拟机硬盘扩容_虚拟机 centos 磁盘满 无法启动_02

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为卷组大小,等下注意对比。

虚拟机 centos 磁盘满 无法启动 centos虚拟机硬盘扩容_默认值_03

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空间已经能够增加了

虚拟机 centos 磁盘满 无法启动 centos虚拟机硬盘扩容_文件系统_04