由于安装ubuntu虚拟机的时候,没有调整磁盘的大小,导致安装了docker后很快磁盘就满了,所以需要扩容,这个最好是在安装的时候就调整好的,我当时只是下一步.
在网上查了一圈,按照磁盘扩容的教程整下来,结果没有任何变化,还是要搞清楚原理才行
文件目录->逻辑卷->物理卷(卷组)->磁盘分区 ,理解下来基本是这个结构
df -h
先看看磁盘的情况:
上图中,逻辑卷的/dev/mapper/ubuntu--vg-ubuntu--lv 已经满了,为什么这个逻辑卷的名称是这样的,后面会讲到
先在虚拟机中扩容
这里注意,虚拟机需要关机,并且不能有快照,不然扩展就是灰色的如上图:
必须是如下图这样的:
然后就可以调整磁盘大小开始扩展了:
调整完虚拟机后,进入系统中:
开始调整物理卷和逻辑卷
ubuntu在调整逻辑卷的容量时,实际上一个逻辑卷可以对应几个物理卷,一个物理卷可以对应多个磁盘,所以物理卷扩容以后,df -h 逻辑卷是没有变化的,需要在扩容逻辑卷:
# 1. 调整物理卷
# 使用fdisk或parted工具来扩展物理分区
# 1. 扩展物理卷(如果需要)
# 使用fdisk或parted工具来扩展物理分区
apt-get install gparted
gparted
sudo apt-get install gparted
这里注意一个问题,如果你使用的是xmange的shell工具,一定需要使用root用户来直接登录,而不要是用sudo组中的用户登录后,在使用sudo切换到root用户来使用,这样是不能打开parted的,会因为权限不够而启动parted的界面失败.
sudo gparted
以下是使用 root安装并直接登录的效果
显示如下界面
使用命令lsblk查看磁盘信息如下:
这里讲一下wsm是sda3/ubutnu--vg-ubuntu--lv
分区信息 + 物理卷名称 + 逻辑卷名称
vgdisplay 和lvdisplay查看一下物理卷(卷组)和逻辑卷的信息 先需要安装LVM,
LVM2(Logical Volume Manager 2)是Linux中用于管理逻辑卷的工具
2. 扩展逻辑卷
两种方式,一种直接给大小,一种把未分配的全分配
lvextend -L +5G /dev/ubuntu-vg/ubuntu-lv # SIZE 是你想要扩展的大小,单位为GB
lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv #只要是空闲空间都直接扩展
# 3. 调整文件系统
resize2fs命令可以调整ext2\ext3\ext4文件系统的大小,它可以放大或者缩小没有挂载的文件系统的大小。如果文件系统已经挂载,它可以扩大文件系统的大小,前提是内核支持在线调整大小。
xfs_growfs是一个Linux系统命令,用于扩展XFS文件系统的大小
所以需要先知道当前文件系统的类型
我的系统是磁盘类型是ext4的,所以
resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
在使用df 看一下是不是有效果了
df -h
ok,搞定了~