Lets see a small KB/steps to boot Solaris OS system when both root disks are in maintenance mode and is not coming up in multi-user mode even after reboot.
The system is again and again falls into maintenance(single user) mode.
Both the disks of root partition/mirror are in faulty state.
1. First check the root device and its mirrors. For example:- In our case, d0 is the root mirror with two disks c1t1d0s0 and c1t0d0s0.
#metastat -p
d0 -m d20 d10 1
d20 1 1 c1t1d0s0
d10 1 1 c1t0d0s0
2. Both mirror disks of root are in "needs maintenance".
-bash-3.00$ metastat d0
d0: Mirror
Submirror 0: d20
State: Needs maintenance
Submirror 1: d10
State: Needs maintenance
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 273551232 blocks (130 GB)
d20: Submirror of d0
State: Needs maintenance
Invoke: metareplace d0 c1t1d0s0 <new device>
Size: 273551232 blocks (130 GB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t1d0s0 0 No Maintenance Yes
d10: Submirror of d0
State: Needs maintenance
Invoke: after replacing "Maintenance" components:
metareplace d0 c1t0d0s0 <new device>
Size: 273551232 blocks (130 GB)
Stripe 0:
Device Start Block Dbase State Reloc Hot Spare
c1t0d0s0 0 No Last Erred Yes
Device Relocation Information:
Device Reloc Device ID
c1t1d0 Yes id1,sd@n500186200203df40
c1t0d0 Yes id1,sd@n5001862003d36b04
3. Check /var/log/messages and dmesg, you should see many hard disk bad sector messages, which clearly shows the fault in disks and they need replacement.
Check other hardware errors with below command.
#fmadm faulty
4. Ran fsck on both root mirror devices.
#fsck -F ufs -y /dev/rdsk/c1t0d0s0
#fsck -F ufs -y /dev/rdsk/c1t1d0s0
and on metadevice.
#fsck -F ufs -y /dev/md/dsk/d0
5. Now try to reboot the server, if there are few bad sectors which get repaired in fsck then it will boot otherwise it will again drop into system maintenance mode.
Now again run fsck on first root mirror.
#fsck -F ufs -y /dev/rdsk/c1t0d0s0
Mount the root filesystem rw.
#mount -o remount,rw /
6. Start essential system services.
#svcadm enable svc:/system/filesystem/usr:default
7. Now the server and all its services are up, as the partition is in rw mode and services are started. Fire init command to change runlevel to multi-user mode.
#init 3
The server is now in multi-user mode and will serve temporarily.
Now avoid rebooting the server again and chase with Oracle to replace the disks asap
Share this NG Linux post: