Linux 磁盘管理(LVM管理:格式化、挂载、扩容)《二》

这篇具有很好参考价值的文章主要介绍了Linux 磁盘管理(LVM管理:格式化、挂载、扩容)《二》。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Linux LVM管理(格式化、挂载、扩容、快照、恢复、镜像)

linux LVM是什么

LVM(Logical Volume Manager)是一种linux磁盘管理工具,用于在Linux系统上管理磁盘和存储卷。通过使用LVM,可以将多个物理磁盘或分区组合成一个或多个逻辑卷,并提供灵活的存储空间管理功能。

LVM的优点:

  • 灵活调整存储空间:使用LVM可以动态地增加、缩减和移动逻辑卷的大小,无需重新分区或重新格式化磁盘。
  • 数据保护:通过镜像、快照和备份等功能,LVM提供了数据冗余和故障恢复的能力,提高了数据的安全性和可靠性。
  • 快照:LVM支持创建逻辑卷的实时副本,用于备份、测试操作或还原到之前的状态。
  • 灵活迁移:LVM允许在线迁移逻辑卷,以实现磁盘空间的重新分配和平衡负载。

LVM相关概念:

  • 物理卷(Physical Volume,PV):物理卷是LVM中的基本单元,可以是硬盘、SSD或分区。使用pvcreate命令将物理磁盘或分区转换为物理卷。
  • 卷组(Volume Group,VG):卷组是由一个或多个物理卷组成的逻辑单元,相当于一个存储池。通过使用vgcreate命令创建卷组,将物理卷添加到卷组中。
  • 逻辑卷(Logical Volume,LV):逻辑卷是从卷组划分出来的独立存储单元,类似于硬盘上的一个分区。使用lvcreate命令创建逻辑卷,可以指定逻辑卷的大小和格式。
  • 快照卷(Snapshot Volume):快照卷是逻辑卷的实时副本,用于数据备份、测试或还原到之前的状态。使用lvcreate命令创建逻辑卷时,可以指定为快照卷。
  • 物理区(Physical Extent,PE):物理区是卷组中的最小分配单元,通常是4MB或更小的大小。卷组中的空间被划分为一组物理区,逻辑卷和物理卷都在物理区级别上进行分配。
  • 扩展(Extent):扩展是逻辑卷和物理卷的分配单位,可以理解为一个逻辑层面的区块,大小通常与物理区相同。

以上是LVM的主要组成部分。物理卷被组合成卷组,而卷组中的空间可以根据需要划分为逻辑卷。逻辑卷可以通过挂载到文件系统树上的特定目录来访问和使用。

LVM的流程

物理磁盘->物理卷(PV)->加入卷组(VG)->卷组中抽取空间,制作逻辑卷(LV)->格式化->挂载

linux lvm,linux,linux,5G,运维

  1. 物理磁盘:首先,您有物理磁盘,可以是硬盘、SSD或分区等。物理磁盘是存储数据的物理介质。

  2. 物理卷(Physical Volume,PV):将物理磁盘转换为LVM中的物理卷。这可以通过使用pvcreate命令将物理磁盘标记为物理卷。

  3. 卷组(Volume Group,VG):将一个或多个物理卷组合成卷组。卷组是一个逻辑的单元,类似于一个存储池。使用vgcreate命令创建卷组,并将物理卷添加到卷组中。

  4. 逻辑卷(Logical Volume,LV):从卷组中划分出逻辑卷。逻辑卷就像硬盘上的一个分区,用于存储数据。使用lvcreate命令创建逻辑卷,并可以指定逻辑卷的大小和格式。

  5. 格式化:一旦逻辑卷创建完毕,可以使用文件系统指令(例如mkfs命令)对逻辑卷进行格式化,以便能够在其中存储文件系统。

  6. 挂载:格式化后的逻辑卷可以被挂载到文件系统树中的指定目录上。挂载操作将逻辑卷与特定的目录关联起来,使得可以在该目录下访问和使用逻辑卷中的文件系统。

实操

一、在VMware虚拟机中添加新磁盘

linux lvm,linux,linux,5G,运维

在虚拟机设置中选择硬盘添加一块新硬盘

linux lvm,linux,linux,5G,运维

二、查看linux磁盘信息

使用命令lsblk,来查看系统上的磁盘分区信息。

lsblk

linux lvm,linux,linux,5G,运维

在此我们发现一下信息:

  • sda是一个20GB的磁盘,有三个分区:

    • sda1是一个300MB的分区,被挂载为/boot,用于存储引导文件(启动分区)。
    • sda2是一个2GB的分区,被标记为[SWAP],用于交换空间(虚拟内存)。
    • sda3是一个17.7GB的分区,被挂载为根目录/,用于存储操作系统和用户数据。
  • sdb是另一个20GB的磁盘,没有分区信息。

  • sr0是一个虚拟光驱

