linux 逻辑卷LVM

LVM(Logical Volume Manager)逻辑卷
管理是一种在Linux系统中用于管理磁盘空间的技术,它提供了一种灵活、高效的方式来管理硬盘分区和卷。以下是关于LVM逻辑管理的详细介绍:

LVM的基本概念
物理卷(Physical Volume,PV)
物理卷是LVM的基本组成部分,可以是一块磁盘、也可以是一个分区。物理卷是LVM存储的基础,用于提供实际的存储空间。

卷组(Volume Group,VG)
卷组由一个或多个物理卷组成,它是一个逻辑上的存储池。可以将卷组看作是一个大的存储容器,它将多个物理卷的空间整合在一起,为创建逻辑卷提供了一个统一的空间池。

逻辑卷(Logical Volume,LV)
逻辑卷是从卷组划出来的逻辑存储,用户可以在逻辑卷上创建文件系统,然后像使用普通硬盘分区一样使用它。逻辑卷的大小可以根据需要在卷组的可用空间范围内进行扩展。 逻辑扩展(Logical Extent,LE):逻辑扩展是逻辑卷中最小的可分配存储单元,它与物理扩展相对应,在创建逻辑卷时,逻辑扩展会映射物理卷上

LVM的工作原理
通过物理卷间的联合,创建一个大型的组卷,聚合物理卷的空间,虚拟卷建立在组卷上,通过组卷使虚拟卷能够动态变化。

创建LVM 1. 创建物理卷:使用pvcreate命令将物理设备初始化为物理卷,例如:

   pvcreate /dev/sda1,

   将/dev/sda1分区创建为物理卷。

2. 创建卷组:

   使用vgcreate命令创建卷组,

   将一个或多个物理卷添加到卷组中,

   vgcreate vg1 /dev/sda1 /dev/sdb1,

   创建名为vg1的卷组,

   并将/dev/sda1和/dev/sdb1添加到其中

3. 创建逻辑卷:

   使用lvcreate命令从卷组中创建逻辑卷,

   lvcreate -L 10G -n lv0 vg1,

   在vg1卷组中创建一个大小为10GB的逻辑卷`lv1。

扩展逻辑卷:当逻辑卷的空间不足时,可以使用lvextend命令扩展逻辑卷的大小,

lvextend -L +5G /dev/vg1/lv1

将lv0逻辑卷的大小增加5GB。

收缩逻辑卷:使用lvreduce命令收缩逻辑卷的大小,但在收缩逻辑卷之前,需要先卸载逻辑卷,并确保文件系统中的数据没有超出要收缩的范围。

删除LVM

删除逻辑卷:

使用lvremove命令删除逻辑卷,如`lvremove /dev/vg1/lv1

删除卷组:

使用vgremove命令删除卷组,如`vgremove vg1

删除物理卷

使用pvremove命令删除物理卷,如pvremove /dev/sda1
以下是一些常用的LVM逻辑管理命令:

pvcreate 功能:将物理磁盘或分区初始化为物理卷。

示例:将 /dev/sdb1分区创建为物理卷

pvcreate /dev/sdb1

pvdisplay 功能:显示物理卷的详细信息,如大小、PE(Physical Extent)大小等。

示例:显示所有物理卷的信息

pvdisplay 若只想显示 /dev/sdb1的信息,可使用:

pvdisplay /dev/sdb1

pvremove 功能:从物理设备中移除物理卷标签,将其恢复为普通分区。

示例:移除 /dev/sdb1 的物理卷标签

pvremove /dev/sdb1

vgcreate 功能:创建卷组,将一个或多个物理卷添加到卷组中。

示例:创建名为 myvg的卷组,并将 /dev/sdb1物理卷添加到其中

vgcreate myvg /dev/sdb1

vgdisplay 功能:显示卷组的详细信息,如大小、包含的物理卷等。

示例:显示所有卷组的信息

vgdisplay

若只想显示 vg1`卷组的信息,可使用:

vgdisplay vg1

vgextend 功能:将新的物理卷添加到现有的卷组中,扩展卷组的容量。

示例:将 /dev/sdc1物理卷添加到 vg1卷组中

vgextend myvg /dev/sdc1

vgreduce 功能:从卷组中移除物理卷。

示例:从 myvg卷组中移除 /dev/sdc1物理卷

vgreduce myvg /dev/sdc1

vgremove 功能:删除卷组。

示例:删除 vg1 卷组

vgremove vg1

lvcreate 功能:在卷组中创建逻辑卷。

示例:在 myvg卷组中创建一个大小为 5GB 的逻辑卷 lv1

lvcreate -L 5G -n lv1 vg1 若要使用卷组的全部剩余空间创建逻辑卷,可使用 -l 100%FREE:

lvcreate -l 100%FREE -n lv1 vg1

lvdisplay 功能:显示逻辑卷的详细信息,如大小、所属卷组等。

示例:显示所有逻辑卷的信息

lvdisplay

若只想显示 vg1/lv1逻辑卷的信息,可使用:

lvdisplay /dev/vg1/lv1

lvextend 功能:扩展逻辑卷的大小。

示例:将 vg1/lv1逻辑卷扩展 2GB

lvextend -L +2G /dev/vg1/lv1

扩展后,还需要对文件系统进行扩展(以 xfs 文件系统为例):

xfs_growfs /dev/vg1/lv1

lvreduce -L -1G /dev/vg1/lv1

lvremove 功能:删除逻辑卷。

示例:删除 vg1/lv1 逻辑卷  lvremove /dev/vg1/lv1

格式化逻辑卷 示例:将 vg1/lv1逻辑卷格式化为 xfs文件系统

mkfs.xfs /dev/vg1/lv1

挂载逻辑卷

示例:将 vg1/lv1逻辑卷挂载到 /mnt/lv1目录

mount /dev/vg1/lv1 /mnt/lv1

配额
挂载文件系统时启用配额选项
编辑/etc/fstab文件,为需要设置配额的分区添加usrquota(用户配额)和grpquota(组配额)选项。例如,如果你要对/home分区设置配额,找到类似如下的行:
/dev/sda2 /home ext4 defaults 0 0
修改为:
/dev/sda2 /home ext4 defaults,usrquota,grpquota 0 0
保存并退出文件。然后重新挂载分区:
mount -o remount /mnt
3. 创建配额数据库文件
使用以下命令为用户和组创建配额数据库文件:


quotacheck -cug /home
-c:创建新的配额文件。
-u:检查用户配额。
-g:检查组配额.


4. 启用磁盘配额
创建完配额数据库文件后,使用以下命令启用用户和组配额:
quotaon -ug /home
-u:启用用户配额。
-g:启用组配额。


5. 设置用户和组的磁盘配额
设置用户配额
edquota testuser
这将打开一个文本编辑器,显示该用户的配额设置。

示例如下:
Disk quotas for user testuser (uid 1001):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/sda2                      0          10240      20480        0          0        0

字节详解


 blocks:当前使用的磁盘块数。
 soft:软限制,当超过该限制时,用户会收到警告,但仍可以继续使用磁盘,直到达到硬限制。
 hard:硬限制,用户不能超过该限制使用磁盘。
 inodes:当前使用的 inode 数量。
 soft 和 hard:inode 的软限制和硬限制,修改相应的数值,保存并退出编辑器。


设置组配额使用edquota -g命令为特定组设置配额,例如为组testgroup设置配额:
quota -g testgroup
编辑方法与设置用户配额类似。
6. 查看配额信息
查看用户配额
quota testuser
查看组配额
quota -g testgrou

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值