67.11. 逻辑卷激活


默认情况下,当您创建逻辑卷时,它处于活动状态。处于活跃状态的逻辑卷可以通过块设备使用。激活的逻辑卷可以被访问,并可能会发生变化。

有些情况下,您需要使单个逻辑卷不活跃,因此对内核未知。您可以使用 lvchange 命令的 -a 选项激活或停用单独的逻辑卷。

以下是停用单个逻辑卷的格式:

# lvchange -an vg/lv

以下是激活单个逻辑卷的格式:

# lvchange -ay vg/lv

您可以使用 vgchange 命令的 -a 选项激活或停用卷组中的所有逻辑卷。这等同于在卷组的每个独立逻辑卷中运行 lvchange -a 命令。

以下是停用卷组中所有逻辑卷的格式:

# vgchange -an vg

以下是激活卷组中所有逻辑卷的格式:

# vgchange -ay vg
注意

在手动激活过程中,systemd 会使用 /etc/fstab 文件中相应的挂载点自动挂载 LVM 卷,除非 systemd-mount 单元被屏蔽。

67.11.1. 控制逻辑卷和卷组的自动激活

自动激活逻辑卷指的是,在系统启动时基于事件自动激活逻辑卷。当设备在系统中可用(设备在线事件)时,systemd/udev 会为每个设备运行 lvm2-pvscan 服务。此服务运行 pvscan --cache -aay device 命令,该命令读取指定的设备。如果设备属于卷组,则 pvscan 命令将检查系统上是否存在该卷组的所有物理卷。如果是这样,该命令将在那个卷组中激活逻辑卷。

您可以在 VG 或 LV 上设置自动激活属性。当禁用了自动激活属性时,VG 或 LV 将不会通过自动激活命令被激活,如 vgchangelvchange,或使用 -aay 选项的 pvscan。如果在 VG 上禁用了自动激活,则不会在该 VG 中自动激活 LV,自动激活没有效果。如果在 VG 上启用了自动激活,则可以为单个 LV 禁用自动激活。

流程

  • 您可以使用以下方法之一更新自动激活设置:

    • 使用命令行控制 VG 的自动激活:

      # vgchange --setautoactivation <y|n>
    • 使用命令行控制 LV 的自动激活:

      # lvchange --setautoactivation <y|n>
    • 使用以下配置选项之一控制 /etc/lvm/lvm.conf 配置文件中 LV 的自动激活:

      • global/event_activation

        当禁用 event_activation 时,systemd/udev 只会在系统启动期间自动激活物理卷。如果还没有出现所有物理卷,那么可能不会自动激活一些逻辑卷。

      • activation/auto_activation_volume_list

        auto_activation_volume_list 设置为空列表可完全禁用自动激活。将 auto_activation_volume_list 设置为特定的逻辑卷,并且卷组将自动激活限制到这些逻辑卷。

其他资源

  • /etc/lvm/lvm.conf 配置文件
  • 系统中 lvmautoactivation (7) 手册页

67.11.2. 控制逻辑卷激活

您可以使用以下方法控制逻辑卷的激活:

  • 通过 /etc/lvm/conf 文件中的 activation/volume_list 设置。这可让您指定激活哪些逻辑卷。有关使用这个选项的详情,请查看 /etc/lvm/lvm.conf 配置文件。
  • 逻辑卷的激活跳过标签。当为逻辑卷设定这个标签时,会在正常的激活命令中跳过该卷。

或者,您可以将 --setactivationskip y|n 选项与 lvcreatelvchange 命令一起使用,以启用或禁用激活跳过标志。

流程

  • 您可以使用以下方法在逻辑卷上设置激活跳过标签:

    • 要确定是否为逻辑卷设置了激活跳过标签,请运行 lvs 命令,该命令显示 k 属性,如下例所示:

      # lvs vg/thin1s1
        LV         VG  Attr       LSize Pool  Origin
        thin1s1    vg  Vwi---tz-k 1.00t pool0 thin1

      除了标准的 -ay--activate y 选项外,您还可以使用 -K--ignoreactivationskip 选项来激活具有 k 属性的逻辑卷。

      默认情况下,精简快照卷在创建时将其标记为激活跳过。您可以使用 /etc/lvm/lvm.conf 文件中的 auto_set_activation_skip 设置控制新精简快照卷的默认激活跳过设置。

    • 下面的命令激活设置了激活跳过标签的精简快照逻辑卷:

      # lvchange -ay -K VG/SnapLV
    • 以下命令创建没有激活跳过标签的精简快照:

      # lvcreate -n SnapLV -kn -s vg/ThinLV --thinpool vg/ThinPoolLV
    • 以下命令从快照逻辑卷中删除激活跳过标签:

      # lvchange -kn VG/SnapLV

验证

  • 验证是否创建了没有激活跳过标签的精简快照:

    # lvs -a -o +devices,segtype
      LV                 VG            Attr       LSize    Pool       Origin Data%  Meta%  Move Log Cpy%Sync Convert Devices             Type
      SnapLV             vg            Vwi-a-tz--  100.00m ThinPoolLV ThinLV 0.00                                                        thin
      ThinLV             vg            Vwi-a-tz--  100.00m ThinPoolLV        0.00                                                        thin
      ThinPoolLV         vg            twi-aotz--  100.00m                   0.00   10.94                            ThinPoolLV_tdata(0) thin-pool
      [ThinPoolLV_tdata] vg            Twi-ao----  100.00m                                                           /dev/sdc1(1)        linear
      [ThinPoolLV_tmeta] vg            ewi-ao----    4.00m                                                           /dev/sdd1(0)        linear
      [lvol0_pmspare]    vg            ewi-------    4.00m                                                           /dev/sdc1(0)        linear

67.11.3. 激活共享逻辑卷

您可以使用 lvchangevgchange 命令的 -a 选项控制共享逻辑卷的逻辑卷激活,如下所示:

命令激活

lvchange -ay|-aey

以相互排斥的模式激活共享逻辑卷,只允许一个主机激活逻辑卷。如果激活失败,如逻辑卷在另外一个主机上激活一样,会报告一个错误。

lvchange -asy

以共享模式激活共享逻辑卷,允许多个主机同时激活逻辑卷。如果激活失败,如逻辑卷只在另一个主机中激活时一样,会出错。如果逻辑类型禁止共享访问,比如快照,命令将报告错误并失败。无法从多个主机同时使用的逻辑卷类型包括 thin、cache、raid 和 snapshot。

lvchange -an

取消激活逻辑卷。

67.11.4. 在缺少设备的情况下激活逻辑卷

您可以控制缺少设备的 LV 是否可以使用带有 --activationmode partial|degraded|complete 选项的 lvchange 命令激活。这些值如下所述:

激活模式含义

complete

只允许激活没有缺失物理卷的逻辑卷。这是限制性最强的模式。

degraded

允许激活含有缺失物理卷的 RAID 逻辑卷。

partial

允许激活任何含有缺失物理卷的逻辑卷。这个选项只应用于恢复或修复。

activationmode 的默认值由 /etc/lvm/lvm.conf 文件中的 activationmode 设置决定。如果未给出命令行选项,则会使用它。

其他资源

  • 系统中 lvmraid (7) 手册页
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.