Linux

您所在的位置:网站首页 lvm管理命令包括 Linux

Linux

2024-07-17 08:49| 来源: 网络整理| 查看: 265

LVM介绍

文章目录 LVM介绍 一:lvm概述1.1:LVM的基本概念 二:LVM管理命令2.1:pvscan命令2.2:pvcreate命令2.3:pvddisplay命令 三:VG卷组挂管理3.1: vgscan命令3.2:vgcreate命令3.3:vgdisplay命令3.4:vgremove命令3.5: vgextend命令 四:LV逻辑卷管理4.1: Lvscan命令4.2: Lvcreate命令4.3: Lvdispaly命令4.4: Lvremove命令 五:LVM推荐步骤实验:进行Lvm扩容磁盘配额实现磁盘限额的条件磁盘配额步骤启用磁盘盘配额磁盘配额管理编辑用户和组账号的配额设置验证磁盘配额功能 查看配额使用情况实验: 许多Linux使用者安装操作系统时都会遇到这样的困境:如何精确评估和分配各个硬盘分区的容量,如果当初评估不准确,一旦系统分区不够用时可能不得不备份、删除相关数据,甚至被迫重新规划分区并重装操作系统,以满足应用系统的需要。

LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性。RHEL5默认安装的分区格式就是LVM逻辑卷的格式,需要注意的是/boot分区不能基于LVM创建,必须独立出来.

一:lvm概述

Logical Volume Manager,逻辑卷管理

动态调整磁盘容量,从而提高磁盘管理的灵活性

/boot分区用于存放引导文件,不能基于LVM创建

图形界面管理工具:system-config-lvm

1.1:LVM的基本概念 PV(物理卷)文件类型8e格式

mark

物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。

创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(Physical Extent,PE),从而构成物理卷

物理卷一般直接使用设备文件名称,如/dev/sdb1 , /dev/sdb1, /dev/sdd等

对于转换成物理卷的普通分区,建议先使用fdisk工具将分区类型的ID标记号改为“8e”(8e表示LVM逻辑卷),若是整块硬盘,可以将所有磁盘空间划分为一个主分区后再做相对应调整

VG(卷组)

mark

卷组:由一个或多个物理卷组成一个整体

在卷组中可以动态的添加或移除物理卷

许多个物理卷可以分别组成不同的卷组,卷组的名称由用户自定义

lv(逻辑卷)

mark

逻辑卷建立在卷组之上,与物理卷没有直接关系

对于逻辑卷来说,每一个卷组就是一个整体,从这个整体中“切出”一小块空间,作为用户创建文件系统的基础,这一小块空间就称为逻辑卷

使用mkfs等工具在逻辑卷上创建文件系统以后,就可以挂载到Linux系统中的目录下使用

二:LVM管理命令

主要命令

LVM管理命令主要包括三大类

​ PV物理卷管理

​ VG卷组管理

​ LV逻辑卷管理

对应的命令程序文件分别以“PV” “VG” “LV” 开头

mark

主要命令的格式

pvcreate 设备名(磁盘) 【设备名2 ... ...】 vgcreate 卷组名 物理卷名1 物理卷名2 lvcreate -L 容量大小 -n 逻辑卷名 卷组名 lvextend -l +大小 /dev/卷组名/逻辑卷名

pv物理卷管理

2.1:pvscan命令

pvscan命令 会扫描系统中连接的所有硬盘,列出找到的物理卷列表。使用pvscan命令的-n选项可以显示硬盘中的不属于任何卷组的物理卷,这些物理卷是未被使用的.

语法

pvscan(选项)

选项

-d:调试模式; -e:仅显示属于输出卷组的物理卷; -n:仅显示不属于任何卷组的物理卷; -s:短格式输出; -u:显示UUID。

实例

使用pvscan命令扫描当前系统中所有硬盘的物理卷,在命令行中输入下面的命令:

[root@localhost ~]# pvscan #扫描所有硬盘上的物理卷

