HP-UX 11.31双根盘故障案例分析

网友投稿 660 2022-09-21

HP-UX 11.31双根盘故障案例分析

HP-UX 11.31双根盘故障案例分析

环境描述:

Superdome SX2000服务器一台(HPUX 11.23系统),外接MSA60根盘柜,两块根盘,磁盘设备文件名分别为:c2t3d0,c3t3d0(PV Link);c2t4d0,c3t4d0(pv link).

故障描述:

其中一块根盘c2t3d0在event log中报mdeia error,正常更换根盘后,发现lvlnboot信息无法更新(lvlnboot信息不正确,重启或宕机后机器可能会无法启动)。

分析过程描述:

在更换根盘前,vgdisplay -v vg00 的输出如下:

hostname#[/]vgdisplay -v vg00

--- Volume groups ---

VG Name                     /dev/vg00

VG Write Access             read/write

VG Status                   available

Max LV                      255

Cur LV                      10

Open LV                     10

Max PV                      16

Cur PV                      2

Act PV                      2

Max PE per PV               4356

VGDA                        4

PE Size (Mbytes)            32

Total PE                    8712

Alloc PE                    4087

Free PE                     4625

Total PVG                   0

Total Spare PVs             0

Total Spare PVs in use      0

(中间lv详细信息省略)

--- Physical volumes ---

PV Name                     /dev/dsk/c2t3d0s2

PV Name                     /dev/dsk/c3t3d0s2        Alternate Link

PV Status                   available

Total PE                    4356

Free PE                     4356

Autoswitch                  On

Proactive Polling           On

PV Name                     /dev/dsk/c3t4d0s2

PV Name                     /dev/dsk/c2t4d0s2        Alternate Link

PV Status                   available

Total PE                    4356

Free PE                     269

Autoswitch                  On

Proactive Polling           On

由上述输出可以看出,vg00总共包括两块pv:c2t3d0s2,c3t3d0s2(pvlink)和c3t4d0s2,c2t4d0s2(pvlink).现在由于

c2t3d0有media error,所以要将其换掉。

在更换根盘前,lvlnboot的输出如下,不知各位有没有发现是否有异常呢?

hostname#[/]lvlnboot -v

Current path "/dev/dsk/c3t3d0s2" is an alternate link, skip.

Current path "/dev/dsk/c2t4d0s2" is an alternate link, skip.

Boot Definitions for Volume Group /dev/vg00:

Physical Volumes belonging in root Volume Group:

/dev/dsk/c2t3d0s2 (0/0/13/0/0/0/0.0.0.3.0) -- Boot Disk

/dev/dsk/c3t3d0s2 (0/0/2/0/0/0/0.0.0.3.0)

/dev/dsk/c3t4d0s2 (0/0/2/0/0/0/0.0.0.4.0)     //此处应该也有Boot Disk才对

/dev/dsk/c2t4d0s2 (0/0/13/0/0/0/0.0.0.4.0)

Boot: lvol1     on:     /dev/dsk/c2t3d0s2

/dev/dsk/c3t3d0s2

/dev/dsk/c3t4d0s2

/dev/dsk/c2t4d0s2

Root: lvol3     on:     /dev/dsk/c2t3d0s2

/dev/dsk/c3t3d0s2

/dev/dsk/c3t4d0s2

/dev/dsk/c2t4d0s2

Swap: lvol2     on:     /dev/dsk/c2t3d0s2

/dev/dsk/c3t3d0s2

/dev/dsk/c3t4d0s2

/dev/dsk/c2t4d0s2

Dump: lvol2     on:     /dev/dsk/c2t3d0s2, 0

接下来便是正常的更换根盘步骤,填充EFI,镜像lv等。新根盘设备文件名为:c2t6d0,c3t6d0(pv link);换完根盘后的vg00所包含的pv信息如下:

--- Physical volumes ---

PV Name                     /dev/dsk/c3t4d0s2

PV Name                     /dev/dsk/c2t4d0s2        Alternate Link

PV Status                   available

Total PE                    4356

Free PE                     269

Autoswitch                  On

Proactive Polling           On

PV Name                     /dev/dsk/c3t6d0s2

PV Name                     /dev/dsk/c2t6d0s2        Alternate Link

PV Status                   available

Total PE                    4356

Free PE                     4356

Autoswitch                  On

Proactive Polling           On

至此,更换根盘的过程就已经结束了,该是执行lvlnboot -R的时候了,在执行lvlnboot -R前lvlnboot的

输出如下(此时,已经可以看出c3t4d0这快盘的结构有问题了):

hostname#[/]lvlnboot -v

Current path "/dev/dsk/c2t4d0s2" is an alternate link, skip.

Current path "/dev/dsk/c2t6d0s2" is an alternate link, skip.

Boot Definitions for Volume Group /dev/vg00:

Physical Volumes belonging in Root Volume Group:

/dev/dsk/c3t4d0s2 (0/0/2/0/0/0/0.0.0.4.0)

/dev/dsk/c2t4d0s2 (0/0/13/0/0/0/0.0.0.4.0)

/dev/dsk/c3t6d0s2 (0/0/2/0/0/0/0.0.0.6.0) -- Boot Disk

/dev/dsk/c2t6d0s2 (0/0/13/0/0/0/0.0.0.6.0)

No Boot Logical Volume configured

No Root Logical Volume configured

No Swap Logical Volume configured

No Dump Logical Volume configured

