Solaris Volume Manager 管理指南

Procedure如何从配置文件中初始化 Solaris Volume Manager


注意 – 注意 –

请在以下情况下使用此过程:


有时,系统会丢失状态数据库中维护的信息。例如,如果在删除了所有的状态数据库副本后重新引导系统,就可能会丢失状态数据库中维护的信息。只要在丢失状态数据库后未创建卷,就可以使用 md.cfmd.tab 文件来恢复 Solaris Volume Manager 配置。


注 –

md.cf 文件不维护有关活动热备件的信息。因此,如果在丢失 Solaris Volume Manager 配置时热备件正在使用中,则使用活动热备件的这些卷就可能被损坏。


有关这些文件的更多信息,请参见 md.cf(4)md.tab(4) 手册页。

  1. 创建状态数据库副本。

    有关更多信息,请参见创建状态数据库副本

  2. 创建或更新 /etc/lvm/md.tab 文件。

    • 如果试图恢复已知的最新 Solaris Volume Manager 配置,请将 md.cf 文件复制到 /etc/lvm/md.tab 文件中。

    • 如果您要根据已保留的 md.tab 文件副本创建新的 Solaris Volume Manager 配置,请将已保留的文件复制到 /etc/lvm/md.tab 文件中。

  3. 编辑“新” /etc/lvm/md.tab 文件并执行以下操作:

    • 如果您要创建新的配置或要在系统崩溃后恢复配置,请将镜像配置为单向镜像。例如:


      d80 -m d81 1
      
      d81 1 1 c1t6d0s3
      

      如果镜像的子镜像大小不同,请确保使用此单向镜像的最小子镜像。否则,可能会丢失数据。

    • 如果您要恢复现有配置且停止 Solaris Volume Manager 时没有报告任何问题,请将镜像配置保留为多向镜像。例如:


      d70 -m d71 d72 1
      
      d71 1 1 c1t6d0s2
      
      d72 1 1 c1t5d0s0
      
    • 使用 -k 选项指定 RAID-5 卷,以防止重新初始化设备。例如:


      d45 -r c1t3d0s5 c1t3d0s3 c1t3d0s4 -k -i 32b

      有关更多信息,请参见 metainit(1M) 手册页。

  4. 使用以下一种形式的 metainit 命令检查 /etc/lvm/md.tab 文件项的语法,而不提交更改:


    # metainit -n md.tab-entry
    

    # metainit -n -a
    

    -n 选项一起运行时,metainit 命令不会维护可能已创建的设备的虚拟状态,因此,如果所创建的卷依赖于其他不存在的卷,则使用 -n 选项运行该命令时将报告错误,即使该命令在不使用 -n 选项时能够成功执行也是如此。

    -n

    指定不实际创建设备。使用此选项验证结果是否和预期的一样。

    md.tab-entry

    指定要初始化的组件的名称。

    -a

    指定检查所有组件。

  5. 如果前面的步骤中未出现问题,请根据 md.tab 文件重新创建卷和热备用池。


    # metainit -a
    
    -a

    指定激活 /etc/lvm/md.tab 文件中的项。

  6. 根据需要,使用 metattach 命令将单向镜像变成多向镜像。


    # mettach mirror submirror
    
  7. 验证卷上的数据,以确认已正确重新构造配置。


    # metastat