测试个东西,发现虚拟机磁盘不够用了,,,,找了半天扩容方法,都是东拼西凑的没个有用的,最后终于找到个完美扩容的,记录下,防止原文以后看不了
原文:https://www.linuxidc.com/Linux/2019-04/158346.htm
文章目录
- 环境
- 扩容
环境
Centos7
VM16
扩容
-
VM软件上扩展磁盘
先关机,然后如下图操作
扩展好后,接下来进入系统操作,开机
-
查看扩展后磁盘情况
[root@mini1 ~]# fdisk -l磁盘 /dev/sda:53.7 GB, 53687091200 字节,104857600 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x000c95bd设备 Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 20971519 9436160 8e Linux LVM /dev/sda3 20971520 62914559 20971520 83 Linux磁盘 /dev/mapper/centos-root:29.0 GB, 28986834944 字节,56614912 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节磁盘 /dev/mapper/centos-swap:1073 MB, 1073741824 字节,2097152 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节
-
对磁盘进行分区
查看当前分区时,由于我是第二次扩容,所以/dev/sda3我是已经存在的,如果是第一次扩容就没有。其他地方同理
期间,如果需要将分区类型的Linux修改为Linux LVM的话需要在新增了分区之后,选择t,然后选择8e之后可以将新的分区修改为linux LVM.
-
再次查看磁盘分区情况
[root@mini1 ~]# fdisk -l磁盘 /dev/sda:53.7 GB, 53687091200 字节,104857600 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x000c95bd设备 Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 20971519 9436160 8e Linux LVM /dev/sda3 20971520 62914559 20971520 83 Linux /dev/sda4 62914560 104857599 20971520 83 Linux磁盘 /dev/mapper/centos-root:29.0 GB, 28986834944 字节,56614912 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节磁盘 /dev/mapper/centos-swap:1073 MB, 1073741824 字节,2097152 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节
-
重启虚拟机格式化新建分区
reboot
-
将新添加的分区添加到已有的组实现扩容,首先查看卷组名
[root@mini1 ~]# vgdisplay--- Volume group ---VG Name centosSystem ID Format lvm2Metadata Areas 2Metadata Sequence No 5VG Access read/writeVG Status resizableMAX LV 0Cur LV 2Open LV 2Max PV 0Cur PV 2Act PV 2VG Size 28.99 GiBPE Size 4.00 MiBTotal PE 7422Alloc PE / Size 7167 / <28.00 GiBFree PE / Size 255 / 1020.00 MiBVG UUID iS4aQU-4DTb-STTs-daIn-EdRW-UsJE-vgS0JZ
VG Name为centos,当前VG Size大小时28.99G
-
初始化刚刚的分区
注意,我之前扩展过一次分区,所以是sda4。第一次扩容一般是sda3
[root@mini1 ~]# pvcreate /dev/sda4Physical volume "/dev/sda4" successfully created.
-
将初始化过的分区加入到虚拟卷组名
vgextend 虚拟卷组名 新增的分区
[root@mini1 ~]# vgextend centos /dev/sda4Couldn't create temporary archive name. 报这个错,因为磁盘完全用满了,需要有预留空间才可以成功,解决的话就是删掉部分无用的数据,腾出一点空间,然后再次执行[root@mini1 ~]# vgextend centos /dev/sda4Volume group "centos" successfully extended
-
再次查看卷组情况
[root@mini1 ~]# vgdisplay--- Volume group ---VG Name centosSystem ID Format lvm2Metadata Areas 3Metadata Sequence No 6VG Access read/writeVG Status resizableMAX LV 0Cur LV 2Open LV 2Max PV 0Cur PV 3Act PV 3VG Size <48.99 GiBPE Size 4.00 MiBTotal PE 12541Alloc PE / Size 7167 / <28.00 GiBFree PE / Size 5374 / 20.99 GiBVG UUID iS4aQU-4DTb-STTs-daIn-EdRW-UsJE-vgS0JZ
如上 Free PE,多出了20.99G空闲的,就是我扩展的
-
查看扩展的文件系统名
[root@mini1 ~]# df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/centos-root 27G 27G 298M 99% / devtmpfs 905M 0 905M 0% /dev tmpfs 916M 0 916M 0% /dev/shm tmpfs 916M 8.7M 908M 1% /run tmpfs 916M 0 916M 0% /sys/fs/cgroup /dev/sda1 1014M 144M 871M 15% /boot tmpfs 184M 0 184M 0% /run/user/0 tmpfs 184M 0 184M 0% /run/user/1000
如上根目录文件系统名为
/dev/mapper/centos-root
-
扩容已有的卷组容量
这里有个细节,就是不能全扩展满,比如空闲空间是20G,然后这里的话20G不能全扩展上,这里我扩展的是19G
lvextend -L +需要扩展的容量 需要扩展的文件系统名
[root@mini1 ~]# lvextend -L +19G /dev/mapper/centos-rootSize of logical volume centos/root changed from <27.00 GiB (6911 extents) to <46.00 GiB (11775 extents).Logical volume centos/root successfully resized.
-
查看当前卷组
[root@mini1 ~]# pvdisplay--- Physical volume ---PV Name /dev/sda2VG Name centosPV Size <9.00 GiB / not usable 3.00 MiBAllocatable yes (but full)PE Size 4.00 MiBTotal PE 2303Free PE 0Allocated PE 2303PV UUID r6HMUt-Khaf-xUi5-xlZO-PpDe-DFBd-tF7gHl--- Physical volume ---PV Name /dev/sda3VG Name centosPV Size 20.00 GiB / not usable 4.00 MiBAllocatable yes (but full)PE Size 4.00 MiBTotal PE 5119Free PE 0Allocated PE 5119PV UUID 2rxNuW-iZSO-suvf-z9x3-oRmP-JVVh-J1CLiQ--- Physical volume ---PV Name /dev/sda4VG Name centosPV Size 20.00 GiB / not usable 4.00 MiBAllocatable yes PE Size 4.00 MiBTotal PE 5119Free PE 510Allocated PE 4609PV UUID WGaPTZ-eyKK-Wdxn-IEAC-71mf-uHSq-pSaqVQ
可以看到/dev/sda4卷组已经扩容了(如果是第一次扩容应该是sda3)
-
卷的扩容后,我们需要将文件系统扩容
resize2fs 文件系统名
[root@mini1 ~]# resize2fs /dev/mapper/centos-root resize2fs 1.42.9 (28-Dec-2013) resize2fs: Bad magic number in super-block 当尝试打开 /dev/mapper/centos-root 时 找不到有效的文件系统超级块.
如上网上一般方法,会报错,解决如下:
-
首先查看文件系统的格式
[root@mini1 ~]# cat /etc/fstab | grep centos-root /dev/mapper/centos-root / xfs defaults 0 0
这里可以看到,文件系统是xfs,所以需要xfs的命令来扩展磁盘空间
-
xfs扩展磁盘空间
xfs_growfs 文件系统名
[root@mini1 ~]# xfs_growfs /dev/mapper/centos-root meta-data=/dev/mapper/centos-root isize=512 agcount=14, agsize=524032 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=7076864, imaxpct=25= sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=2560, version=2= sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 7076864 to 12057600
-
-
查看磁盘大小
[root@mini1 ~]# df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/centos-root 46G 27G 20G 59% / devtmpfs 905M 0 905M 0% /dev tmpfs 916M 0 916M 0% /dev/shm tmpfs 916M 8.7M 908M 1% /run tmpfs 916M 0 916M 0% /sys/fs/cgroup /dev/sda1 1014M 144M 871M 15% /boot tmpfs 184M 0 184M 0% /run/user/0 tmpfs 184M 0 184M 0% /run/user/1000
如上容量已经成功扩容,OJBK!!!
Congratulations!!!