上面的输出说明此时的操作系统没有有效的lvlnboot信息,swap,dump,root,boot等lv均未定义,如果此时宕机或重启,则机器肯定无法启动,如果没有备份,可能需要重新安装操作系统!

在执行完lvlnboot -R后,依然无法更新lvlnboot信息。分别执行lvlnboot -r;lvlnboot -b等信息均报错,输出如下:

hostname#[/]lvlnboot -r  /dev/vg00/lvol3

lvlnboot: Physical Volume "/dev/dsk/c3t4d0s2" on which Logical

Volume "/dev/vg00/lvol3" resides is not a Boot Physical Volume.

hostname#[/]lvlnboot -d  /dev/vg00/lvol2

lvlnboot: A Root Logical Volume must be assigned before

a Dump or Swap Logical Volume can be assigned.

hostname#[/]lvlnboot -s  /dev/vg00/lvol2

lvlnboot: A Root Logical Volume must be assigned before

a Dump or Swap Logical Volume can be assigned.

hostname#[/]lvlnboot -R

Volume Group configuration for /dev/vg00 has been saved in /etc/lvmconf/vg00.conf

hostname#[/]lvlnboot -v

Current path "/dev/dsk/c2t4d0s2" is an alternate link, skip.

Current path "/dev/dsk/c2t6d0s2" is an alternate link, skip.

Boot Definitions for Volume Group /dev/vg00:

Physical Volumes belonging in Root Volume Group:

/dev/dsk/c3t4d0s2 (0/0/2/0/0/0/0.0.0.4.0)

/dev/dsk/c2t4d0s2 (0/0/13/0/0/0/0.0.0.4.0)

/dev/dsk/c3t6d0s2 (0/0/2/0/0/0/0.0.0.6.0) -- Boot Disk

/dev/dsk/c2t6d0s2 (0/0/13/0/0/0/0.0.0.6.0)

Root LV not yet configured !! Mirror information will not be displayed

Boot: lvol1     on:     /dev/dsk/c3t6d0s2

No Root Logical Volume configured

No Swap Logical Volume configured

No Dump Logical Volume configured

试了很多次,均无法解决问题,由于此机器为客户的生产机,且是重要业务的生产,绝对不允许宕机;后来,我认真的看了上面的其中一句话,也就是上面报错信息中的一句:

Physical Volume "/dev/dsk/c3t4d0s2" on which Logical

Volume "/dev/vg00/lvol3" resides is not a Boot Physical Volume.

这句话的大概意思是说:lvol3这个lv所在的c3t4d0s2这个分区不是一个可启动的PV,即不是一个有效的Boot Disk,为什么系统不认为它是一个有效的Boot Disk呢?其实,这一点在开头就可以看出来了,在没有维修前lvlnboot的输出就只有一块Boot Disk标识(见开头lvlnboot输出中被标红的字体)。

经过详细检查和case跟踪,其他所有原因都排出了(lv镜像,EFI区等),最后发现原因是因为c3t4d0这块盘当初被pvcreate加进vg00时没有加-B参数(即,当初把c3t4d0这块盘加进vg00时,执行的是pvcreate /dev/rdsk/c3t4d0s2,正常的应该是

执行pvcreate -B /dev/rdsk/c3t4d0s2),未加-B参数直接导致盘上没有BDRA区域,且操作系统不认为该盘是Boot Disk。所以lvlnboot的信息一直无法同步。

解决方法:

将c2t4d0s2和它的pv link c3t4d0s2这块盘从vg00中剔除(剔除前需要先将所有lv的mirror从其中拆掉),重新pvreate -B,再加入vg00,再mirror vg00下的所有lv后,问题解决。

解决后,正常后的lvlnboot的输入如下:

hostname#[/]lvlnboot -v

Current path "/dev/dsk/c2t6d0s2" is an alternate link, skip.

Current path "/dev/dsk/c2t4d0s2" is an alternate link, skip.

Boot Definitions for Volume Group /dev/vg00:

Physical Volumes belonging in Root Volume Group:

/dev/dsk/c3t6d0s2 (0/0/2/0/0/0/0.0.0.6.0) -- Boot Disk

/dev/dsk/c2t6d0s2 (0/0/13/0/0/0/0.0.0.6.0)

/dev/dsk/c3t4d0s2 (0/0/2/0/0/0/0.0.0.4.0) -- Boot Disk

/dev/dsk/c2t4d0s2 (0/0/13/0/0/0/0.0.0.4.0)

Boot: lvol1     on:     /dev/dsk/c3t6d0s2

/dev/dsk/c2t6d0s2

/dev/dsk/c3t4d0s2

/dev/dsk/c2t4d0s2

Root: lvol3     on:     /dev/dsk/c3t6d0s2

/dev/dsk/c2t6d0s2

/dev/dsk/c3t4d0s2

/dev/dsk/c2t4d0s2

Swap: lvol2     on:     /dev/dsk/c3t6d0s2

/dev/dsk/c2t6d0s2

/dev/dsk/c3t4d0s2

/dev/dsk/c2t4d0s2

Dump: lvol2     on:     /dev/dsk/c3t6d0s2, 0

通过上面标红的字体,大家可以看出,此时系统均已将两块盘标识为Boot Disk,同事lvlnboot的信息也恢复正常。

至此,故障处理结束。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Python练习题1.3输出“Python语言简单易学”(编写程序输出如下语句 这是我的第二个python程序)
下一篇:HP-UX MC/SG报错一例分享
相关文章

 发表评论

暂时没有评论,来抢沙发吧~