2MUCH

Linux-磁盘扩容

2022-11-15


Linux-磁盘扩容

看b站:https://www.bilibili.com/video/BV1NK411w7DL/?spm_id_from=333.337.search-card.all.click&vd_source=388c468b983bcf7b800d0e7cfb9fc719 的教学视频笔记

⚠️此操作只适用于扩容已有目录size,不涉及挂载等前置操作。

基础概念

8

目录是挂载在卷组vg上的,可以通过在vg中添加lv,扩大vg的容量,从而达到该目录的lvm磁盘扩容效果。

扩容基本操作

  1. 查看当前挂载点
df -h
  1. 显示当前的lv
lvdisplay
  1. 显示当前的vg
vgdisplay
  1. 显示当前的pv
pvdisplay
  1. 查看磁盘内容
fdisk -l
fdisk -l | grep '/dev'

image-20221116063822723

目前有sda和sdb两块硬盘(其中sdb是新增硬盘,等待将其扩容到vg)

  1. 创建新分区,格式化
fdisk /dev/sdb
mkfs -t ext4 /dev/sdb1  

image-20221116064732367

  1. 创建pv
pvcreate /dev/sdb1
pvscan  #查看所有的pv情况
  1. 扩容vg
vgextend ubuntu-vg /dev/sdb1 #ubuntu-vg为待扩容的vg名称
pvscan  #查看扩容结果
vgdisplay  #查看扩容结果

image-20221116065125704

  1. 扩容lv
lvdisplay  #查看要扩容的lv path和lv name
lvextend -L +10G /dev/ubuntu-vg/ubuntu-lv  #扩容10G 
resize2fs /dev/ubuntu-vg/ubuntu-lv
df -h  #查看扩容结果

image-20221116070529702

image-20221116065650757

刚才的操作是将vg中Free PE的10G移到可分配的Alloc PE中,从上图看已操作成功,即完成了扩容(真正可使用的vg空间+10G)。现在要将所有的Free PE扩容到Alloc PE中,可采用:

lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
resize2fs /dev/ubuntu-vg/ubuntu-lv

值得注意的是:

resize2fs命令是用来增大或者收缩未加载的“ext2/ext3/ext4”文件系统的大小。并不适用于xfs文件系统(会报错)。如果是xfs文件系统,则使用以下命令来达到同样的效果;

xfs_growfs /dev/ubuntu-vg/ubuntu-lv

可参考: https://blog.csdn.net/MssGuo/article/details/120475752