Linux LVM逻辑卷管理介绍
- 格式:docx
- 大小:121.58 KB
- 文档页数:19
vgcreate参数vgcreate是一个用于创建卷组(Volume Group)的命令行工具。
通过使用vgcreate命令,用户可以在Linux系统中创建一个或多个卷组,以便于管理和分配存储空间。
卷组是逻辑卷管理器(Logical Volume Manager,LVM)中的一个重要概念。
LVM是一种用于管理磁盘分区的技术,它可以将多个物理硬盘的空间组合成一个逻辑卷组,从而方便地管理和分配存储空间。
通过使用LVM,用户可以动态地调整逻辑卷的大小,无需重新分区或重新格式化硬盘。
在使用vgcreate命令创建卷组时,需要指定卷组的名称和物理卷(Physical Volumes)。
物理卷是指硬盘上的一个分区或整个硬盘。
用户可以在创建卷组时指定一个或多个物理卷,并将它们组合成一个逻辑卷组。
在创建卷组之后,可以向卷组中添加或删除物理卷,以扩展或收缩存储空间。
下面是一个使用vgcreate命令创建卷组的示例:```vgcreate myvg /dev/sdb1 /dev/sdc1```上述命令将创建一个名为myvg的卷组,并将/dev/sdb1和/dev/sdc1这两个物理卷添加到卷组中。
用户可以根据实际情况修改命令中的卷组名称和物理卷路径。
创建卷组之后,用户可以使用lvcreate命令来创建逻辑卷(Logical Volume),并使用lvextend命令来扩展逻辑卷的大小。
逻辑卷是卷组中的一个逻辑分区,类似于传统的硬盘分区。
用户可以在逻辑卷上创建文件系统,并将其挂载到Linux文件系统中,以便于数据的读写和管理。
除了vgcreate命令之外,LVM还提供了其他一些命令,如vgdisplay、vgextend、vgreduce等,用于显示、扩展和缩减卷组的信息和功能。
在使用vgcreate命令创建卷组时,需要注意以下几点:1. 确保指定的物理卷存在且可用。
在创建卷组之前,需要先创建物理卷,并对其进行分区和格式化。
centos lvm 标准分区区别在CentOS操作系统中,LVM(Logical Volume Manager)和标准分区(traditional partitioning)是两种磁盘分区管理和操作方案。
它们之间有着一些本质的区别,下面将对它们进行详细对比。
1. 功能特性:标准分区是一种传统的分区方式,在磁盘被划分为多个固定大小的分区。
每个分区都有自己的文件系统类型和挂载点。
而LVM是一种高级分区管理工具,它提供了更灵活和强大的分区管理功能。
LVM的核心概念是物理卷(Physical Volume)、卷组(Volume Group)和逻辑卷(Logical Volume)。
LVM将物理卷合并到卷组中,然后在卷组上创建逻辑卷,使用户能够更加方便地扩展和管理磁盘空间。
2. 灵活性:使用LVM,可以动态的调整逻辑卷的大小,而不需要重新分区和格式化磁盘。
这对于有需要频繁调整磁盘空间大小的场景非常方便。
而在标准分区中,一旦分区大小确定后,就无法方便地进行调整。
3. 容错性:LVM提供了数据冗余的功能,可以在逻辑卷上配置镜像(mirrors)、条带化(striping)和跨卷组(spanning)等。
这样,当一个磁盘故障时,可以通过复制或者分布数据来实现数据的容错和高可用性。
而标准分区没有提供这种容错功能,如果一个分区损坏,将很难恢复数据。
4. 扩展性:LVM可以将多个物理卷合并到同一个卷组中,从而提供了更大的存储空间。
这使得扩展逻辑卷非常容易,只需将新的物理卷添加到卷组中即可。
而标准分区则没有这种扩展性,一旦使用了所有的磁盘空间,就需要重新分区和格式化磁盘。
5. 快照支持:LVM支持创建快照卷(snapshot),可以在创建快照时,记录逻辑卷的当前状态,以便在后续需要的时候进行数据恢复。
而标准分区不支持快照功能。
尽管LVM提供了更多的功能和灵活性,但它在某些场景下可能会增加一些复杂性。
标准分区则更适合对磁盘的大小和结构需求比较固定的场景。
Linux系统管理与运维操作手册第1章 Linux系统概述 (4)1.1 Linux的历史与特点 (4)1.2 Linux发行版的选择 (4)1.3 Linux系统架构 (5)第2章系统安装与初始配置 (5)2.1 安装Linux操作系统 (5)2.1.1 选择Linux发行版 (5)2.1.2 准备安装介质 (5)2.1.3 启动安装程序 (5)2.1.4 安装过程 (6)2.1.5 完成安装 (6)2.2 配置网络连接 (6)2.2.1 配置静态IP地址 (6)2.2.2 配置动态IP地址(DHCP) (6)2.2.3 配置域名解析 (6)2.3 系统初始设置 (6)2.3.1 更新系统软件包 (7)2.3.2 配置防火墙 (7)2.3.3 设置SSH远程登录 (7)2.3.4 配置系统时间同步 (7)2.3.5 配置系统日志 (7)第3章常用命令与Shell脚本 (8)3.1 基本命令使用 (8)3.1.1 文件操作命令 (8)3.1.2 文本操作命令 (8)3.1.3 权限管理命令 (8)3.1.4 磁盘管理命令 (8)3.1.5 网络管理命令 (8)3.2 文件权限与属性管理 (9)3.2.1 文件权限 (9)3.2.2 文件属性 (9)3.2.3 特殊权限 (9)3.3 文件压缩与解压缩 (9)3.3.1 常用压缩工具 (9)3.3.2 压缩命令使用 (9)3.3.3 解压缩命令使用 (9)3.4 Shell脚本编程 (10)3.4.1 脚本基础 (10)3.4.2 常用脚本示例 (10)第4章用户与群组管理 (10)4.1 用户账户管理 (10)4.1.2 修改用户账户 (11)4.1.3 删除用户账户 (11)4.2 用户群组管理 (11)4.2.1 创建用户群组 (11)4.2.2 修改用户群组 (12)4.2.3 删除用户群组 (12)4.3 权限分配与调整 (12)4.3.1 修改文件和目录权限 (12)4.3.2 修改文件和目录所有者 (12)4.3.3 修改文件和目录群组 (13)第5章存储管理 (13)5.1 文件系统类型 (13)5.1.1 Ext2/Ext3/Ext4 (13)5.1.2 XFS (13)5.1.3 Btrfs (13)5.1.4 ReiserFS (13)5.2 分区与挂载 (14)5.2.1 分区操作 (14)5.2.2 挂载文件系统 (14)5.3 LVM逻辑卷管理 (14)5.3.1 灵活调整卷大小 (14)5.3.2 简化存储管理 (14)5.3.3 容错与冗余 (14)5.4 磁盘配额管理 (14)5.4.1 启用磁盘配额 (14)5.4.2 配额设置与限制 (15)5.4.3 监控与维护 (15)第6章服务与进程管理 (15)6.1 系统启动过程 (15)6.2 系统服务管理 (15)6.3 进程管理 (16)6.4 定时任务调度 (16)第7章网络管理 (17)7.1 网络配置与优化 (17)7.1.1 网络接口配置 (17)7.1.2 路由配置 (17)7.1.3 网络优化 (17)7.2 防火墙与安全策略 (17)7.2.1 防火墙配置 (17)7.2.2 安全策略 (17)7.3 虚拟网络接口配置 (18)7.3.1 桥接网络 (18)7.3.2 VLAN配置 (18)7.4.1 网络监控 (18)7.4.2 故障排查 (18)第8章软件包管理 (18)8.1 软件包管理工具 (18)8.1.1 RPM (18)8.1.2 DPKG (19)8.2 软件包的安装与卸载 (19)8.2.1 使用RPM安装与卸载软件包 (19)8.2.2 使用DPKG安装与卸载软件包 (19)8.3 软件包仓库配置 (19)8.3.1 仓库配置文件 (19)8.3.2 仓库配置步骤 (19)8.4 源码编译安装 (19)8.4.1 安装编译工具 (20)8.4.2 编译安装步骤 (20)第9章系统安全与防护 (20)9.1 系统安全策略 (20)9.1.1 账户安全策略 (20)9.1.2 文件权限与属性策略 (20)9.1.3 网络安全策略 (20)9.2 SSH服务安全 (20)9.2.1 禁用SSH密码登录 (21)9.2.2 限制SSH访问 (21)9.2.3 SSH服务加固 (21)9.3 日志审计与监控 (21)9.3.1 日志审计 (21)9.3.2 监控工具 (21)9.4 系统漏洞扫描与修复 (21)9.4.1 漏洞扫描 (21)9.4.2 漏洞修复 (22)第10章系统功能优化与维护 (22)10.1 系统功能监控 (22)10.1.1 简介 (22)10.1.2 功能监控工具 (22)10.1.3 功能指标 (22)10.2 系统调优策略 (22)10.2.1 简介 (22)10.2.2 CPU优化 (22)10.2.3 内存优化 (22)10.2.4 磁盘I/O优化 (23)10.2.5 网络优化 (23)10.3 服务器硬件维护 (23)10.3.1 硬件检查 (23)10.3.3 硬件维护 (23)10.4 系统备份与恢复策略 (23)10.4.1 备份策略 (23)10.4.2 备份工具 (23)10.4.3 恢复策略 (23)第1章 Linux系统概述1.1 Linux的历史与特点Linux操作系统起源于1991年,由芬兰赫尔辛基大学的计算机科学学生Linus Torvalds创建。
LVM阶段性总结一.基本概念:LVM------LVM是逻辑盘卷管理.它是Unix/Linux环境下对磁盘分区进行管理的一种机制;LVM是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件系统。
二.基本术语:PV-------Physical Volimes 物理卷物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID) VG------Volume Group 卷组LVM卷组类似于非LVM系统中的物理硬盘,其由物理卷组成,可以是一个或者多个;LV-------logical Volumes 逻辑卷LVM的逻辑卷类似于非LVM系统中的硬盘分区,在逻辑卷之上可以建立文件系统(比如/home或者/usr等);PE-------Physical Extent物理卷的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元,PE的大小是可配置的,默认为4MB;LE-------Logical Extent逻辑卷可被寻址的基本单位,在同一个卷组中,LE的大小和PE是相同的,并且一一对应;三.创建.对PV的操作及其结果...创建PVpvcreate /dev/rdisk/diskX-------------此时盘里面多了VGRA/PVRA盘头信息.此步操作一些常用的参数:-B 制作启动盘.写入BDRA盘头信息.-s 要创建物理卷的大小.单位KB-f 强制创建物理卷.不管磁盘里面是否有其他的文件系统.创建VGmkdir /dev/vg01 创建一个VG使用的目录mknod /dev/vg01/group c 64 0x010000 创建vgcreate -p 255 -s 32 /dev/disk/disk1 /dev/disk/disk2vgcreate常用参数:-p 该卷组中包含的最大的物理卷的数量,为了以后维护,建议大点的数值.默认16。
LVM (Logical Volume Manager 逻辑卷管理者)HeQiang V1.0 2011‐3‐22作为在几乎所有Linux发行版操作系统中所带的逻辑卷管理方式(LVM),其最大的特点是部署灵活和操作方便。
而且在Red Hat Enterprise Linux中LVM也一直被作为默认的磁盘管理方式直接管理系统所在的设备文件。
同时LVM能够很好地支持例如软件Raid,裸设备等特殊磁盘类型,以及自带包括线性、条带、镜像、快照等多种功能,甚至在高版本系统中的Lvm2支持RHCS(Red Hat Cluster Suite)中的HA LVM和Cluster LVM,能够实现HA集群中对块设备的资源共享。
但在大多数时候,恐怕一般用户使用不到其中的这些功能,倒是一些关于LVM的extend和reduce这方面的操作屡见不鲜,并被所有人津津乐道。
显然,从大多数操作系统角度来看,部署了LVM的存储设备本身也是块设备,其extend和reduce这方面的工作进行的前后,对于一般的应用势必涉及到在上面的文件系统的调整。
LVM与Raid的区别(个人拙见):1.LVM比Raid在使用上灵活,可以在线对使用的LV扩大或减少(不建议,本人做了几次没有成功,可能没有使用ext2online),2.LVM性能不如RAID0,1,5,10等,因为LVM默认是写满一块磁盘才会写另一块,不像Raid0,可以把单个文件拆开写在多个磁盘。
实验环境:Linux 5.5 XEN虚拟机:要创建一个LVM系统,一般需要经过以下步骤:1、 创建分区使用分区工具(如:fdisk等)创建LVM分区,方法和创建其他一般分区的方式是一样的,区别仅仅是LVM的分区类型为8e。
2、 创建物理卷创建物理卷的命令为pvcreate,利用该命令将希望添加到卷组的所有分区或者磁盘创建为物理卷。
将整个磁盘创建为物理卷的命令为:3、 创建卷组创建卷组的命令为vgcreate,将使用pvcreate建立的物理卷创建为一个完整的卷组:vgcreate命令第一个参数是指定该卷组的逻辑名:VG1。
逻辑卷管理-lvcreate命令
一、lvcreate命令的作用
lvcreate命令用于创建LVM逻辑卷。
逻辑卷是创建在卷组之上的。
逻辑卷对应的设备文件保存在卷组目录下,例如:在卷组"vg1000"上创建一个逻辑卷"lvol0",则此逻辑卷对应的设备文件为"/dev/vg1000/lvol0"。
二、lvcreate命令的语法
lvcreate [选项] 卷组名
二、lvcreate命令的选项说明
-L 指定逻辑卷的大小;
-l 指定逻辑卷的大小(LE数量);
-n 指定逻辑卷名;
-s 创建快照。
三、lvcreate命令实例
(一)查看卷组信息
使用vgdisplay查看一下当前系统中的卷组的信息。
目前系统中有两个卷组,分别为vg1和vg2,卷组容量大小约为3GB。
(二)设置逻辑卷的大小
使用lvcreate命令在卷组"vg1"上创建两个逻辑卷,设置其大小分别为500M 和600M。
如果不指定逻辑卷名称,系统会默认给定一个名称,第一个逻辑卷名lvol0,第二逻辑卷名lvol1以此类推。
(三)设置逻辑卷的名称
使用lvcreate命令在卷组"vg1"上再创建一个逻辑卷,设置其大小为700M,名称为lv100。
注意新创建逻辑卷的大小不能超过卷组剩余的容量。
例如在卷组"vg1"上再创建一个逻辑卷lv200,设置其大小为2G,因为卷组上剩余空间没有2G,因此创建不成功。
linux vgs命令语法Linux vgs命令语法vgs命令是Linux系统中用于显示LVM(逻辑卷管理)卷组的详细信息的命令。
它可以列出系统中所有的卷组,包括卷组的名称、卷组中物理卷的数量、卷组中逻辑卷的数量以及卷组的总大小和可用大小等信息。
下面是vgs命令的详细介绍。
语法:vgs [选项] [卷组名]...选项:-a, --all:显示所有卷组,包括未激活的卷组。
--aligned:显示卷组对齐信息。
--config:显示LVM配置。
--columns:设置输出列的宽度。
--ignorelockingfailure:忽略锁定失败。
--ignoremonitoring:忽略监控。
-l, --logicalvolumes:显示逻辑卷信息。
-o, --options:设置输出的字段。
--rows:设置输出行的宽度。
-s, --separator:设置字段分隔符。
--segments:显示分段信息。
--sort:按指定的字段排序。
--units:设置输出单位。
卷组名:可以指定要显示的特定卷组的名称。
示例:1. 显示所有卷组的信息:$ vgs2. 显示特定卷组的信息:$ vgs vg1 vg23. 显示卷组的详细信息,包括逻辑卷信息和分段信息:$ vgs -l --segments4. 按照特定字段对卷组进行排序:$ vgs --sort vg_name5. 显示所有卷组的对齐信息:$ vgs --aligned6. 显示LVM配置:$ vgs --configvgs命令常用的选项有-a、-l、-o和--sort。
其中,-a选项用于显示所有卷组,包括未激活的卷组;-l选项用于显示逻辑卷信息;-o选项用于设置输出的字段,可以自定义显示的信息,如-v显示卷组的版本号、-s显示卷组的总大小、-a显示卷组的可用大小;--sort 选项用于按照指定的字段对卷组进行排序,常用的排序字段有vg_name、vg_size和vg_free。
vgcreate参数1. 什么是vgcreate命令vgcreate命令是Linux系统中LVM(Logical Volume Manager,逻辑卷管理器)的一个命令,用于创建一个新的卷组(Volume Group)。
LVM是一种在逻辑层次上管理磁盘存储的工具,可以提供更高的灵活性和易用性。
2. vgcreate命令的语法vgcreate [选项] 新卷组名称物理卷设备vgcreate命令有两个主要参数: - 新卷组名称:指定创建的新卷组的名称。
-物理卷设备:指定要包含在新卷组中的物理卷设备。
3. vgcreate命令的选项vgcreate命令支持一些常用的选项,可以根据需要进行配置:•-s, --physicalextentsize [+]Size:指定物理区块的大小。
可以使用单位例如B、K、M、G、T来指定大小。
默认值为4MB。
•-A, --autobackup {y|n}:指定是否自动备份卷组的元数据。
默认为y,表示自动备份。
•-c, --clustered {y|n}:指定是否创建一个集群卷组。
默认为n,表示不创建集群卷组。
•-e, --extentphysicaldevice {y|n}:指定是否保留分配给物理卷设备的空间。
默认为y,表示保留。
•-f, --force:强制创建卷组,即使卷组名称已被使用。
•-M, --metadatatype {lvm1|lvm2}:指定元数据格式版本,默认为lvm2。
•-m, --maxlogicalvolumes Max:指定最大逻辑卷数目,默认为0,表示没有限制。
•-p, --pvmetadatacopies Copies:指定物理卷的元数据备份数量,默认为1。
•-s, --physicalvolumesize Size:指定物理卷的大小,默认为0。
4. 使用vgcreate创建卷组下面是一个使用vgcreate命令创建卷组的示例:# 创建一个名为myvg的卷组,包含/dev/sdb和/dev/sdc两个物理卷设备$ vgcreate myvg /dev/sdb /dev/sdcVolume group "myvg" successfully created# 查看已创建的卷组$ vgdisplay--- Volume group ---VG Name myvgSystem IDFormat lvm2Metadata Areas 2Metadata Sequence No 1VG Access read/writeVG Status resizableMAX LV 0Cur LV 0Open LV 0Max PV 0Cur PV 2Act PV 2VG Size <XX.XX GiBPE Size 4.00 MiBTotal PE XXXXXAlloc PE / Size 0 / 0Free PE / Size XXXXX / Xxx GiBVG UUID XXXXXXXXXXXXXXXXXXXXXXXX在上面的示例中,我们创建了一个名为myvg的卷组,并且指定了包含在该卷组中的物理卷设备为/dev/sdb和/dev/sdc。
lvm的删除流程
LVM(逻辑卷管理)是一种用于管理磁盘分区和逻辑卷的工具。
删除LVM逻辑卷的流程如下:1. 确认逻辑卷的状态:使用命令`lvdisplay`查看当前系统中存在的逻辑卷。
确认要删除的逻辑卷的名称和状态。
2. 卸载逻辑卷:如果逻辑卷正在被使用,需要先将其卸载。
使用命令`umount`将逻辑卷从文件系统中卸载。
3. 删除文件系统:如果逻辑卷上存在文件系统,需要先删除文件系统。
使用命令`mkfs -t <文件系统类型> /dev/<VG名称>/<LV名称>`创建一个新的文件系统,覆盖原有的文件系统。
4. 删除逻辑卷:使用命令`lvremove /dev/<VG名称>/<LV名称>`删除指定的逻辑卷。
确认操作后,LVM将会删除该逻辑卷及其相关配置信息。
5. 删除物理卷:如果该物理卷不再被其他逻辑卷使用,可以选择删除物理卷。
使用命令`pvremove /dev/<物理设备名称>`来删除指定的物理设备。
6. 更新配置信息:在完成上述步骤后,需要更新LVM配置信息以反映更改。
使用命令`vgscan`扫描所有可用的物理设备和磁盘分区,并更新LVM配置。
请注意,在执行上述步骤之前,务必备份重要数据,并确保删除操作不会对系统的正常运行产生负面影响。
此外,删除逻辑卷和物理卷是不可逆的操作,请谨慎操作。
linux lvm.conf 中filter 表达式Linux LVM(Logical Volume Manager)是一种在Linux 操作系统上进行逻辑卷管理的工具。
它允许管理员在不中断现有系统运行的情况下,对硬盘进行分区、管理和扩展。
在LVM 中,lvm.conf 文件是一个非常重要的配置文件,其中的filter 表达式对于合理选择并识别逻辑卷非常关键。
本文将一步一步回答关于Linux LVM 中lvm.conf 文件中filter 表达式的问题,探讨其作用、语法和示例等。
1. filter 表达式的作用是什么?在LVM 逻辑卷管理过程中,系统中的所有存储设备(如硬盘)都可以被列为物理卷(PV,Physical Volume)。
LVM 使用filter 表达式来选择需要用于逻辑卷管理的物理卷。
filter 表达式可以过滤掉那些不需要或不应该用于逻辑卷管理的物理卷,以避免对存储设备进行误操作。
2. 如何在lvm.conf 文件中设置filter 表达式?要在lvm.conf 文件中设置filter 表达式,可以按照以下步骤进行操作:步骤1:打开lvm.conf 文件首先,在终端中以管理员权限打开一个文本编辑器,如使用vim 命令打开lvm.conf 文件:sudo vim /etc/lvm/lvm.conf步骤2:定位到filter 配置项在打开的lvm.conf 文件中,使用搜索功能(如在vim 中按"/" 键)来查找"filter" 配置项:/filter步骤3:编辑filter 配置项找到filter 配置项后,将其值进行编辑。
filter 配置项的值是一个逻辑表达式,用于指定物理卷的选择条件。
可以使用多个filter 配置项,每个filter 配置项对应于一个表达式。
3. filter 表达式的语法是怎样的?filter 表达式的语法是基于逻辑运算符和通配符的。
在Rocky4.2系统配置LVM逻辑卷目录1 概述 (1)1.1 介绍 (1)1.2 配置一览 (1)2 初始配置 (2)2.1 安装操作系统 (3)2.2 显示物理卷的内容 (3)2.3 创建新的LVM物理卷 (4)2.4 LVM物理卷的扫描 (4)2.5 创建LVM卷组 (4)2.6 扫描LVM卷组 (5)2.7 查询LVM卷组 (5)2.8 创建LVM逻辑卷 (6)2.9 查询LVM逻辑卷 (6)2.10 LVM逻辑卷扫描 (7)2.11 挂载LVM逻辑卷 (7)3 逻辑卷空间的扩大与缩小 (8)3.1逻辑卷空间的扩大 (8)3.2逻辑卷空间的缩小 (9)4 添加新的硬盘 (10)4.1 添加新硬盘 (10)4.2 创建LVM物理卷 (12)4.3 扩容现有LVM卷组 (13)4.4 扩容现有LVM逻辑卷 (14)4.5 扩容文件系统 (15)5 LVM快照 (16)5.1 创建快照 (16)5.2 备份快照内容 (17)5.3 删除快照 (18)第I 页在Rocky4.2系统配置LVM逻辑卷-V1.11 概述1.1 介绍LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性.通过LVM系统管理员可以轻松管理磁盘分区,如:将若干个磁盘分区连接为一个整块的卷组(volumegroup),形成一个存储池.管理员可以在卷组上随意创建逻辑卷组(logicalvolumes),并进一步在逻辑卷组上创建文件系统.管理员通过LVM可以方便的调整存储卷组的大小,并且可以对磁盘存储按照组的方式进行命名、管理和分配,例如按照使用用途进行定义: “development”和"sales",而不是使用物理磁盘名sda和sdb,但是通俗而言,我们可以把逻辑卷比作如下结构:1.2 配置一览创建LVM 的一般过程:对磁盘分区(fdisk)-->创建物理卷(pvcreate)-->创建卷组(vgcreate)-->创建逻辑卷(lvcreate)-->创建文件系统(mkfs)-->挂载文件系统(mount)-->添加到文件系统列表(/etc/fstab)删除LVM卷组的一般过程:卸载文件系统(umount)-->卸载逻辑卷(lvremove)-->停止卷组活动(vgchange -an)-->删除卷组(vgremove)必要时还需清理一下文件系统列表(/etc/fstab)重要提醒:在做相关文件系统调整前,请做好重要资料的备份,以防止丢失第1 页在Rocky4.2系统配置LVM逻辑卷-V1.12 初始配置由于目前rocky4.2.35安装光盘在系统安装阶段暂时不支持LVM创建,故只能在系统安装完成之后,对其他硬盘(除了根目录分区之外的硬盘设备)进行LVM逻辑卷的配置由于LVM逻辑卷卷需要如下几个模块:dm-mod 、dm-log 、dm-mirror 、dm-snapshot为了实现开机自动加载及自动挂载LVM逻辑卷等功能,需要在开机启动脚本里进行一下配置执行附件里面的rocky-lvm2-init.tar.gz脚本安装方法tarxvzf rocky-lvm2-init.tar.gzcd rocky-lvm2-init./setup第2 页在Rocky4.2系统配置LVM逻辑卷-V1.12.1 安装操作系统安装后,添加两块新的硬盘,并对第一块硬盘进行分区如下所示rocky-lvm:~ # fdisk -lDisk /dev/sda: 8589 MB, 8589934592 bytes64 heads, 32 sectors/track, 8192 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytesDevice Boot Start End Blocks Id System/dev/sda1 * 1 7153 7324656 83 Linux/dev/sda2 7154 8192 1063936 82 Linuxswap / SolarisDisk /dev/sdb: 8589 MB, 8589934592 bytes64 heads, 32 sectors/track, 8192 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytesDevice Boot Start End Blocks Id System/dev/sdb1 1 4387 4492272 83 Linux/dev/sdb2 4388 8192 3896320 83 LinuxDisk /dev/sdc: 4294 MB, 4294967296 bytes133 heads, 62 sectors/track, 1017 cylindersUnits = cylinders of 8246 * 512 = 4221952 bytesDevice Boot Start End Blocks Id System2.2 显示物理卷的内容使用pvdisplay命名查看一下目前存在有哪些物理卷第3 页在Rocky4.2系统配置LVM逻辑卷-V1.12.3 创建新的LVM物理卷使用pvcreate命令将目前存在的/dev/sdb1分区和/dev/sdc两个设备初始化为LVM物理卷,以便将它们用于LVM创建LVM物理卷,即可以是整块硬盘设备,也可以是单独的某个分区rocky-lvm:~ # pvcreate /dev/sdb1 /dev/sdcPhysical volume "/dev/sdb1" successfully createdPhysical volume "/dev/sdc" successfully created2.4 LVM物理卷的扫描使用pvscan或者pvs命令,扫描系统里面所有的LVM物理卷rocky-lvm:~ # pvscanPV /dev/sdb1 lvm2 [4.28 GiB]PV /dev/sdc lvm2 [4.00 GiB]Total: 2 [8.28 GiB] / in use: 0 [0 ] / in no VG: 2 [8.28 GiB]rocky-lvm:~ # pvsPV VG FmtAttrPSizePFree/dev/sdb1 lvm2 a- 4.28g 4.28g/dev/sdc lvm2 a- 4.00g 4.00g2.5 创建LVM卷组卷组的英文名称为Volume Group,简称VG使用vgcreate命令,可以创建LVM卷组如下,使用目前存在的sdb1、sdc物理卷创建一个名叫rocky_vg的卷组rocky-lvm:~ # vgcreaterocky_vg /dev/sdb1 /dev/sdc/proc/devices: No entry for device-mapper found/proc/devices: No entry for device-mapper foundVolume group "rocky_vg" successfully created第4 页在Rocky4.2系统配置LVM逻辑卷-V1.12.6 扫描LVM卷组扫描LVM卷组,可以使用命令pvscan或者pvsrocky-lvm:~ # lvsLV VG AttrLSize Origin Snap% Move Log Copy%Convertdbdatarocky_vg -wi-a- 2.00grocky-lvm:~ # lvscanACTIVE '/dev/rocky_vg/dbdata' [2.00 GiB] inherit2.7 查询LVM卷组显示LVM卷组信息,使用命令vgdisplay或者vgsrocky-lvm:~ # vgdisplay--- Volume group ---VG Name rocky_vgSystem IDFormat lvm2Metadata Areas 2Metadata Sequence No 1VG Access read/writeVG Status resizableMAX LV 0Cur LV 0Open LV 0Max PV 0Cur PV 2Act PV 2VG Size 8.28 GiBPE Size 4.00 MiBTotal PE 2119Alloc PE / Size 0 / 0Free PE / Size 2119 / 8.28 GiBVG UUID 21m351-c1Wr-RHrf-qIUN-N0T0-BGNq-4nDcTF第5 页在Rocky4.2系统配置LVM逻辑卷-V1.12.8 创建LVM逻辑卷使用命令lvcreate命令,可以创建LVM逻辑卷如下,在卷组rocky_vg上创建一个名为dbdata的逻辑卷rocky-lvm:~ # lvcreate --name dbdata --size 2G rocky_vg Logical volume "dbdata" created2.9 查询LVM逻辑卷rocky-lvm:~ # lvdisplay--- Logical volume ---LV Name /dev/rocky_vg/dbdataVG Name rocky_vgLV UUID S32uve-F8CA-nx3H-bm0V-ebll-d8ls-uSfg4rLV Write Access read/writeLV Status available# open 0LV Size 2.00 GiBCurrent LE 512Segments 1Allocation inheritRead ahead sectors auto- currently set to 256Block device 254:0第6 页在Rocky4.2系统配置LVM逻辑卷-V1.12.10 LVM逻辑卷扫描使用命令lvscan或者lvs-----------rocky-lvm:~ # lvsLV VG AttrLSize Origin Snap% Move Log Copy%Convertdbdatarocky_vg -wi-a- 2.00grocky-lvm:~ # lvscanACTIVE '/dev/rocky_vg/dbdata' [2.00 GiB] inherit 2.11 挂载LVM逻辑卷创建目录/dbdata,用来挂载刚创建的逻辑卷dbdata创建目录mkdir /dbdata格式化mkfs.xfs /dev/rocky_vg/dbdata挂载目录mount /dev/rocky_vg/dbdata /dbdata使用df或者mount命令__________查看挂载信息rocky-lvm:/ # df -h文件系统容量已用可用已用%% 挂载点/dev/sda1 7.0G 4.0G 2.7G 60% /tmpfs 502M 0 502M 0% /dev/shm/dev/mapper/rocky_vg-dbdata2.0G 4.3M 2.0G 1% /dbdatarocky-lvm:/ # mount/dev/sda1 on / type ext3 (rw,acl)proc on /proc type proc (rw)sysfs on /sys type sysfs (rw)devpts on /dev/pts type devpts (rw)tmpfs on /dev/shm type tmpfs (rw)/dev/mapper/rocky_vg-dbdata on /dbdata type xfs (rw)如果需要实现开机启动,需要通过UUID的方式将挂载内容写在文件/etc/fstab 里面第7 页在Rocky4.2系统配置LVM逻辑卷-V1.13 逻辑卷空间的扩大与缩小逻辑卷的扩大与缩小原则为:”在线扩大,离线缩小”,所谓在线扩大意思是逻辑卷可以在挂载情况下动态扩展,而离线缩小则需要先将文件系统卸载下来再缩小.逻辑卷的扩大主要包含两个步骤:1.逻辑卷本身的容量扩大;2.文件系统的扩大.3.1逻辑卷空间的扩大需要将目前的逻辑卷dbdata由2G扩展增大为4G通过命令vgdisplay查看,由于卷组rocky_vg还有4G左右的空间没有使用,故可以从该卷组直接对逻辑卷dbdata进行扩容rocky-lvm:/etc/rc.d/rcsysinit.d # lvextend -L +2G/dev/rocky_vg/dbdataExtending logical volume dbdata to 4.00 GiBInternal error: Maps size mismatch (14692352,11386880,2129920) != (14688256,11382784,2129920)Logical volume dbdata successfully resized使用df -h命令查看rocky-lvm:/etc/rc.d/rcsysinit.d # df -h文件系统容量已用可用已用%% 挂载点/dev/sda1 7.0G 4.0G 2.7G 60% /tmpfs 502M 0 502M 0% /dev/shm/dev/mapper/rocky_vg-dbdata2.0G 4.3M 2.0G 1% /dbdata可见并没有立即生效,需要使用xfs文件系统扩展命令xfs_growfs对文件系统进行扩展.rocky-lvm:/etc/rc.d/rcsysinit.d # xfs_growfs /dev/rocky_vg/dbdata meta-data=/dev/rocky_vg/dbdataisize=256 agcount=8,agsize=65536 blks= sectsz=512 attr=0data = bsize=4096 blocks=524288,imaxpct=25= sunit=0 swidth=0 blks,unwritten=1naming =version 2 bsize=4096log =internal bsize=4096 blocks=2560,version=1= sectsz=512 sunit=0 blks, lazycount=realtime =none extsz=4096 blocks=0,rtextents=0data blocks changed from 524288 to 1048576rocky-lvm:/etc/rc.d/rcsysinit.d # df -h第8 页在Rocky4.2系统配置LVM逻辑卷-V1.1文件系统容量已用可用已用%% 挂载点/dev/sda1 7.0G 4.0G 2.7G 60% /tmpfs 502M 0 502M 0% /dev/shm/dev/mapper/rocky_vg-dbdata4.0G 4.6M 4.0G 1% /dbdata由上可知扩展成功提示:如果是ext3文件系统的话,增加LVM逻辑卷之后,需要执行命令resize2fs /dev/rocky_vg/dbdata从而是扩展的地址空间立即生效3.2逻辑卷空间的缩小需要将目前的逻辑卷dbdata由4G扩展缩小为2G前提,磁盘剩余空间大于2G,对于逻辑卷的缩小,我们所采取的步骤与扩大刚好相反,即:扩大为先扩大逻辑卷本身,再扩大文件系统;而缩小则是卸载文件系统后,先缩小文件系统,再缩小逻辑卷.由于xfs目前仅支持扩大,尚不支持本位缩小,故我们以ext3为例子介绍如何缩小逻辑卷.rocky-lvm:/etc/rc.d/rcsysinit.d #resize2fs /dev/rocky_vg/dbdata resize2fs 1.41.12 (17-May-2010)请先运行'e2fsck -f /dev/rocky_vg/dbdata'.rocky-lvm:/etc/rc.d/rcsysinit.d #e2fsck -f /dev/rocky_vg/dbdatae2fsck 1.41.12 (17-May-2010)第一步: 检查inode,块,和大小第二步: 检查目录结构第3步: 检查目录连接性Pass 4: Checking reference counts第5步: 检查簇概要信息/dev/rocky_vg/dbdata: clean, 12/3072 files, 1531/524288 blocks再次使用resize2fs /dev/rocky_vg/dbdatarocky-lvm:/etc/rc.d/rcsysinit.d#resize2fs /dev/rocky_vg/dbdata resize2fs 1.41.12 (17-May-2010)Resizing the filesystem on /dev/rocky_vg/dbdata to 2048000 (1k) blocks.The filesystem on /dev/rocky_vg/dbdata is now 2048000 blockslong.再使用lvreduce即可减少逻辑卷大小rocky-lvm:/etc/rc.d/rcsysinit.d #lvreduce/dev/rocky_vg/dbdata–L2G /dev/cdrom: open failed: 只读文件系统WARNING: Reducing active logical volume to 2.00 GiBTHIS MAY DESTROY YOUR DATA (filesystem etc.)Do you really want to reduce db_data? [y/n]: yReducing logical volume test to 2.00 GiBInternal error: Maps size mismatch (14913536,11456512,2207744) != (14909440,11452416,2207744)Logical volume dbdata successfully resizedrocky-lvm:/etc/rc.d/rcsysinit.d # mount /dev/rocky/dbdata/dbdatarocky-lvm:/etc/rc.d/rcsysinit.d # df -h文件系统容量已用可用已用%% 挂载点/dev/sda1 7.0G 4.0G 2.7G 60% /tmpfs 502M 0 502M 0% /dev/shm/dev/mapper/rocky_vg-dbdata2.0G 4.6M 2.0G 1% /dbdata由上可知缩小成功.4 添加新的硬盘4.1 添加新硬盘rocky-lvm:~ # fdisk -lDisk /dev/hda: 1073 MB, 1073741824 bytes255 heads, 63 sectors/track, 130 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDisk /dev/hda doesn't contain a valid partition tableDisk /dev/sda: 8589 MB, 8589934592 bytes64 heads, 32 sectors/track, 8192 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytesDevice Boot Start End Blocks Id System/dev/sda1 * 1 7153 7324656 83 Linux/dev/sda2 7154 8192 1063936 82 Linuxswap / SolarisDisk /dev/sdb: 8589 MB, 8589934592 bytes64 heads, 32 sectors/track, 8192 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytes第10 页在Rocky4.2系统配置LVM逻辑卷-V1.1Device Boot Start End Blocks Id System/dev/sdb1 1 4387 4492272 83 Linux/dev/sdb2 4388 8192 3896320 83 LinuxDisk /dev/sdc: 4294 MB, 4294967296 bytes133 heads, 62 sectors/track, 1017 cylindersUnits = cylinders of 8246 * 512 = 4221952 bytesDisk /dev/sdc doesn't contain a valid partition table 第11 页在Rocky4.2系统配置LVM逻辑卷-V1.14.2 创建LVM物理卷rocky-lvm:~ # pvcreate /dev/hdaPhysical volume "/dev/hda" successfully created查看扩容后的物理卷rocky-lvm:~ # pvdisplay /dev/hda"/dev/hda" is a new physical volume of "1.00 GiB"--- NEW Physical volume ---PV Name /dev/hdaVG NamePV Size 1.00 GiBAllocatable NOPE Size 0Total PE 0Free PE 0Allocated PE 0PV UUID MlWLxu-lfxn-foOa-nxEq-yyUe-ccK0-CJbCFx第12 页在Rocky4.2系统配置LVM逻辑卷-V1.14.3 扩容现有LVM卷组rocky-lvm:~ # vgextendrocky_vg /dev/hdaVolume group "rocky_vg" successfully extendedrocky-lvm:~ # vgdisplay--- Volume group ---VG Name rocky_vgSystem IDFormat lvm2Metadata Areas 3Metadata Sequence No 5VG Access read/writeVG Status resizableMAX LV 0Cur LV 1Open LV 1Max PV 0Cur PV 3Act PV 3VG Size 9.27 GiBPE Size 4.00 MiBTotal PE 2374Alloc PE / Size 1280 / 5.00 GiBFree PE / Size 1094 / 4.27 GiBVG UUID 21m351-c1Wr-RHrf-qIUN-N0T0-BGNq-4nDcTF由上可知,卷组rocky_vg已经由原来的8G,扩大到了9G第13 页在Rocky4.2系统配置LVM逻辑卷-V1.14.4 扩容现有LVM逻辑卷rocky-lvm:~ # lvextend -L+1G /dev/rocky_vg/dbdataExtending logical volume dbdata to 6.00 GiBInternal error: Maps size mismatch (14692352,11386880,2129920 ) != (14688256,11382784,2129920)Logical volume dbdata successfully resizedrocky-lvm:~ # lvdisplay--- Logical volume ---LV Name /dev/rocky_vg/dbdataVG Name rocky_vgLV UUID S32uve-F8CA-nx3H-bm0V-ebll-d8ls-uSfg4rLV Write Access read/writeLV Status available# open 1LV Size 6.00 GiBCurrent LE 1536Segments 2Allocation inheritRead ahead sectors auto- currently set to 256Block device 254:0第14 页在Rocky4.2系统配置LVM逻辑卷-V1.14.5 扩容文件系统rocky-lvm:~ # xfs_growfs /dbdata/meta-data=/dev/rocky_vg/dbdataisize=256 agcount=20,agsize=65536 blks= sectsz=512 attr=0data = bsize=4096 blocks=1310720,imaxpct=25= sunit=0 swidth=0 blks,unwritten=1naming =version 2 bsize=4096log =internal bsize=4096 blocks=2560,version=1= sectsz=512 sunit=0 blks, lazycount=realtime =none extsz=4096 blocks=0,rtextents=0data blocks changed from 1310720 to 1572864rocky-lvm:~ # df -h文件系统容量已用可用已用%% 挂载点/dev/sda1 7.0G 4.0G 2.7G 60% /tmpfs 502M 0 502M 0% /dev/shm/dev/mapper/rocky_vg-dbdata6.0G 4.8M 6.0G 1% /dbdata至此,新硬盘扩容成功第15 页在Rocky4.2系统配置LVM逻辑卷-V1.15 LVM快照快照本身实际上也是一个LVM逻辑卷,只不过是源逻辑卷的副本。
parted命令,lvmparted命令通常我们使⽤fdisk命令进⾏划分,但是fdisk只能划分2T的磁盘,所有有两个办法解决这个问题,其⼀,通过卷管理,其⼆,通过parted实现对超过2T磁盘分区操作。
GPT格式的磁盘相当于原来MBR磁盘中保留4个partition table的4*16个字节,GPT分区没有4个分区的限制,最多可达到128个分区。
⽤法:parted 【选项】 ... 【设备【命令【参数】...】...】带有参数的命令⽤于设备,如果没有给出命令,则已交互模式运⾏帮助选项:-h, --help 显⽰此求助信息-l, --list 列出所有设别的分区信息-i, --interactive 在必要时,提⽰⽤户-s, --script 从不提⽰⽤户-v, --version 显⽰版本操作命令:cp [FROM-DEVICE] FROM-MINOR TO-MINOR #将⽂件系统复制到另⼀个分区help [COMMAND] #打印通⽤求助信息,或关于 COMMAND 的信息mklabel 标签类型 #创建新的磁盘标签 (分区表)mkfs MINOR ⽂件系统类型 #在 MINOR 创建类型为“⽂件系统类型”的⽂件系统mkpart 分区类型 [⽂件系统类型] 起始点终⽌点 #创建⼀个分区mkpartfs 分区类型⽂件系统类型起始点终⽌点 #创建⼀个带有⽂件系统的分区move MINOR 起始点终⽌点 #移动编号为 MINOR 的分区name MINOR 名称 #将编号为 MINOR 的分区命名为“名称”print [MINOR] #打印分区表,或者分区quit #退出程序rescue 起始点终⽌点 #挽救临近“起始点”、“终⽌点”的遗失的分区resize MINOR 起始点终⽌点 #改变位于编号为 MINOR 的分区中⽂件系统的⼤⼩rm MINOR #删除编号为 MINOR 的分区select 设备 #选择要编辑的设备set MINOR 标志状态 #改变编号为 MINOR 的分区的标志parted⼯具详解:1. 进⼊parted的命令:类似于fdisk⼀样选择分区2. 查看单个磁盘状态parted /dev/sdb #因未打上标签所有信息⽆法展⽰,这时候就需要先创建磁盘标签:mklabel标签类型:gpt msdos这时候就可以看到了3. 通过parted⼯具创建分区mkpart分区名称⽂件系统类型起始点:1结束点:都⾏最后p查看⼀下4. 删除: 进⼊p rm 序号5. 恢复分区,需要先挂载,⽽且⽂件类型为xfs类型rescue起始点结束点yes?LVM逻辑卷管理可以对磁盘进⾏动态管理。
vgcreate参数vgcreate是一个用于创建LVM(Logical Volume Manager,逻辑卷管理器)卷组(Volume Group)的命令。
LVM是Linux系统中一种用于管理硬盘分区的工具,它可以将多个硬盘分区组合成一个逻辑卷,从而提供更灵活和高效的磁盘管理方式。
使用vgcreate命令可以将多个物理卷(Physical Volume)组合成一个卷组。
物理卷是LVM中的最小单位,可以是硬盘的整个分区、分区的一部分或者一块磁盘。
而卷组则是由多个物理卷组成的逻辑单位,在卷组上可以创建逻辑卷(Logical Volume),并在逻辑卷上创建文件系统。
使用vgcreate命令创建卷组时,需要指定卷组的名称和物理卷的路径。
例如,可以使用以下命令创建一个名为"myvg"的卷组,并将两个物理卷"/dev/sdb1"和"/dev/sdc1"添加到该卷组中:```vgcreate myvg /dev/sdb1 /dev/sdc1```创建卷组后,可以使用其他命令来管理卷组和逻辑卷。
例如,可以使用lvcreate命令创建逻辑卷,使用lvextend命令扩展逻辑卷的大小,使用lvremove命令删除逻辑卷等。
通过这些命令的组合使用,可以实现对硬盘分区的灵活管理和优化利用。
LVM提供了许多优点。
首先,LVM可以将多个硬盘分区组合成一个逻辑卷,从而提供更大的存储空间。
其次,LVM可以动态地调整逻辑卷的大小,而无需重新分区或重新格式化。
此外,LVM还支持对逻辑卷的快照(Snapshot)功能,可以在不中断正在使用的文件系统的情况下创建备份。
此外,LVM还支持将逻辑卷迁移到其他物理卷上,以实现热插拔和负载均衡。
使用vgcreate命令创建卷组时,需要注意以下几点。
首先,要确保指定的物理卷存在且可用。
其次,要根据需求合理规划卷组的大小和容量。
最后,要注意卷组的命名规范,以便于管理和识别。
linux最佳分区方案Linux最佳分区方案在Linux系统中,分区是一项重要的任务,可以帮助我们更好地管理硬盘空间和数据存储。
选择一个适合你的最佳分区方案,可以提高系统性能、数据安全和管理效率。
本文将介绍一些常见的Linux最佳分区方案。
1. 分区的基本概念在开始讨论最佳分区方案之前,我们首先需要了解一些基本的分区概念:- 主分区(Primary Partition):主分区是在硬盘上创建的第一个分区。
一个硬盘最多可以有4个主分区或3个主分区和1个扩展分区。
- 扩展分区(Extended Partition):扩展分区可以将一个主分区划分为多个逻辑分区。
它只能存在于主分区中。
- 逻辑分区(Logical Partition):逻辑分区是在扩展分区中创建的分区。
一个扩展分区最多可以创建无限个逻辑分区。
2. 常见的分区方案2.1. 标准分区方案标准分区方案是最常见的分区方案之一,特点是将整个硬盘分为多个主分区。
每个主分区可以用于安装不同的操作系统或者作为数据分区。
以下是一个标准分区方案的示例:- 主分区1:用于安装Linux系统。
- 主分区2:用于安装Windows系统。
- 主分区3:用于存储用户数据。
这种分区方案适合需要在同一台计算机上使用多个操作系统的人。
2.2. 单一根分区方案单一根(/)分区方案是一种简单而流行的分区方案。
它将整个硬盘分为一个根分区和一个交换分区(Swap)。
根分区包含Linux操作系统的所有文件和目录,而交换分区用于虚拟内存的管理。
这种分区方案的示例如下:- 根分区(/):用于安装Linux系统和存储所有的文件和目录。
- 交换分区(Swap):用于虚拟内存的管理。
这种分区方案适合旧的计算机或者硬件资源有限的情况下使用,它的优点是简单、易于管理。
2.3. 分离系统和数据分区方案分离系统和数据分区方案是一种将系统文件和用户数据分开存储的分区方案。
这种分区方案的示例如下:- 根分区(/):用于安装Linux系统和存储系统文件。
lvm的删除流程LVM(逻辑卷管理)是一种逻辑分区的管理工具,用于管理硬盘空间的分配和管理。
在LVM中,可以将多个硬盘的空间组合成一个逻辑卷组(Volume Group),然后再将逻辑卷组划分为一个个的逻辑卷(Logical Volume),最后再将逻辑卷格式化为文件系统并挂载到系统上。
当需要删除LVM中的逻辑卷时,需要按照以下步骤进行操作:1. 卸载逻辑卷:在删除逻辑卷之前,首先需要将逻辑卷从系统中卸载。
可以通过执行命令`umount`来卸载逻辑卷。
2. 删除文件系统:卸载逻辑卷后,需要执行命令`lvremove`来删除逻辑卷的文件系统。
例如,删除名为`lv_data`的逻辑卷的文件系统,可以执行命令`lvremove /dev/vg_data/lv_data`。
3. 删除逻辑卷:在删除逻辑卷的文件系统后,需要执行命令`lvremove`来删除逻辑卷。
例如,删除名为`lv_data`的逻辑卷,可以执行命令`lvremove /dev/vg_data/lv_data`。
4. 调整逻辑卷组大小(可选):如果删除逻辑卷后,逻辑卷组的空间大小发生了变化,可以通过执行命令`vgreduce`来调整逻辑卷组的大小。
例如,将名为`vg_data`的逻辑卷组调整为逻辑卷大小发生变化后的大小,可以执行命令`vgreduce /dev/vg_data`。
5. 删除逻辑卷组:在删除逻辑卷后,如果逻辑卷组不再包含任何逻辑卷,则可以执行命令`vgremove`来删除逻辑卷组。
例如,删除名为`vg_data`的逻辑卷组,可以执行命令`vgremove /dev/vg_data`。
6. 删除物理卷:在删除逻辑卷组后,如果物理卷不再包含在任何逻辑卷组中,则可以执行命令`pvremove`来删除物理卷。
例如,删除名为`/dev/sdb1`的物理卷,可以执行命令`pvremove /dev/sdb1`。
一般来说,删除LVM中的逻辑卷可以按照上述步骤进行操作。
Linux LVM 逻辑卷管理本文介绍了 LVM 的概念、作用以及使用方法。
一、什么是 LVM 1.1 LVM 概念 LVM 是逻辑盘卷管理(Logical Volume Manager)的简称, 它是对磁盘分区进行 管理的一种机制, 建立在硬盘和分区之上的一个逻辑层,用来提高磁盘管理的灵 活性。
通过 LVM 可将若干个磁盘分区连接为一个整块的卷组(Volume Group), 形成一个存储池。
可以在卷组上随意创建逻辑卷(Logical Volumes),并进一步 在逻辑卷上创建文件系统, 与直接使用物理存储在管理上相比,提供了更好灵活 性。
LVM 本质上是一个虚拟设备驱动,处于物理设备和文件系统层之间,维护着逻 辑盘区和物理盘区之间的映射。
它将几块磁盘或者分区组合起来形成一个存储池 或者卷组, LVM 从卷组中划分出不同大小的逻辑卷创建新的逻辑设备。
图 1 是 LVM 结构模拟图示。
图 1 LVM 构成结构示意图 1.2 LVM 优点LVM 将存储虚拟化,使用逻辑卷,你不会受限于物理磁盘的大小,另外,与硬 件相关的存储设置被其隐藏, 你可以不用停止应用或卸载文件系统来调整卷大小 或数据迁移。
这样可以减少操作成本。
LVM 与直接使用物理存储相比,有以下优点: 1.灵活的容量 当使用逻辑卷时, 文件系统可以扩展到多个磁盘上,你可以聚合多个磁盘或磁盘 分区成单一的逻辑卷。
2.可伸缩的存储池 你可以使用简单的命令来扩大或缩小逻辑卷大小, 不用重新格式化或分区磁盘设 备。
3.在线的数据再分配 你可以在线移动数据,数据可以在磁盘在线的情况下重新分配。
比如,你可以在 线更换可热插拔的磁盘。
4.方便的设备命名 逻辑卷可以按你觉得方便的方式来起任何名称。
5.磁盘条块化 你可以生成一个逻辑盘, 它的数据可以被条块化存储在 2 个或更多的磁盘上。
这 样可以明显提升数据吞吐量。
6.镜像卷 LVM 逻辑卷提供方便的方法来镜像你的数据。
7.卷快照使用逻辑卷, 你可以获得设备快照用来一致性备份或者测试数据更新效果而不影 响真实数据。
二、LVM 的作用 通过 LVM 可以方便的在线调整存储卷的大小,并且可以对磁盘存储按照组的方 式进行命名、管理和分配,例如按照使用用途进行定义:“development”和 “sales”,而不是使用物理磁盘名“sda”和 “sdb”。
当系统添加了新的磁 盘,通过 LVM 可以直接扩展文件系统跨越该磁盘,而不必将文件移动到新的磁 盘上。
此外, LVM 快照功能以及 LVM 镜像功能, 也被普遍应用于数据的备份与恢复系 统中。
三、LVM 相关基本概念图 2 PV、VG、LV 的关系 3.1 物理存储介质(The physical media) 这里指系统的存储设备:硬盘,如:/dev/hda1、/dev/sda 等等,是存储系统 最低层的存储单元。
3.2 物理卷(Physical Volume) 物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如 RAID), 是 LVM 的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较, 却包含有与 LVM 相关的管理参数。
3.3 卷组(Volume Group) 卷组由物理卷组成,类似于非 LVM 系统中的物理硬盘,可以在卷组上创建一个 或多个"LVM 分区"(逻辑卷)。
3.4 逻辑卷(Logical Volume)LVM 的逻辑卷类似于非 LVM 系统中的硬盘分区, 在逻辑卷之上可以建立文件系 统(比如/home 或者/usr 等)。
线性逻辑卷 (Linear Volumes) 一个线性逻辑卷聚合多个物理卷成为一个逻辑卷.比如,如果你有两个 60GB 硬盘, 你可以生成 120GB 的逻辑卷. 3.5 条块化的逻辑卷(Striped Logical Volumes) 当你写数据到此逻辑卷中时,文件系统可以将数据放置到多个物理卷中.对于大量 连接读写操作,它能改善数据 I/O 效率. 3.6 镜像的逻辑卷(Mirrored Logical Volumes) 镜像在不同的设备上保存一致的数据.数据同时被写入原设备及镜像设备.它提供 设备之间的容错。
3.7 快照卷(Snapshot Volumes) 快照卷提供在特定瞬间的一个设备虚拟映像,当快照开始时,它复制一份对当前 数据区域的改变,由于它优先执行这些改变,所以它可以重构当前设备的状态。
3.8 PE(Physical Extent) 每一个物理卷被划分为称为 PE(Physical Extents)的基本单元,具有唯一编号的 PE 是可以被 LVM 寻址的最小单元。
PE 的大小是可配置的,默认为 4MB。
3.9 LE(Logical Extent) 逻辑卷也被划分为被称为 LE(Logical Extents) 的可被寻址的基本单位。
在同一 个卷组中,LE 的大小和 PE 是相同的,并且一一对应。
3.10 VGDA(卷组描述符区域)和非 LVM 系统将包含分区信息的元数据保存在位于分区的起始位置的分区表中 一样,逻辑卷以及卷组相关的元数据也是保存在位于物理卷起始处的 VGDA(卷 组描述符区域)中。
VGDA 包括以下内容: PV 描述符、 VG 描述符、 LV 描述符、 和一些 PE 描述符。
系统启动 LVM 时激活 VG,并将 VGDA 加载至内存,来识别 LV 的实际物理存 储位置。
当系统进行 I/O 操作 时,就会根据 VGDA 建立的映射机制来访问实际 的物理位置。
四、安装 LVM 首先请确定内核支持 LVM,Turbolinux 发行版内核均已支持 LVM。
如果您的 内核不支持 LVM,您可以手工编译内核,在配置内核时,进入 Multi-device Support (RAID and LVM)子菜单,选中以下选项: [*] Multiple devices driver support (RAID and LVM) 然后重新编译内核,即可将 LVM 的支持添加到新内核中。
确定系统中是否安装了 lvm 工具: # rpm -qa | grep lvm lvm2-2.02.16-3 如果命令结果类似于上例,说明系统已经安装了 LVM 管理工具;如果命令没有 输出则说明没有安装 LVM 管理工具, 则需要从网络下载或者从光盘装 LVM rpm 工具包。
为了使用 LVM,要确保在系统启动时激活 LVM,Turbolinux 发行版在启动时 已经具有对激活 LVM 的 支持,在/etc/rc.d/rc.sysinit 中有以下内容: if [ -x /sbin/lvm.static ]; thenaction $"Setting up Logical Volume Management:" /sbin/lvm.static vgchange -a y –ignorelockingfailure fi五、创建和管理 LVM 要创建一个 LVM 系统,一般需要经过以下步骤,参考图 3 所示: 1)通过 fdisk 工具将磁盘转换为 linux 分区; 2)通过 pvcreate 命令将 linux 分区转换成物理卷(PV); 3)通过 vgcreate 命令将创建好的物理卷处理成卷组(VG); 4)通过 lvcreate 命令将卷组分成若干个逻辑卷(LV); 5)对逻辑卷进行格式化、挂载、动态调整逻辑卷的大小,并且该操作不会影响 逻辑卷(Lv)上的数据。
图 3 LVM 创建流程图 具体步骤操作命令见如下详细介绍。
5.1、 创建分区 使用分区工具(如:fdisk 等)创建 LVM 分区,方法和创建其他一般分区的方式是 一样的,区别仅仅是 LVM 的分区类型为 8e。
当然,在 lvm2 版本中已经没有分 区类型的限制。
fdisk -l /dev/sdb /dev/sdc 如果要将使用整块盘,可以通过下面的命令来覆盖磁盘上的原有分区信息: #dd if=/dev/zero of=/dev/sdc bs=512 count=1 5.2、 创建物理卷 创建物理卷的命令为 pvcreate,利用该命令将希望添加到卷组的所有分区或者 磁盘创建为物理卷。
将整个磁盘创建为物理卷的命令为:# pvcreate /dev/sdb Physical volume "/dev/sdb" successfully created 将单个分区创建为物理卷的命令为: # pvcreate /dev/sdc1 Physical volume "/dev/sdc1" successfully created 也可以同时生成多个卷: #pvcreate /dev/sdb /dev/sdc1 5.3、扫描块设备 通过 lvmdiskscan 可以看到那些设备成为了物理卷. #lvmdiskscan 5.4、显示物理卷 可以使用 pvs,pvscan,pvdisplay 来显示当前系统中的物理卷. #pvs #pvscan #pvdisplay 5.5、移除物理卷 #pvremove /dev/sdc Labels on physical volume "/dev/sdc" successfully wiped 5.6、 创建卷组 创建卷组的命令为 vgcreate, 将使用 pvcreate 建立的物理卷创建为一个完整的 卷组: # vgcreate lvm_test /dev/sdc1 /dev/sdbVolume group "lvm_test" successfully created vgcreate 命令第一个参数是指定该卷组的逻辑名:lvm_test。
后面参数是指定 希望添加到该卷组的所有分区和磁盘。
vgcreate 在创建卷组 lvm_test 以外, 还设置使用大小为 4 MB 的 PE(默认为 4MB),这表示卷组上创建的所有逻辑 卷都以 4 MB 为增量单位来进行扩充或缩减。
PE 最小为 1KB ,并且必须总是 1KB 的 2^n 的倍数(使用-s 指定,具体请参考 man vgcreate)。
5.7、 激活卷组 卷组在创建时默认激活,也可以使用 vgchange 来激活卷组: # vgchange -a y lvm_test 5.8、 添加新的物理卷到卷组中 当系统安装了新的磁盘或新建分区并创建了新的物理卷, 而要将其添加到已有卷 组时,就需要使用 vgextend 命令: #fdisk -l /dev/sdc #pvcreate /dev/sdc2 # vgextend lvm_test /dev/sdc2 这里/dev/sdc2 是新的物理卷。