VMware CentOS Linux磁盘空间扩容过程详解

环境信息

  • 虚拟化软件:VMware Workstation 16
  • 虚拟机:CentOS 7.7 64bit  

在VMware 中给Linux虚拟机总共分了20GB单磁盘,已经不够用。需要扩充,因为Linux是使用LVM(Logical Volume Manager)所以扩充磁盘非常方便。步骤如下

扩容前

扩容前,磁盘(既LV)空间使用率已经达到94%,严重不够用了,需要扩空间:

[root@centosa ~]# df -T       (这里加-T选项,可显示文件系统类型)
Filesystem              Type     1K-blocks     Used Available Use% Mounted on
devtmpfs                devtmpfs   1996088        0   1996088   0% /dev
tmpfs                   tmpfs      2013112       44   2013068   1% /dev/shm
tmpfs                   tmpfs      2013112    12208   2000904   1% /run
tmpfs                   tmpfs      2013112        0   2013112   0% /sys/fs/cgroup
/dev/mapper/centos-root xfs       17811456 16695572   1115884  94% /
/dev/sda1               xfs        1038336   164512    873824  16% /boot
tmpfs                   tmpfs       402624        0    402624   0% /run/user/1000


[root@centosa ~]# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000cf932

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM

Disk /dev/mapper/centos-root: 18.2 GB, 18249416704 bytes, 35643392 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-swap: 2147 MB, 2147483648 bytes, 4194304 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

扩容步骤

  1、VMware虚拟机扩容

   关闭虚拟机后,由于虚拟机存在快照无法直接扩展原磁盘,只能在VMware中新增一块盘。

  2、磁盘创建partition

   启动虚拟机后,通过df命令查看磁盘空间未变。通过fdisk -l 命令可以看到多了一块 /dev/sdb 的Disk

通过以下fdisk /dev/sdb 将磁盘创建partition

新增的partition为:/dev/sdb1

扫描二维码关注公众号,回复: 15294593 查看本文章

  3、创建PV并纳入VG

    这时候通过pvdisplay vgdisplay 命令还看不到刚才新增的Partition。

   通过以下pvcreate vgextend,创建PV后,并将新装机的PV加入到VG中(我们的VG名为"centos")

然后,再次通过pvdisplay vgdisplay 命令,就能看到了,并且VG的总容量也增加了,新增的空间是Free空闲的。

  4、对原LV扩展容量

    在扩LV之前,可以通过命令lvdisplay查看当前的LV情况。可以看到:

  • 系统已存在两个LV,都是基于名为“centos”的VG上分配的空间。
  • 结合前面,我们正是名为“ /dev/centos/root” 的LV空闲空间不足。

因此,我们将新增的10GB空闲空间,全部分配给名为“ /dev/centos/root” 的LV。 命令格式为:

  • lvextend  -L  +10240m  LV名称    (-L指向需要增加的空间大小,单位可以为G、M、T等)

由于直接指定扩大10240MB,会报“ Insufficient free space: 2560 extents needed, but only 2559 available”。既VG中free空闲空间不是严格的10GB,而是少一个PE(VG的一个PE为为4MB)。

所以扩展的空间大小不是10240m,而是10236m。

[root@centosa ~]# lvextend -L +10236m /dev/centos/root    
  Logical volume centos/root successfully resized.
[root@centosa ~]# 
[root@centosa ~]# 
[root@centosa ~]# vgdisplay
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  6
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               28.99 GiB
  PE Size               4.00 MiB
  Total PE              7422
  Alloc PE / Size       7422 / 28.99 GiB
  Free  PE / Size       0 / 0   
  VG UUID               Ngcx2z-PxqT-W9Dl-jg7b-YcQd-2OD3-x4vmDo

  4、扩大文件系统

    这是通过df查看当前文件系统,仍为变化。这是因为尽管LV容量扩大了,但文件系统还未扩大。

   如果是ext4等文件系统可以通过命令resize2fs扩大。  因为我们是xfs文件系统,所以需要使用命令xfs_growfs来完成文件系统扩大。

   然后再次通过df查看空间情况,可以看到空间已经扩大。

猜你喜欢

转载自blog.csdn.net/zyplanke/article/details/110701286
今日推荐