三、创建物理卷(PV)

在此我们需要把sdb这块硬盘设置为物理卷(PV),使用以下命令:

pvcreate /dev/sdb

linux lvm,linux,linux,5G,运维

“pvcreate /dev/sdb” 是一个LVM命令,用于将指定的磁盘或分区 /dev/sdb 转换为LVM(Logical Volume Manager)中的物理卷(Physical Volume, PV)。

创建成功后,我们来输入pvdisplay 来查看我们新建的物理卷(PV)信息

linux lvm,linux,linux,5G,运维

输出中的信息显示了物理卷的一些重要属性:

  • PV Name:物理卷的名称为/dev/sdb
  • VG Name:物理卷尚未分配给任何卷组(Volume Group, VG),因此该字段为空。
  • PV Size:物理卷的总大小为20.00 GiB。
  • Allocatable:当前物理卷不可分配(Allocatable = NO)。
  • PE Size:物理卷上的物理区(Physical Extent,PE)大小为0,这意味着物理卷尚未格式化或分割成任何逻辑结构。
  • Total PE:物理卷上总共的物理区数量为0。
  • Free PE:物理卷上可用的物理区数量为0,即全部空间都尚未分配给任何逻辑卷。
  • Allocated PE:已经分配给逻辑卷的物理区数量为0,即尚未在物理卷上创建任何逻辑卷。
  • PV UUID:物理卷的唯一标识符为9EOuPp-Qj1o-i2Bz-8cci-x4zx-NyU0-v4He31。

四、创建卷组(VG)

我们成功创建了物理卷后,就需要再创建一个卷组(VG),使用如下命令:

vgcreate my_disk /dev/sdb

linux lvm,linux,linux,5G,运维

此时我们使用vgdisplay,来查看验证是否创建成功

linux lvm,linux,linux,5G,运维

输出中的信息显示了卷组(VG)的一些重要信息分别是:

  • VG Name:卷组的名称为my_disk
  • Format:卷组使用的格式为lvm2,代表LVM的第二版本。
  • Metadata Areas:卷组中的元数据区域数量为1,即指定了一个物理卷。
  • Metadata Sequence No:元数据序列号为1,用于跟踪元数据的更改。
  • VG Access:卷组以读写方式访问。
  • VG Status:卷组状态可调整大小(resizable),表示卷组中的逻辑卷大小可以调整。
  • MAX LV:卷组最大逻辑卷数量为0。
  • Cur LV:当前卷组中的逻辑卷数量为0。
  • Open LV:当前处于打开状态的逻辑卷数量为0。
  • Max PV:卷组中最大物理卷数量为0。
  • Cur PV:当前物理卷数量为1。
  • Act PV:当前活跃的物理卷数量为1。
  • VG Size:卷组的总大小为不到20.00 GiB。
  • PE Size:物理区(Physical Extent)的大小为4.00 MiB。这是卷组中逻辑和物理卷的分配单位。
  • Total PE:卷组中的总物理区数量为5119。
  • Alloc PE / Size:已分配给逻辑卷的物理区数量为0,对应的大小为0。
  • Free PE / Size:可用的物理区数量为5119,对应的大小为不到20.00 GiB。
  • VG UUID:卷组的唯一标识符为iTpe74-MDzM-wERS-b5To-0PD7-tBwW-LMRufA。

五、加入卷组,创建逻辑卷(LV)

成功创建卷组后,需要把物理卷(PV)分配到卷组(VG)中,也就是创建逻辑卷(LV)使用以下命令:

lvcreate -L 4G -n my_home my_disk

linux lvm,linux,linux,5G,运维

这个命令的意思是在卷组 my_disk 中创建一个逻辑卷 my_home,大小为 4GB。以下是对该命令中的参数的解释:

  • -L 4G:使用 -L 参数指定逻辑卷的大小,这里大小为 4GB。4G 表示使用 GB 作为计量单位,也可以使用 M 表示为 MB
  • my_home:使用 -n 参数指定逻辑卷的名称。在这个例子中,逻辑卷的名称是 my_home
  • my_disk:指定要在其中创建逻辑卷的卷组的名称。在这个例子中,卷组的名称是 my_disk

当命令执行成功后,将在卷组 my_disk 中创建一个名为 my_home 的逻辑卷,并分配 4GB 的空间给它。

此时使用命令lvdisplay,来查看验证逻辑卷是否创建成功

