背景
使用ESXI装好Ubuntu系统后,系统默认使用了200G空间(分配的虚拟磁盘大于该值),造成分配的虚拟磁盘未全部挂载到根目录,使用久了,就出现磁盘空间不足,特别是使用数据库备份的服务器,大量的备份导致磁盘很快就爆满了.
所以我们这里需要将未使用的空间全部分配上.
以前安装Linux按照传统的分区方式,选择custom,可以给磁盘划分出sda1,,sda2...
这些在Linux里称之为分区partition,然后分别把/,/home,/var等挂载到各个分区
但是随着LVM技术的推广,现在安装Ubuntu如果采用默认的格式化整个磁盘的方式来安装,安装完成后发现磁盘空间没有占满,/(根目录)挂载只占用了200多G.造成严重浪费.
表现如下:
df -h
- 使用lsblk命令查看磁盘信息
lsblk
可以看到实际分配的虚拟磁盘空间为 1T,但是实际使用了200G
- 原因是由于这里没有直接挂载在物理分区上,而是把/挂载在了逻辑分区LVM文件系统上,而这里显示的/dev/mapper/ubuntu--vg-ubuntu--lv,这是一块逻辑分区文件!它本身只有200G.那理所当然挂载在它之上的/最多就是200G.
- 要扩展/我们就扩展这个LVM文件,很简单,执行如下命令,让他占满磁盘剩余空间.
sudo lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
- 若是无需分配所有磁盘空间,可以按需分配执行如下命令:
sudo lvextend -L 50G /dev/mapper/ubuntu--vg-ubuntu--lv
- 该命令扩充50G,其他大小按自己需求调整,当然,无法大于实际可使用的剩余空间
- 执行完上述命令后,需要重新计算磁盘大小.
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
- 等待数秒.执行完成后即可查看磁盘信息
sudo vgdisplay
- 再次使用df -h命令查看磁盘信息就可以看到所有空间均已挂载
df -h