cancel
Showing results for 
Search instead for 
Did you mean: 

rootdisk recovery stuck in "recover" state

bshaffer
Level 2

I'm running vxvm 4.1 on solaris 10.  My rootdisk failed, I replaced it, tried to recover using vxdiskadm, but got an error - error: /usr/lib/vxvm/voladm.d/bin/disk.repl: -1: bad number.

 

I found http://seer.entsupport.symantec.com/docs/294946.htm, which tells me to try the command line:

vxdg -g <dg> -k adddisk dmname=daname

which looked like it was working fine - vxprint showed rootvol and swapvol recovering.

 

The problem is they still show as recovering.  I've let it sit overnight to see if it was finishing something up.  These are small disks, so it really shouldn't have taken very long.  There is no IO seen by iostat, and there are no tasks listed with vxtask.

 

Anyone got any ideas?

 

root@arizona:~# vxprint
Disk group: rootdg

TY NAME         ASSOC        KSTATE   LENGTH   PLOFFS   STATE    TUTIL0  PUTIL0
dg rootdg       rootdg       -        -        -        -        -       -

dm rootdisk     c2t0d0s2     -        35365968 -        -        -       -
dm rootmirror   c1t0d0s2     -        35358848 -        -        -       -

v  rootvol      root         ENABLED  26976200 -        ACTIVE   -       -
pl rootvol-01   rootvol      DISABLED 26976200 -        RECOVER  -       -
sd rootdisk-02  rootvol-01   ENABLED  26976200 0        -        -       -
pl rootvol-02   rootvol      ENABLED  26976200 -        ACTIVE   -       -
sd rootmirror-02 rootvol-02  ENABLED  26976200 0        -        -       -

v  swapvol      swap         ENABLED  8382648  -        ACTIVE   -       -
pl swapvol-01   swapvol      DISABLED 8382648  -        RECOVER  -       -
sd rootdisk-01  swapvol-01   ENABLED  8382648  0        -        -       -
pl swapvol-02   swapvol      ENABLED  8382648  -        ACTIVE   -       -
sd rootmirror-01 swapvol-02  ENABLED  8382648  0        -        -       -

Bill

 

 

2 REPLIES 2

sunshine_2
Level 4

these commands will fix the state of plexes..

 

 

# vxmend -g <dg_name> -o force off <PLEX_NAME>
 # vxmend -g <dg_name> on <PLEX_NAME>
 # vxmend -g <dg_name> fix clean <PLEX_NAME>
 # vxvol -g <dg_name> start <VOLUME_NAME>

bills
Level 5

After talking with support, they came up with the same answer as sunshine, and then had an "easier quick fix."  They had me try disassociating the plexes and then reattaching them:

# vxplex -g rootdg dis rootvol-01

# vxplex -g rootdg att rootvol rootvol-01

 

but that gave me

VxVM vxplex ERROR V-5-1-1315 Volume rootvol: Plex rootvol-01 does not meet root usage type restrictions

Then they just had me remove the disassociated plexes with vxedit, remove the disk from the diskgroup, reinitialize it, and mirror from vxdiskadm.  This worked fine.

# vxedit -g rootdg -r rm rootvol-01
# vxdg -g rootdg rmdisk rootdisk
# /etc/vx/bin/vxdiskunsetup -C c2t0d0

# /etc/vx/bin/vxdisksetup -i c2t0d0 format=sliced

# vxdiskadm

...