输出信息如下:

PV /dev/sdb1 lvm2 [101.94 MB] PV /dev/sdb2 lvm2 [101.98 MB] Total: 2 [203.92 MB] / in use: 0 [0 ] / in no VG: 2 [203.92 MB] 2.2:pvcreate命令

将物理硬盘分区初始化为物理卷

补充说明

pvcreate命令 用于将物理硬盘分区初始化为物理卷,以便LVM使用。

语法

pvcreate(选项)(参数)

选项

-f:强制创建物理卷,不需要用户确认; -u:指定设备的UUID; -y:所有的问题都回答“yes”; -Z:是否利用前4个扇区。

参数

物理卷:指定要创建的物理卷对应的设备文件名。

例如 [root@localhost ~]# pvcreate /dev/sdd1 Physical volume "/dev/sdd1" successfully created. 2.3:pvddisplay命令

显示物理卷的属性

补充说明

pvdisplay命令 用于显示物理卷的属性。pvdisplay命令显示的物理卷信息包括:物理卷名称、所属的卷组、物理卷大小、PE大小、总PE数、可用PE数、已分配的PE数和UUID。

语法

pvdisplay(选项)(参数)

选项

-s:以短格式输出; -m:显示PE到LE的映射。

参数

物理卷:要显示的物理卷对应的设备文件名。

实例

使用pvdisplay命令显示指定的物理卷的基本信息。在命令行中输入下面的命令:

[root@localhost ~]# pvdisplay /dev/sdb1 #显示物理卷基本信息

输出信息如下:

"/dev/sdb1" is a new physical volume of "101.94 MB" --- NEW Physical volume --- PV Name /dev/sdb1 ....省略部分输出内容...... PV UUID FOXiS2-Ghaj-Z0Mf- cdVZ-pfpk- dP9p-ifIZXN 三:VG卷组挂管理 3.1: vgscan命令

扫描并显示系统中的卷组

补充说明

vgscan命令 查找系统中存在的LVM卷组,并显示找到的卷组列表。vgscan命令仅显示找到的卷组的名称和LVM元数据类型,要得到卷组的详细信息需要使用vgdisplay命令。

语法

vgscan(选项)

选项

-d:调试模式; --ignorerlockingfailure:忽略锁定失败的错误。

实例

使用vgscan命令扫描系统中所有的卷组。在命令行中输入下面的命令:

[root@localhost ~]# vgscan #扫描并显示LVM卷组列表

输出信息如下:

Found volume group "vg2000" using metadata type lvm2 Found volume group "vg1000" using metadata type lvm2 3.2:vgcreate命令

用于创建LVM卷组

补充说明

vgcreate命令 用于创建LVM卷组。卷组(Volume Group)将多个物理卷组织成一个整体,屏蔽了底层物理卷细节。在卷组上创建逻辑卷时不用考虑具体的物理卷信息。

语法

vgcreate(选项)(参数)

选项

-l:卷组上允许创建的最大逻辑卷数; -p:卷组中允许添加的最大物理卷数; -s:卷组上的物理卷的PE大小。

参数

卷组名:要创建的卷组名称;物理卷列表:要加入到卷组中的物理卷列表。

实例

使用vgcreate命令创建卷组 “vg1000″,并且将物理卷/dev/sdb1和/dev/sdb2添加到卷组中。在命令行中输入下面的命令:

[root@localhost ~]# vgcreate vg1000 /dev/sdb1 /dev/sdb2 #创建卷组"vg1000"

输出信息如下:

Volume group "vg1000" successfully created 3.3:vgdisplay命令

显示LVM卷组的信息

补充说明

vgdisplay命令 用于显示LVM卷组的信息。如果不指定”卷组”参数,则分别显示所有卷组的属性。

语法

vgdisplay(选项)(参数)

选项

-A:仅显示活动卷组的属性; -s:使用短格式输出的信息。

参数