lvdisplay

linux lvm,linux,linux,5G,运维

根据输出的信息显示逻辑卷(LV),的重要信息它们分别是:

  • LV Path:逻辑卷的路径为/dev/my_disk/my_home
  • LV Name:逻辑卷的名称为my_home
  • VG Name:逻辑卷所属的卷组名称为my_disk
  • LV UUID:逻辑卷的唯一标识符为5Kms0D-Xui9-VsgW-nIWE-Pe1y-NRC5-vbV2qM
  • LV Write Access:逻辑卷的读写权限为读写(read/write)。
  • LV Creation host, time:逻辑卷的创建主机为localhost.localdomain,创建时间为2023-06-24 15:45:58 +0000
  • LV Status:逻辑卷的状态为可用(available)。
  • open:逻辑卷当前打开的文件描述符数量为0。
  • LV Size:逻辑卷的大小为4.00 GiB。
  • Current LE:逻辑卷当前的逻辑区(Logical Extent)数量为1024。
  • Segments:逻辑卷的段数量为1。
  • Allocation:逻辑卷的分配策略为继承(inherit)。
  • Read ahead sectors:逻辑卷当前的预读扇区数为8192。
  • Block device:逻辑卷的块设备名称为253:0。

根据输出,逻辑卷my_home的状态为可用,大小为4.00 GiB,在/dev/my_disk/my_home路径上可以访问。

六、格式化逻辑卷

在做完以上一系列操作后,LVM分区已经创建好,接下来就是对该分区进行格式化,使用mkfs.ext4赋予它文件系统:

mkfs.ext4 /dev/my_disk/my_home

linux lvm,linux,linux,5G,运维

注意:

  • 在LVM选择文件系统的时候,最好选择ext4文件系统,在ext4文件系统下我们可以无损的对逻辑卷扩容或者缩容,

  • 而XFS文件系统,只能对逻辑卷进行无损扩容,并不能进行无损缩容,如果一定要缩容,就要重新格式化逻辑卷,这就导致存储在逻辑卷中的数据丢失。

根据信息提示,现在已经成功的创建了一个ext4的文件系统,接下来就是最后一步,把它挂载到根目录下就可以正常使用了

七、挂载与卸载

现在我们需要给刚刚新建的逻辑分区创建一个挂载点,也就是新建一个文件夹。

挂载是在操作系统层面上进行的,它创建了一个链接,使得文件系统中的数据可以通过指定的挂载点在操作系统中访问。一旦文件系统被成功挂载,用户可以在挂载点下访问和操作文件。其实挂载就是一种链接,它是操作系统与存储设备的接口,我们通过挂载点去访问存储设备。

mkdir /home/my_home

linux lvm,linux,linux,5G,运维

挂载又分为永久挂载和临时挂载

永久挂载:

  • 它是在系统启动时自动将文件系统挂载到指定的挂载点,它需要再系统配置文件中添加相应的条目,在linux系统重,通常是编辑/etc/fstab文件来配置永久挂载。

  • 特点是重启后不需要再进行重复挂载,既可使用。

临时挂载:

  • 它是手动执行的挂载操作,需要手动去配置设备名称、挂载点等操作选项,它适合于暂时需要访问的文件系统例如:U盘、光驱等,重启后自动消除,需要重新挂载。通过mount命令来实现挂载,通过umount来卸载设备。
永久挂载设置

配置永久挂载,需要先用vim编辑\etc\fstab文件

linux lvm,linux,linux,5G,运维

在此处添加需要挂载设备的相关信息:

该条目描述要挂载的文件系统。每个条目通常包含七个字段,以空格或制表符分隔。

<设备名称> <挂载点> <文件系统类型> <挂载选项> <文件系统检查选项> <备份间隔> <优先级>
  • <设备名称>:要挂载的设备的名称或设备ID。例如,/dev/my_disk/my_homeUUID:5Kms0D-Xui9-VsgW-nIWE-Pe1y-NRC5-vbV2qM
  • <挂载点>:指定要将设备挂载到的目录。例如,/mnt
  • <文件系统类型>:设备上的文件系统类型,例如ext4
  • <挂载选项>:选择设备的挂载选项,如rw(读写)或ro(只读)。
  • <文件系统检查选项>:指定设备的文件系统检查选项(如每次挂载时检查、跳过检查等)。
  • <备份间隔>:指定文件系统备份的间隔(如每日、每周等)。
  • <优先级>:指定文件系统挂载的优先级。

挂载名称我们可以通过lvdisplay来查询:

linux lvm,linux,linux,5G,运维

