linux扩展分区

2023-04-06  本文已影响0人  草样年华灬

LVM使用指南

磁盘的使用是以volume的形式存在,物理卷或者逻辑卷 (在lvm中被成为逻辑卷LV)

lvm中的概念

PV(Physical Volume)- 物理卷 
物理卷在逻辑卷管理中处于最底层,它可以是实际块存储上的分区,也可以是整个块存储。
VG(Volumne Group)- 卷组
卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。
LV(Logical Volume)- 逻辑卷
逻辑卷建立在卷组之上,逻辑卷建立后可以动态地扩展和缩小空间。

lvm的原理

1.在物理磁盘上建立分区PV(类型8e),
2.使用1个或者多个PV组成一个卷组VG, VG是可以扩展其他的PV进来
3.在VG上建立逻辑卷 (LV)

lvm对象命名

PV Name               /dev/nvme0n1p2
VG Name               cl_fedora
LV Path               /dev/cl_fedora/root

物理卷pv管理

# 显示当前的pv列表
pvscan      # 扫描并列出pv
pvs         # 列出pv
pvdisplay   # 输出更友好.  pvname  所属vg 所剩空间等信息

# pvcreate /dev/sdb1 /dev/sdb2  #将分区设置为pv
pvcreate可以批量操作多个分区,

pvremove /dev/sda1 #移除lvm的label,是pvcreate的反操作
需要被删除的物理卷必须是已经不属于任何卷组的,否则删除会失败

卷组VG管理

vgdisplay     #输出详细
vgdisplay -v
vgscan        # 用于查看当前系统上有哪些vg和类型
===>
  Reading volume groups from cache.
  Found volume group "cl_fedora" using metadata type lvm2  # name:cl_fedora , type: lvm2

# vg创建
vgcreate vg01 /dev/sdb1 /dev/sdb2   # vg name : vg01
vgcreate可以一次添加1个或多个pv进来

vgextend vg_data /dev/sda2  # 扩展vg,添加额外的pv  # vg已存在的情况

vgrename 修改vg的名字
vgremove 是vgcreate的反操作,删除vg
vgreduce vg_data /dev/sda2  #移除vg中的一个或多个pv

逻辑卷LV管理

lvdisplay -v

# 创建logical volumn
lvcreate -L <size> -n <lv_name> <vg_name>
lvcreate -L 100M   -n lvm01      vg01    (从vg01创建100M的名为lvm01的lvm)

lvremove /dev/vg_data/lv_data2 # lvcreate的反操作,移除lv
lvrename 修改lv名字

lvresize -L 1500m /dev/vg_data/lv_data1  # 更改逻辑卷的大小,适用于新建lv后调整大小(应该会清理掉已存在的数据,未测试)

扩展lvm的容量
lvextend -L <size>  <lv_path> --resizefs  # 扩展多少空间,无损
lvextend <lv_path> <pv_path>  --resizefs
#lvextend resizefs开关: lvextend后,df看到的空间并不会更新,resizefs会刷新卷大小的显示

lvextend -L +100M /dev/vg01/lvm01
lvextend  /dev/cl_fedora/root  /dev/nvme0n1p4  #将整个pv扩展进来

# lv激活
lvscan后若显示lv为inactive,则用lvchange -ay vg_name
去激活:vgchange -an vg_name

# 扩展空间后,刷新空间大小使立即生效
resize2fs /dev/vg01/lvm01    # 应该等效于 lvextend --resizefs
xfs_growfs /dev/centos/root  # 适用于xfs
# 无需umount分区, 可以用于扩展/分区

lv扩展步骤

1. 准备一个新的分区(8e), 可使用fdisk / gdisk等工具
2. pvcreate /dev/sdb1 /dev/sdb2   # 测试发现,gdisk分区后需要重启生效,否则pvcreate找不到分区
3. 查看当前分区所在的vg vgdisplay
4. vgextend vg_data /dev/sda2  加入新的pv到vg中
5. lvextend -L +100M /dev/vg01/lvm01  --resizefs
   lvextend  /dev/cl_fedora/root  /dev/nvme0n1p4 --resizefs #将整个pv扩展进来
6. resize2fs /dev/vg01/lvm01  # lvextend带上--resizefs后,可以跳过这个步骤
7. df -h 确认是否成功

新建lv后的操作

# 只适用于新建的pv, lv扩展操作无需下面处理
# 格式化lv
mkfs -t ext3 /dev/vg01/lvm01

#挂载lv
mount -t ext3 /dev/vg01/lvm01 /mnt
上一篇 下一篇

猜你喜欢

热点阅读