Solaris Volume Manager 管理指南

升级到 Solaris 10 发行版之后设备 ID 的改变

从 Solaris 10 发行版开始,设备 ID 的输出以新格式显示。Solaris Volume Manager 可以用新旧两种格式显示设备 ID 输出,具体情况取决于设备 ID 信息是何时添加到状态数据库副本中的。

以前,设备 ID 显示为十六进制值。新的格式将设备 ID 显示为 ASCII 字符串。在许多情况下,这种变化极其微小,如以下示例所示:

旧格式:

id1,ssd@w600c0ff00000000007ecd255a9336d00

新格式:

id1,ssd@n600c0ff00000000007ecd255a9336d00

在其他情况下,这种变化较为显著,如以下示例所示:

旧格式:

id1,sd@w4849544143484920444b3332454a2d33364e4320202020203433334239383939

新格式:

id1,ssd@n600c0ff00000000007ecd255a9336d00

在升级到 Solaris 10 发行版时,与以前的 Solaris 发行版中创建的现存磁盘集相关联的设备 ID 的格式,在 Solaris Volume Manager 配置中不会进行更新。如果需要恢复到以前的 Solaris 发行版,那么,在升级之后对磁盘集进行的配置更改在以前的发行版中可能会不可用。这些配置更改包括:

这些配置更改可能会影响所有能够在 Solaris Volume Manager 中创建的磁盘集,包括本地集。例如,如果对 Solaris 10 发行版中创建的磁盘集进行了上述任何更改,就不能将该磁盘集导入到以前的 Solaris 发行版中。另一个示例是,您可能会将镜像根的一面升级到 Solaris 10 发行版,然后对本地集进行配置更改。如果随后将该子镜像又重新合并到以前的 Solaris 发行版中,系统将无法识别这些更改。

Solaris 10 OS 配置总是以新格式显示设备 ID,即便是在升级期间也是如此。可以使用 prtconf -v 命令来显示此信息。而 Solaris Volume Manager 会以旧格式或新格式显示,具体情况取决于在开始使用该磁盘时所运行的 Solaris OS 的版本。要确定 Solaris Volume Manager 所显示的设备 ID 是否与 Solaris OS 配置中的设备 ID 格式不同但等效,请将 metastat 命令的输出与 prtconf -v 命令的输出进行比较。

在以下示例中,对于同一个磁盘 c1t6d0metastat 命令输出中显示的设备 ID 与 prtconf -v 命令输出中的设备 ID 格式不同但等效。


# metastat

d127: Concat/Stripe

    Size: 17629184 blocks (8.4 GB)

    Stripe 0:

        Device     Start Block  Dbase   Reloc

        c1t6d0s2      32768     Yes     Yes



Device Relocation Information:

Device   Reloc  Device ID c1t6d0   Yes    id1,sd@w4849544143484920444b3332454a2d33364e4320202020203433334239383939


# prtconf -v

.(output truncated)



.

.

sd, instance #6

         System properties:

              name='lun' type=int items=1

                 value=00000000

              name='target' type=int items=1

                 value=00000006

              name='class' type=string items=1

                 value='scsi'

         Driver properties:

              name='pm-components' type=string items=3 dev=none

                 value='NAME=spindle-motor' + '0=off' + '1=on'

              name='pm-hardware-state' type=string items=1 dev=none

                 value='needs-suspend-resume'

              name='ddi-failfast-supported' type=boolean dev=none

              name='ddi-kernel-ioctl' type=boolean dev=none

              Hardware properties:

              name='devid' type=string items=1

                 value='id1,@THITACHI_DK32EJ-36NC_____433B9899'

.

.

.

(output truncated)

prtconf -v 命令输出中包含 "instance #6" 的行与 metastat 命令输出中的磁盘 c1t6d0 相关联。prtconf -v 命令输出中的设备 ID (id1,@THITACHI_DK32EJ-36NC_____433B9899) 与 metastat 命令输出中的设备 ID (id1,sd@w4849544143484920444b3332454a2d33364e4320202020203433334239383939) 相关联。这两个命令输出之间的区别表明,Solaris Volume Manager 在 metastat 命令的输出中以十六进制格式显示设备 ID,而 Solaris 10 OS 配置在 prtconf 命令的输出中以 ASCII 字符串的形式显示设备 ID。