系列文章目录
` 提示:仅用于个人学习,进行查漏补缺使用。
1.Linux介绍、目录结构、文件基本属性、Shell
2.Linux常用命令
3.Linux文件管理
4.Linux 命令安装(rpm、install)
5.Linux账号管理
6.Linux文件/目录权限管理
7.Linux磁盘管理/文件系统
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
本章大概内容有:
LVM、LVM的管理命令、LVM应用实例、案例、小结等
提示:以下是本篇文章正文内容,下面案例可供参考
一、LVM
- 概述:
- Linux中的LVM(逻辑卷管理)是一种灵活的磁盘管理系统,它允许用户将一个或多个物理硬盘分区组合成一个逻辑卷,这些逻辑卷可以被格式化为文件系统并用于存储数据。
- LVM提供了一个抽象层,使得磁盘管理变得更加灵活和高效,用户可以不关心底层硬盘的具体分区布局,而仍能获得所需要的存储空间。
- 逻辑卷(Logical Volume, LV):逻辑卷是卷组中的一个虚拟分区,它提供了一个文件系统接口。
- 逻辑卷可以根据需要创建和删除,可以扩展或收缩,而无需重新分区底层的物理硬盘。
- 首先了解一些相关概念:
1. 物理(Physical Volume, PV):物理卷是LVM管理的基本存储单元,通常对应一个或多个硬盘分区。物理卷上的空间被划分成固定大小的单元,称为物理 extent。如果想要使用LVM来管理这个分区,可以使用fdisk将其ID改为LVM可以识别的值,即8e。
2. 卷组(Volume Group, VG):卷组是由一个或多个物理卷组成的逻辑存储池,它可以包含多个逻辑卷。在卷组中,物理 extents 被分配给逻辑卷,但卷组也可以跨多个物理卷扩展,提供了存储空间的集中管理,PV的集合。
3. 逻辑卷(Logical Volume, LV):逻辑卷是卷组中的一个虚拟分区,它提供了一个文件系统接口。逻辑卷可以根据需要创建和删除,可以扩展或收缩,而无需重新分区底层的物理硬盘。VG中画出来的一块逻辑磁盘
逻辑卷的产生:
物理磁盘或者磁盘分区转换为物理卷,一个或多个物理卷聚集形成一个或多个卷组,而逻辑卷就是从某个卷组里面抽象出来的一块磁盘空间。
- ** 为什么要使用逻辑卷:**
- 业务上使用大容量的磁盘。举个例子,我们需要在/data下挂载30TB的存储,对于单个磁盘,是无法满足要求的,因为市面上没有那么大的单块磁盘。但是如果我们使用逻辑卷,将多个小容量的磁盘聚合为一个大的逻辑磁盘,就能满足需求。
- 扩展和收缩磁盘。在业务初期规划磁盘时,我们并不能完全知道需要分配多少磁盘空间是合理的,如果使用物理卷,后期无法扩展和收缩,如果使用逻辑卷,可以根据后期的需求量,手动扩展或收缩。
- ** LVM主要优点**
- 灵活性:LVM允许动态调整存储空间,用户可以在不重启系统的情况下增加或减少逻辑卷的大小。
- 冗余性:通过镜像或复制,LVM可以提高数据的可靠性和可用性。
- 迁移性:逻辑卷可以从一个物理卷组移动到另一个物理卷组,使得存储资源的重新配置变得简单。
- 快照功能:LVM支持快照功能,允许用户创建一个逻辑卷的只读副本,用于数据备份或测试。
二、LVM的管理命令
- 物理卷(Physical Volume,PV)管理命令包括:
pvcreate
:初始化一个新的物理卷。pvdisplay
:显示物理卷的详细信息。pvresize
:调整物理卷的大小。pvremove
:删除一个物理卷。pvs
:显示物理卷的简要信息。
- 卷组(Volume Group)管理的命令:
vgcreate
:创建一个新的卷组。vgdisplay
:显示卷组的详细信息。vgextend
:向卷组添加一个新的物理卷。vgreduce
:从卷组中移除一个物理卷。vgremove
:删除一个卷组。vgrename
:更改卷组的名称。vgs
:显示组的简要信息。
- 逻辑卷管理的命令:
lvcreate
:创建一个新的逻辑卷。lvdisplay
:显示逻辑卷的详细信息。lvextend
:扩展逻辑卷到新的大小。这可以增加卷的大小而不更改其卷标。lvreduce
:减小逻辑卷的大小。这可以在不丢失数据的情况下减少卷的大小。lvremove
:删除一个或多个逻辑卷。lvrename
:更改逻辑卷的名称。lvmsize
:显示逻辑卷的大小信息。lvscan
:扫描所有的LVM卷组,并列出它们的详细信息。
三、LVM应用实例
案例1:
创建一个逻辑卷,请按下列要求创建一个新的逻辑卷︰
- 创建一个名为datastore的卷组,卷组的大小为20G
- 逻辑卷的名字为database .所属卷组为datastore,该逻辑卷大小为5G
- 将新建的逻辑卷格式化为xfs 文件系统,要求系统启动时,该逻辑卷能被开机自动挂载到/database
具体步骤如下:
1.“虚拟机设置”里添加一块50G磁盘(SCSI)
2.查看系统上是否安装了LVM工具,【rpm -qa | grep lvm】
如果尚未安装,可以使用系统的包管理器进行安装。例如,CentOS 7 上,您可以使用以下命令安装LVM工 具:
yum install lvm2
3.查看磁盘使用情况
【**_PS: _**lsblk:用于列出系统中所有的块设备,包括硬盘、SSD、USB等,有助于了解硬件的大小、类型和分区情况】
可以看出刚刚我们创建的50磁盘为sdb
4.从磁盘中创建两个分区,为接下来的LVM做准备,大小都为10G
4.使用lsblk查看是否已创建好
2.创建物理卷【fdisk /dev/sdb 使用fdisk命令(工具)对/dev/目录下的sdb设备分区】
3.创建卷组(Volume Group):
卷组是LVM管理的基本单位,它是将一个或多个物理卷(PV)组合起来的存储池。
vgcreate datastore /dev/sdb1 /dev/sdb2 或 vgcreate datastore /dev/sdb{1,2}
这条命令会创建一个名为datastore
的卷组,并将/dev/sdb1
和/dev/sdb2
这两个物理卷加入到卷组中。
4.创建逻辑卷(Logical Volume):
逻辑卷是卷组中的一个虚拟分区,可以格式化它并为应用程序分配空间。
lvcreate -L 5G -n lvdata datastore
这条命令会在datastore
卷组中创建一个名为lvdata
的逻辑卷,大小为5GB。
5.格式化逻辑卷:
创建逻辑卷后,需要格式化它以供使用。这里我们使用xfs文件系统作为例子:
mkfs.xfs /dev/datastore/lvdata
用mkfs.xfs命令将/dev/datastore/目录下的lvdata逻辑卷格式化并创建为XFS文件系统
6.挂载逻辑卷,要求逻辑卷能被开机自动挂载到/lvdata
- 创建database目录
mkdir database
- 修改配置文件实现开机自动挂载
vim /etc/fstab
案例2:扩大卷组,扩展上题datase逻辑卷的大小为10G[上题为5G]
**PS:**因为上题挂载过,需要重启一下(init 6)或者mount -a 自动挂载 /etc/fstab
文件中列出的所有文件系统。
- 1.增加一个分区使用【fdisk /dev/sdb】
- 2.扩大卷组
vgextend datastore /dev/sdb3 ##vgextend命令把/dev/目录下的sda3设备扩展到datastore卷组
- 3.扩大逻辑卷5G
lvextend -L +5G /dev/datastore/lvdata
##lvextend命令把/dev/datastore/目录下的逻辑卷lvdata添加2G
- 4.扩张分区建立文件系统
xfs_growfs /dev/datastore/database
四、小结
在使用Linux中的LVM(逻辑卷管理器)时,有一些注意事项需要考虑,以确保系统的稳定性和数据的安全性。以下是一些关键的LVM使用注意事项:
- 备份元数据:
- 在对LVM进行任何更改之前,备份LVM的元数据是至关重要的。这可以通过运行
vgcfgbackup -f /path/to/backupfile volume-group-name
命令来完成。
- 不要在/boot分区上使用LVM:
- /boot分区不应该使用LVM,因为这可能会导致启动问题。/boot分区应该是一个非LVM的分区,以便在系统启动时可以快速访问。
- 预留空间:
- 确保为每个卷预留足够的空间,以避免在需要扩展时没有足够的空间。
- 避免在根卷上使用快照:
- 虽然快照是一个非常有用的功能,但在根卷上使用快照可能会导致性能问题。尽量在非根卷上使用快照。
- 避免在正在使用中或重要数据所在的卷上调整大小:
- 尽量避免在不影响系统运行或重要数据的情况下调整卷的大小。如果必须这样做,请确保采取适当的预防措施。
- 正确配置卷组和逻辑卷的属性:
- 在创建卷组和逻辑卷时,确保正确配置它们的大小、RAID级别和其他属性,以满足你的需求。
- 监控和维护:
- 定期检查LVM的状态,监控性能和空间使用情况,并确保所有快照和逻辑卷都处于良好的状态。
- 了解LVM的局限性:
- 尽管LVM提供了许多灵活性,但它也有一些限制。了解这些限制可以帮助避免潜在的问题。
- 使用最新的LVM版本:
- 尽量使用最新的LVM版本,以确保获得最佳性能和最新的功能。
- 备份数据:
- 始终备份重要数据,以便在数据丢失或损坏时能够恢复。
遵循这些注意事项可以帮助确保LVM在Linux系统中的正确和有效使用,从而提高系统的可靠性和数据的完整性。
五、补充:
一些关于LVM的案例实验可以参考:https://blog.csdn.net/qq_34267076/article/details/119889279