Recovering Volume Manager after upgrading

  1. # boot cdrom -sw
  2. # mount /dev/dsk/c0t0d0s0 /a (to mount root filesystem)
  3. Edit /a/etc/system

    Use * to block lines between VXVM BEGIN and VXVM END
        NOTE: There might be a file /a/etc/system.prevm
              That could be used. The lines look like the following: 
              *rootdev:/pseudo/vxio@0:0 
              *set vxio:vol_rootdev_is_volume=1
        
  4. Edit /a/etc/vfstab

    Comment out which is related to Volume Manager

    a) Using vfstab, change root device to system's root disk

    /dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0 / ufs 1 no -

    #NOTE: volume rootvol (/) encapsulated partition c0t0d0s0

    Recover other volumes the same way for /usr, /opt, etc.

  5. format c0t0d0

    Recover all slices.
    Refer to /etc/vx/reconfig.d/disk.d/cxtydz/vtoc for original config.
  6. Mount all slices to check.
        # mount /dev/dsk/c0t0d0s0 /a 
        # mount /dev/dsk/c0t0d0s6 /a/usr 
        # mount /dev/dsk/c0t0d0s3 /a/var 
        # ...
        
  7. Boot into multi-user mode.

    # init 6

  8. Remove patch and package for vm

    # pkgrm SUNWvxva
    # pkgrm SUNWvxvm

  9. Remove existing drivers for Volume Manager

    # rm /kernel/drv/*vx*

  10. cd /etc/vx and delete everything except /etc/vx/elm
  11. Move Volume Manager directory.

    # mv /VX* /old.VX*

  12. Upgrade OS.
  13. Reinstall vm package

    pkgadd SUNWvxva
    pkgadd SUNWvxvm
    required patches

  14. Run Volume Manager and recover root volume
        # rm /etc/vx/reconfig.d/state.d/install-db 
        # vxiod set 10 
        # vxconfigd -m disable 
        # vxdctl init 
        # vxdctl enable 
        # vxdiskadm (select option 2)
        
  15. Mirror root disk again.