卷组:要显示属性的卷组名称。

实例

使用vgdisplay命令显示存在的卷组”vg1000″的属性。在命令行中输入下面的命令:

[root@localhost ~]# vgdisplay vg1000 #显示卷组"vg1000"的属性

输出信息如下:

--- Volume group --- VG Name vg1000 ......省略部分输出内容...... free PE / Size 50 / 200.00 MB VG UUID ICprwg-ZmhA-JKYF-WYuy-jNHa-AyCN-ZS5F7B 3.4:vgremove命令

用于用户删除LVM卷组

补充说明

vgremove命令 用于用户删除LVM卷组。当要删除的卷组上已经创建了逻辑卷时,vgremove命令需要进行确认删除,防止误删除数据。

语法

vgremove(选项)(参数)

选项

-f:强制删除。

参数

卷组:指定要删除的卷组名称。

实例

使用vgremove命令删除LVM卷组”vg1000″。在命令行中输入下面的命令:

[root@localhost ~]# vgremove vg1000 #删除卷组"vg1000" Volume group "vg1000" successfully removed 3.5: vgextend命令

向卷组中添加物理卷

vgextend命令 用于动态扩展LVM卷组,它通过向卷组中添加物理卷来增加卷组的容量。LVM卷组中的物理卷可以在使用vgcreate命令创建卷组时添加,也可以使用vgextend命令动态的添加。

语法

vgextend(选项)(参数)

选项

-d:调试模式; -t:仅测试。

参数

卷组:指定要操作的卷组名称;物理卷列表:指定要添加到卷组中的物理卷列表。

实例

使用vgextend命令向卷组”vg2000″中添加物理卷。在命令行中输入下面的命令:

[root@localhost ~]# vgextend vg2000 /dev/sdb2 #将物理卷"/dev/sdb2"加入卷组"vg2000"

输出信息如下:

Volume group "vg2000" successfully extended 四:LV逻辑卷管理 4.1: Lvscan命令

扫描逻辑卷

lvscan命令 用于扫描当前系统中存在的所有的LVM逻辑卷。使用lvscan指令可以发现系统中的所有逻辑卷,及其对应的设备文件。

语法

lvscan(选项)

选项

-b:显示逻辑卷的主设备和次设备号。

实例

使用lvscan命令扫描系统中的所有逻辑卷。在命令行中输入下面的命令:

[root@localhost ~]# lvscan #扫描所有的逻辑卷

输出信息如下:

ACTIVE '/dev/vg1000/lvol0' [200.00 MB] inherit 4.2: Lvcreate命令

用于创建LVM的逻辑卷

lvcreate命令 用于创建LVM的逻辑卷。逻辑卷是创建在卷组之上的。逻辑卷对应的设备文件保存在卷组目录下,例如:在卷组”vg1000″上创建一个逻辑卷”lvol0″,则此逻辑卷对应的设备文件为”/dev/vg1000/lvol0″。

语法

lvcreate(选项)(参数)

选项

-L:指定逻辑卷的大小,单位为“kKmMgGtT”字节; -l:指定逻辑卷的大小(LE数)。

参数

逻辑卷:指定要创建的逻辑卷名称。

实例

使用lvcreate命令在卷组”vg1000″上创建一个200MB的逻辑卷。在命令行中输入下面的命令:

[root@localhost ~]# lvcreate -L 200M vg1000 #创建大小为200M的逻辑卷

输出信息如下:

Logical volume "lvol0" created 4.3: Lvdispaly命令

扩展逻辑卷空间

lvextend命令 用于在线扩展逻辑卷的空间大小,而不中断应用程序对逻辑卷的访问。使用lvextend命令动态在线扩展磁盘空间,整个空间扩展过程对于应用程序来说是完全透明的。

语法

lvextend(选项)(参数)

选项

-L:指定逻辑卷的大小,单位为“kKmMgGtT”字节; -l:指定逻辑卷的大小(LE数)。

参数

逻辑卷:指定要扩展空间的逻辑卷。

使用lvextend命令为逻辑卷/dev/vg1000/lvol0增加100M空间。在命令行中输入下面的命令:

[root@localhost ~]# lvextend -L +100M /dev/vg1000/lvol0 #为了解决增加100M空间

输出信息如下:

Extending logical volume lvol0 to 300.00 MB Logical volume lvol0 successfully resized 4.4: Lvremove命令

删除指定LVM逻辑卷

补充说明

lvremove命令 用于删除指定LVM逻辑卷。如果逻辑卷已经使用mount命令加载,则不能使用lvremove命令删除。必须使用umount命令卸载后,逻辑卷方可被删除。

语法

lvremove(选项)(参数)

选项

-f:强制删除。

参数

逻辑卷:指定要删除的逻辑卷。

实例

使用lvremove命令删除指定的逻辑卷。在命令行中输入下面的命令:

[root@localhost ~]# lvremove /dev/vg1000/lvol0 #删除逻辑卷"lvol0"

输出信息如下:

Do you really want to remove active logical volume "lvol0"? [y/n]: y #确认删除 Logical volume "lvol0" successfully removed 五:LVM推荐步骤

mark

实验:

首先添加磁盘

mark

[root@localhost ~]# fdisk /dev/sdb ##给sdb磁盘新建分区 欢迎使用 fdisk (util-linux 2.23.2)。 更改将停留在内存中,直到您决定将更改写入磁盘。 使用写入命令前请三思。 Device does not contain a recognized partition table 使用磁盘标识符 0x61797857 创建新的 DOS 磁盘标签。 命令(输入 m 获取帮助):n #新建分区 Partition type: p primary (0 primary, 0 extended, 4 free) #p是主分区 e是逻辑分区 e extended Select (default p): p #这边默认是主分区 分区号 (1-4,默认 1): #默认第一分区 起始 扇区 (2048-41943039,默认为 2048): 将使用默认值 2048 Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039): 将使用默认值 41943039 分区 1 已设置为 Linux 类型,大小设为 20 GiB 命令(输入 m 获取帮助):t ##更改分区 已选择分区 1 Hex 代码(输入 L 列出所有代码):8e ##分区ID改为8e,是LVM格式 已将分区“Linux”的类型更改为“Linux LVM” 命令(输入 m 获取帮助):p #列出磁盘的分区情况 磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x61797857 设备 Boot Start End Blocks Id System /dev/sdb1 2048 41943039 20970496 8e Linux LVM 命令(输入 m 获取帮助):w ##保存退出 The partition table has been altered! Calling ioctl() to re-read partition table. 正在同步磁盘。 [root@localhost ~]# fdisk /dev/sdc ##给sdc进行磁盘分区 欢迎使用 fdisk (util-linux 2.23.2)。 更改将停留在内存中,直到您决定将更改写入磁盘。 使用写入命令前请三思。 Device does not contain a recognized partition table 使用磁盘标识符 0xb56c7977 创建新的 DOS 磁盘标签。 命令(输入 m 获取帮助):n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p 分区号 (1-4,默认 1): 起始 扇区 (2048-41943039,默认为 2048): 将使用默认值 2048 Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039): 将使用默认值 41943039 分区 1 已设置为 Linux 类型,大小设为 20 GiB 命令(输入 m 获取帮助):t 已选择分区 1 Hex 代码(输入 L 列出所有代码):8e 已将分区“Linux”的类型更改为“Linux LVM” 命令(输入 m 获取帮助):w The partition table has been altered! Calling ioctl() to re-read partition table. 正在同步磁盘。

下一步创建物理卷

[root@localhost ~]# pvcreate /dev/sd[b-c]1 Physical volume "/dev/sdb1" successfully created. Physical volume "/dev/sdc1" successfully created. [root@localhost ~]# pvscan ##扫描物理卷 PV /dev/sda2 VG centos lvm2 [


【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3