然后根据该信息进行文件的配置:

linux lvm,linux,linux,5G,运维

完成/etc/fstab文件设置后,需要重启系统或者使用命令mount -a来重新加载,使得更改生效。

使用完毕以后我们使用 lsblk命令来查看LVM分区是否成功挂载:

linux lvm,linux,linux,5G,运维

从以上输出的信息中发现,我们的操作都已经成功了 文件已经成功的挂载在/home/my_home目录下了。

临时挂载配置

设置完永久挂载,我们再来试试如何进行临时挂载。现在需要把刚刚设置的永久挂载取消,在/etc/fstab文件中删除刚刚配置的条目。

linux lvm,linux,linux,5G,运维

现在已经完全取消了。我们再来尝试临时挂载,使用以下命令:

mount /dev/my_disk/my_home /home/my_home

linux lvm,linux,linux,5G,运维

临时挂载比永久挂载更简单,只需要一条命令就搞定了,挂载学会了,我们来看看如何卸载,使用如下命令:

umount /home/my_home

linux lvm,linux,linux,5G,运维

一条命令搞定。简单快捷

LVM的增删改查

LVM的查

其实LVM的查,我们在创建LVM的过程已经使用过的分别就是:pvdisplay、vgdisplay、lvdisplay 。它们分别可以查看物理卷、卷组、逻辑卷的相关信息.

除了以上命令,还可以使用vgs、lvs、df -h 来查看LVM的信息

linux lvm,linux,linux,5G,运维

同时还有三个命令可以用来扫描PV、VG、LV卷的状态信息

pvscan

linux lvm,linux,linux,5G,运维

vgscan

linux lvm,linux,linux,5G,运维

lvscan	

linux lvm,linux,linux,5G,运维

LVM的改

在日后的运行中,随着内容不断增加,存储空间也逐渐减少,这时候就可以为逻辑卷增加存储空间了,因为LVM是动态分配存储空间的技术,我们可以随时为该逻辑卷增加或减少空间,这种操作不限于是同一块磁盘,也可以是其他磁盘,这也极大的方便我们随时更改空间。更改空间可以使用以下命令去操作:

lvresize -L <逻辑卷的大小> /dev/<卷组名称>/<逻辑卷名称>#LVM增、缩空间,这条命令可以指定空间大小
lvextend -L <逻辑卷的大小> /dev/<卷组名称>/<逻辑卷名称>#LVM增空间
lvreduce -L <逻辑卷的大小> /dev/<卷组名称>/<逻辑卷名称>#LVM缩减空间

linux lvm,linux,linux,5G,运维

使用lvresize 命令后,使用lsblk显示 空间已经变成10G了,但是df -h命令却还是显示为4G,这是因为lvresize 命令只调整了逻辑卷的大小,并没有直接调整文件系统内部的大小。您需要相应地调整文件系统的大小,以使其能够利用新的逻辑卷空间。

处理办法也很简单,使用下行命令即可恢复正常:

resize2fs -p /dev/<卷组名>/<逻辑卷名>
或者在扩容lvresize 命令后加上-p参数等价于resize2fs -p, 它会自动调整文件系统的大小。

第一个方法

linux lvm,linux,linux,5G,运维

第二个方法:

linux lvm,linux,linux,5G,运维

相比之下,第二种方法更为简单实用。

LVM的删

要删除LVM逻辑卷,需要先卸载逻辑卷,然后使用才能以下命令来进行删除操作:

umount /<逻辑卷挂载点>
lvremove /dev/<卷组名>/<逻辑卷名>

linux lvm,linux,linux,5G,运维

这样就可以成功将逻辑卷删除。

删除物理卷、和卷组的命令和其类似它们分别为:

pvremove /dev/<设备名> # 删除物理卷(PV)
vgremove /dev/<卷组名> # 删除卷组(VG)

在删除物理卷(PV)前,需要将分配到卷组(VG)中的容量先返回

使用命令:

vgreduce my_disk /dev/sdc

linux lvm,linux,linux,5G,运维

我们在查看vg卷中,空间是否已经返还。

linux lvm,linux,linux,5G,运维

从以上信息中,我们可以发现空间已经返还给物理卷,现在我们可以使用pvremove删除物理卷

linux lvm,linux,linux,5G,运维

linux lvm,linux,linux,5G,运维

根据以上显示的信息,我们可以确定已经把sdc从LVM中删除了,sdc又处于最原始的状态。

LVM的增

为什么要把增放到最后讲,因为在之前的操作中,我们已经对LVM的增基本全部都操作了一遍,创建一个LVM需要有三个步骤

