SVM – Get a disk out of maintenance mode

SVM shows a disk in maintenance mode like this:

d0: Mirror
Submirror 0: d10
State: Needs maintenance
Submirror 1: d20
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 62691300 blocks

d10: Submirror of d0
State: Needs maintenance
Invoke: metareplace d0 c1t0d0s0
Size: 62691300 blocks
Stripe 0:
Device Start Block Dbase State Hot Spare
c1t0d0s0 0 No Maintenance

But format show the disks as OK:
AVAILABLE DISK SELECTIONS:
0. c1t0d0
/pci@9,600000/SUNW,qlc@2/fp@0,0/ssd@w21000004cffa641b,0
1. c1t1d0
/pci@9,600000/SUNW,qlc@2/fp@0,0/ssd@w21000004cffa6512,0

And iostat -En show the disk clean
c1t0d0 Soft Errors: 0 Hard Errors: 0 Transport Errors: 0
Vendor: SEAGATE Product: ST336607FSUN36G Revision: 0207 Serial No: 0317A1JGSH
Size: 36.42GB <36418595328 bytes>
Media Error: 0 Device Not Ready: 0 No Device: 0 Recoverable: 0
Illegal Request: 0 Predictive Failure Analysis: 0

This may be caused by the "metasync -r" command not getting executed when the system boots

This metasync command is normally executed in one of the startup scripts run at boot time.

For Online: DiskSuite[TM] 1.0, the metasync command is located in the /etc/rc.local script. This entry is placed in that file by the metarc command.

For Solstice DiskSuite versions between 3.x and 4.2, inclusive, the metasync command is located in the /etc/rc2.d/S95SUNWmd.sync file.

For Solstice DiskSuite version 4.2.1 and above, the metasync command is located in the file /etc/rc2.d/S95lvm.sync.

In all cases, because this script is not run until the system transitions into run state 3 (multi-user mode), it is to be expected to have both submirrors in a "Needs maintenance" state until the command is run. I/O to these metadevices works just fine while in this state, so there is no need to worry.

You can also run metareplace -e d0 c1t0d0s0 (not actually replacing the drive) and wait through the rebuild

Leave a Reply

Your email address will not be published. Required fields are marked *