它们分别为:

  • 创建物理卷(PV)

    • 物理卷就相当于是我们的存储池,它们可以是硬盘、分区或raid设备。

    • 创建物理卷的命令为:

    • pvcreate /dev/<设备名>
      
  • 创建卷组(VG)

    • 卷组就是由一个或多个物理卷组成的逻辑容器,它们组成一个集合,用来管理和分配存储池中的总体存储容量,并提供逻辑划分

    • 创建卷组的命令为:

      vgcreate <卷组名> /dev/<设备名>
      
  • 创建逻辑卷(LV)

    • 逻辑卷就是从卷组中分配出来的逻辑空间,它可以看做为物理卷和文件系统的中间层,逻辑卷它是用于实际存储的逻辑分区

    • 创建逻辑卷命令为:

    • lvcreate -L <空间大小> /dev/<卷组名>/<逻辑卷名>
      

LVM 新增硬盘如何扩充、缩减

思路

新添加的硬盘需要扩充到之前的逻辑卷中,需要把新硬盘线创建一个物理卷,然后加入逻辑卷相应的卷组当中,在使用逻辑卷改命令去扩充空间

一、新建物理卷

linux lvm,linux,linux,5G,运维

二、加入卷组

这一步命令有所不同,它的命令为:

vgextend my_disk /dev/sdc

linux lvm,linux,linux,5G,运维

linux lvm,linux,linux,5G,运维

三、给逻辑卷扩充空间

lvextend -L -r +10G /dev/my_disk/my_home

linux lvm,linux,linux,5G,运维

这样我们就成功的为my_home用新的硬盘扩充到20G了

四、缩减逻辑卷空间

lvreduce -L -r -15G /dev/my_disk/my_home

linux lvm,linux,linux,5G,运维

这样我们就成功的缩减了my_home逻辑卷15G的容量,现在它只有4.8G

LVM的快照功能

快照介绍

在 LVM 中,快照是逻辑卷的一种副本,用来记录逻辑卷在创建快照时的数据状态。它类似于文件系统的“影子”,通过记录数据状态,可以在需要时恢复逻辑卷到快照所记录的状态。

与实际备份不同,快照只是逻辑卷的一个影子,无法防止硬件故障引起的数据丢失。而备份是对实际数据的完整拷贝,即使原始数据丢失,仍然可以通过备份进行数据恢复。

快照的恢复速度更快,因为它仅需要恢复逻辑卷的变化部分,而不是完整的数据。相对于备份需要恢复整个数据量,快照只需要恢复差异部分,因此速度更快。在一个大容量的逻辑卷中,快照的消耗通常比较轻量。

在生产环境中,通常会结合快照和备份来进行数据保护。先创建快照,然后进行备份,这样就可以同时获得快照的恢复速度和备份完整性的优点。快照可以提供快速的恢复,备份则可以提供完整的数据保护。

总结来说,LVM 的快照功能类似于文件系统的“备份”,它记录逻辑卷在创建快照时的数据状态,用于快速恢复数据。但快照只能恢复逻辑错误或操作失误,并不能防止硬件故障造成的数据丢失。

LVM快照实操

一、创建快照逻辑卷
  • 在这一步其实和创建逻辑卷的指令是差不多的 ,只是参数需要变为-s
  • 快照的容量最少也要和原始逻辑卷的大小一致,可以保证原始卷所有的数据都能写入到快照中。
lvcreate -L 10G --snapshort -name home_snapshot my_disk/my_home

my_home_snapshot是快照卷的名称,而后门的/dev/my_disk/my_home 则是原始逻辑卷的路径,表示创建这个快照是为它而服务。

linux lvm,linux,linux,5G,运维

在使用lvs查询的时候,已经创建成功了

linux lvm,linux,linux,5G,运维

创建的快照,不需要格式化也可以挂载在根目录上,因为它只是源逻辑卷的元数据的副本,所以不需要重新分配空间。快照卷将记录源逻辑卷在快照创建之前的数据状态,因此其文件系统和数据布局与源逻辑卷是相同的

linux lvm,linux,linux,5G,运维

linux lvm,linux,linux,5G,运维

原始逻辑卷文件内容

linux lvm,linux,linux,5G,运维

快照逻辑卷文件内容

快照就这样创建成功了

二、快照的恢复使用

增删改查操作

快照逻辑卷和普通的逻辑卷的增删改查方式基本都一样,可以参考以上LVM的增删改查的命令去操作。

快照的使用

如果只是单文件需要恢复,可以直接去快照挂载的路径去copy文件到原始文件系统当中,可以一般文件的copy方法一致。

如果原始文件系统出现逻辑错误,或者大量内容被误操作,我们可以通过lvconvert -merge命令来执行合并快照操作。

lvconvert -merge <快照路径>

linux lvm,linux,linux,5G,运维

我先模拟一下数据被误删的情况,在my_home中随意删除一些数据内容,然后在去合并快照,看看是否能恢复文件

在合并前,需要把原始逻辑卷先卸载,是为了确保在合并过程中数据的一致性和完整性

umount /home/my_home

linux lvm,linux,linux,5G,运维

my_home原始逻辑卷已经卸载

lvconvert -merge /dev/my_disk/home_snapshort

linux lvm,linux,linux,5G,运维

经过操作后我们已经把原始卷和快照逻辑卷合并了。在来挂载原始逻辑卷是否恢复

linux lvm,linux,linux,5G,运维

现已经恢复了之前删掉的数据。

快照在合并以后,之前的快照就会消失,留下来的就是一个完整原始逻辑卷,如果有需要可以在创建一个快照

LVM镜像

简介

镜像(Mirroring)是一种提供数据冗余和容错的机制,通过在多个物理存储设备上创建逻辑卷的副本。镜像创建了逻辑卷的实时拷贝,确保数据的高可用性和可靠性。当一个物理设备发生故障时,可以使用镜像卷继续访问数据。镜像卷的更新操作会同时更新镜像的副本。

虽然镜像和快照都涉及到逻辑卷的复制,但它们的目的和用途是不同的。镜像旨在提供冗余和容错,以保证数据的可用性和可靠性。而快照则是为了保护和备份数据,并提供可以随时回滚到历史数据状态的能力。

实操

创建一个带镜像的逻辑卷,必须是在创建逻辑卷之前就规划好,如果是想在后期再添加逻辑卷基本是不可能的。

在使用LVM镜像逻辑卷时,我们要先了解以下几个概念

镜像逻辑卷(Mirrored Logical Volume)使用了数据卷(Data Volume)来存储实际的数据。

  • 数据卷是 LVM 逻辑卷中实际用于存储文件系统、用户数据和其他数据的部分。当通过 LVM 创建一个逻辑卷时,数据卷将被创建并分配存储空间,这些存储空间用于存储实际的数据。

  • 而镜像逻辑卷是为了提供镜像和冗余功能而创建的。镜像逻辑卷包含了一个原始逻辑卷和一个或多个镜像卷(也称为镜像副本)。镜像卷是一种特殊的数据卷,用于存储与原始逻辑卷相同的数据副本。

  • 当对镜像逻辑卷进行写操作时,数据将被同时写入到原始逻辑卷和镜像卷中。这样,即使其中一个卷发生故障,数据仍然可从其他正常的卷中恢复和访问,从而提供了数据的冗余性和可用性。

  • 在 LVM 的镜像逻辑卷中,数据卷指的是用于存储实际数据的卷,它可以是原始逻辑卷或镜像卷。数据卷在镜像逻辑卷中承担着存储和保护数据的重要角色。

日志卷:

  • 日志卷(log volume)是用于记录逻辑卷(logical volume)上的数据变更操作的一种特殊卷。它用于提供数据的一致性和完整性,以及恢复逻辑卷数据状态。

  • 日志卷主要用于 LVM 的写操作,当有写操作发生时,相应的修改会首先被记录在日志卷中。通过记录日志操作,可以确保在意外故障发生时,可以恢复逻辑卷的数据状态,并保证数据的一致性。这种机制被称为写日志(write logging)。

  • 日志卷的创建是可选的,不是必需的,它提供了额外的数据保护和可靠性。在创建逻辑卷时,可以选择指定日志卷。如果没有指定日志卷,写操作将会在不使用日志的情况下直接将数据写入逻辑卷中。

  • 日志卷通常与逻辑卷位于同一卷组中,但也可以将日志卷和逻辑卷放置到不同的卷组中,以实现更灵活的配置。

在创建镜像逻辑卷前,要保存物理卷(PV)在2个以上,这是为了提供数据冗余和容错性,以确保数据的可用性和可靠性。因为数据卷和镜像卷都要1个物理卷,最好是两块不同的硬盘,这样才能最好保证数据的可靠性。

把之前的LVM各类卷全部remove掉,重新创建一个卷组(VG):

linux lvm,linux,linux,5G,运维

创建一个镜像逻辑卷的命令为:

lvcreate -L <逻辑卷大小> -m<镜像数列(冗余级别)> -n <镜像名> <物理卷路径1(数据卷和镜像卷)><物理卷路径2(数据卷和镜像卷)><物理卷路径3(日志卷)>

还是刚刚的LVM系统,继续创建一个镜像来测试:

lvcreate -L 5G -m1 -n home_mirror my_disk /dev/sdb /dev/sdc /dev/sdd

linux lvm,linux,linux,5G,运维

现在已经都已经创建好了一个镜像逻辑卷。

再来把这快镜像逻辑卷格式化并挂载。

使用命令

mkfs.ext4 /dev/my_disk/mirror_home && mkdir -p /home/mirror_home && mount /dev/my_disk/mirror_home  /home/mirror_home

linux lvm,linux,linux,5G,运维

已经成功的格式化,并挂载到/home/mirror_home 挂载点下。

测试镜像卷的恢复能力
创建测试

先复制一些文件内容到我们的镜像盘中

linux lvm,linux,linux,5G,运维

模拟破坏

使用命令:

dd if=/dev/zero of=/dev/sdb count=10 bs=1M

linux lvm,linux,linux,5G,运维

dd 是一个强大的命令行工具,可以用于复制文件、设备和数据流。在你给出的命令中,以下是各个选项的含义:会导致硬盘里的数据损坏。

  • if=/dev/zero:指定输入文件为 /dev/zero,该设备会产生无限个零字节。
  • of=/dev/sdb:指定输出文件为 /dev/sdb`,该设备将被填充为零字节。
  • count=10:设置要复制的块数为 10。
  • bs=1M:设置每个块的大小为 1MB。

通过执行这个命令,dd 将从 /dev/zero 中读取 10 个 1MB 大小的块,并将其写入 /dev/sdb,从而在 /dev/sdb 上创建一个大小为 10MB 的文件。

linux lvm,linux,linux,5G,运维

此时我们发现/dev/sdb 已经处于unknown,表示设备未被正确识别或无法访问。

因为我们做了镜像卷,所以还是可以访问该卷中的数据,

linux lvm,linux,linux,5G,运维

现在我们把损坏的硬盘移除掉使用如下命令:

vgreduce --removemissing --force my_disk
  • --removemissing:指定要移除缺失物理卷的操作。
  • --force:强制执行操作,即使在某些情况下可能会导致数据丢失。

当执行这个命令时,LVM 会从卷组 vg_test 中移除任何标记为缺失的物理卷。缺失的物理卷指的是在卷组中定义了但当前无法访问的物理卷。这可能是由于物理卷故障、设备不可用或其他原因导致的。

移除缺失的物理卷的目的是确保卷组的正常运行,并使其仅依赖于可用的物理卷。然而,需要谨慎操作并确认执行此操作不会导致数据丢失。因为 --force 选项会强制执行操作,即使存在数据丢失的风险。

linux lvm,linux,linux,5G,运维

现在已经把数据损坏的硬盘移除掉了,

linux lvm,linux,linux,5G,运维

恢复镜像

把刚移除的硬盘从新加入到物理卷、卷组中。

linux lvm,linux,linux,5G,运维

接在来我们进行镜像盘恢复:

使用命令

lvconvert --repair /dev/my_disk/mirror_home	

linux lvm,linux,linux,5G,运维

这样我们就完成镜像的恢复。

总结

LVM是一款强大的磁盘管理工具,它无视了磁盘在硬件上的区分,能够完美的解决挂载空间大小扩充、缩减的需求,操作简单方便,并且提供了更高级别的存储管理,如卷组和逻辑卷的概念。卷组是物理卷的集合,而逻辑卷则是从卷组中划分出的逻辑存储单元。这种层次结构使得存储的管理更加灵活和可控。使用LVM,您可以随时根据需求扩展或缩减逻辑卷的大小,而无需对文件系统进行复杂的重新分区或复制数据的操作。这使得存储空间的管理变得更加简单和高效。

总之,LVM是一个功能强大且易于使用的磁盘管理工具,能够提供灵活的存储管理,动态调整存储大小,数据迁移能力以及快照和备份功能。因此,它在服务器和虚拟化环境中被广泛应用,为用户带来便捷和高效的存储管理体验。文章来源地址https://www.toymoban.com/news/detail-758963.html

到了这里,关于Linux 磁盘管理(LVM管理:格式化、挂载、扩容)《二》的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 服务器磁盘挂载及格式化

    一边学习,一边总结,一边分享! 最近一直折腾组装的电脑,来回折腾了很久关于我花费六千多组了台window+Linux主机,目前基本是可以使用了。对于Windows主机配置基本是没问题,一直在使用,以及桌面化软件,都可以自己安装,只是说这台主机有些软件可能一时半会安装不

    2024年01月18日
    浏览(69)
  • centos格式化xfs文件系统格式并设置自动启动挂载磁盘

    非全方位资料,学习实践而来,欢迎参考学习 要将 /dev/sdb1 分区快速格式化为 XFS 文件系统并设置开机自动挂载,可以按照以下步骤进行操作: 查看已连接的硬盘列表,主要是设备名称(如 /dev/sda)、分区信息和容量。 安装文件系统工具。 快速格式化分区为 XFS 文件系统,强

    2024年02月04日
    浏览(67)
  • Linux嵌入式学习之Ubuntu入门(二)磁盘文件介绍及分区、格式化等

    Linux嵌入式学习之Ubuntu入门(一)基本命令、软件安装、文件结构、编辑器介绍 Linux嵌入式学习之Ubuntu入门(二)磁盘文件介绍及分区、格式化等 Linux嵌入式学习之Ubuntu入门(三)用户、用户组及文件权限 Linux嵌入式学习之Ubuntu入门(四)Makefile Linux嵌入式学习之Ubuntu入门(五

    2023年04月11日
    浏览(70)
  • linux磁盘存储空间不足磁盘扩容 LVM扩容逻辑卷扩容详细教程

    一、介绍 当linux内存不够用时就涉及到磁盘扩容,只有使用LVM逻辑卷才支持扩容,该教程教你如何扩容。 系统版本为centOS 7 目标将/dev/mapper/centos-root容量大小由18G扩容到23G 增加5G容量 二、查看操作系统当前磁盘信息 首先使用fdisk -l查看当前机器所挂硬盘个数及分区情况,可知

    2024年02月02日
    浏览(46)
  • linux 给lvm磁盘扩容

    目录 linux 给lvm磁盘扩容 扩容步骤 确认可用空间 创建新的物理卷 将物理卷添加到现有的卷组中 扩展逻辑卷 重新挂载lvm 早上到公司发现磁盘满了,挂载点是一个lvm 跟领导确认后决定先扩容再清理,原先是1T,决定扩容到2T LVM(逻辑卷管理)是一种用于Linux系统的磁盘分区技术

    2023年04月11日
    浏览(46)
  • centos linux lvm分区 标准分区 磁盘扩容

    选择磁盘分区 选择分区方式: 自动分区最省力,选择后点击done,就完成分区配置了; 手动分区需要配置,一般会预留”/boot”(引导启动),”/swap”(内存扩展)、“/” 根目录 看手动分区,可以LVM分区,也可以用标准分区 “Standard Partition”, 以LVM为例,选择I will conf

    2024年02月04日
    浏览(45)
  • 【VMware环境下Linux磁盘空间(LVM)扩容方法】

    最近在安装Oracle ASM的过程中,解压文件被迫终止,提示可用空间不足。下面简单描述磁盘扩容的步骤。 环境 :VMware Workstation 16 PRO下的虚拟机 系统 :Oracle Linux Server 7.9 (Redhat 7系列可参考) 内核 :Linux 5.4.17-2102.201.3.el7uek.x86_64 文件系统类型 :LVM 安装系统时分配磁盘空间共

    2024年02月06日
    浏览(49)
  • 电脑硬盘磁盘不小心被格式化了?如何一键恢复操作教程

    Easyrecovery是一款功能齐全的数据恢复软件,恢复内容包括:硬盘数据恢复、手机数据恢复、U盘数据恢复、Mac数据恢复、恢复删除文件及高级数据恢复等。当用户发生数据丢失问题时,第一时间想到的就是使用数据恢复软件来恢复已经丢失的文件。在众多的数据恢复软件,较为

    2024年02月09日
    浏览(48)
  • vmware 16增加硬盘容量并在Ubuntu 18.04上边格式化并挂载

    参考了《增加 VM虚拟机硬盘容量》 《Linux学习之分区挂载》中有给VMWare 16虚拟机添加一块硬盘的内容,需要先参考添加硬盘。 sudo mkfs.ext4 /dev/sda4 给 /dev/sda4 进行 ext4 格式化。 sudo mkdir /mountsda4 新建一个挂载目录。 sudo mount -t ext4 /dev/sda4 /mountsda4 将 /dev/sda4 挂载到 /mountsda4 。 d

    2024年02月09日
    浏览(48)
  • 如何在系统盘上格式化一部分空间单独挂载/metadata和/log

    作为一名大数据SRE工程师,基本上很少涉及到服务器相关的挂盘操作,所以有问题都是找服务器的同事处理。可是最近服务器太忙,流程太慢,那我自己本身也有权限,那就自己干,丰衣足食。接下来进入正题。  

    2024年02月05日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包