- 论坛徽章:
- 0
|
solaris启动问题,请各位大大帮我看看,在线等
How to Recover From a Boot Device Failure\r\nIf you have a root (/) mirror and your boot device fails, you\'ll need to set up an alternate boot device.\r\n\r\nThe high-level steps in this task are as follows:\r\n\r\nBooting from the alternate root (/) submirror\r\n\r\nDetermining the errored state database replicas and volumes\r\n\r\nRepairing the failed disk\r\n\r\nRestoring state database and volumes to their original state\r\n\r\nIn the following example, the boot device contains two of the six state database replicas and the root (/), swap, and /usr submirrors fails.\r\n\r\nInitially, when the boot device fails, you\'ll see a message similar to the following. This message might differ among various architectures.\r\n\r\nRebooting with command:\r\nBoot device: /iommu/sbus/dma@f,81000/esp@f,80000/sd@3,0 \r\nThe selected SCSI device is not responding\r\nCan\'t open boot device\r\n...\r\n \r\n\r\n\r\nWhen you see this message, note the device. Then, follow these steps:\r\n\r\nBoot from another root (/) submirror.\r\n\r\nSince only two of the six state database replicas in this example are in error, you can still boot. If this were not the case, you would need to delete the inaccessible state database replicas in single-user mode. This procedure is described in How to Recover From Insufficient State Database Replicas.\r\n\r\nWhen you created the mirror for the root (/) file system, you should have recorded the alternate boot device as part of that procedure. In this example, disk2 is that alternate boot device.\r\n\r\nok boot disk2\r\nSunOS Release 5.9 Version s81_51 64-bit\r\nCopyright 1983-2001 Sun Microsystems, Inc. All rights reserved.\r\nHostname: demo\r\n...\r\ndemo console login: root\r\nPassword: <root-password>;\r\nDec 16 12:22:09 lexicon login: ROOT LOGIN /dev/console\r\nLast login: Wed Dec 12 10:55:16 on console\r\nSun Microsystems Inc. SunOS 5.9 s81_51 May 2002\r\n...\r\n \r\n\r\n\r\nDetermine that two state database replicas have failed by using the metadb command.\r\n\r\n# metadb\r\n flags first blk block count\r\n M p unknown unknown /dev/dsk/c0t3d0s3\r\n M p unknown unknown /dev/dsk/c0t3d0s3\r\n a m p luo 16 1034 /dev/dsk/c0t2d0s3\r\n a p luo 1050 1034 /dev/dsk/c0t2d0s3\r\n a p luo 16 1034 /dev/dsk/c0t1d0s3\r\n a p luo 1050 1034 /dev/dsk/c0t1d0s3\r\n \r\n\r\n\r\nThe system can no longer detect state database replicas on slice /dev/dsk/c0t3d0s3, which is part of the failed disk.\r\n\r\nDetermine that half of the root (/), swap, and /usr mirrors have failed by using the metastat command.\r\n\r\n# metastat\r\nd0: Mirror\r\n Submirror 0: d10\r\n State: Needs maintenance\r\n Submirror 1: d20\r\n State: Okay\r\n...\r\n \r\nd10: Submirror of d0\r\n State: Needs maintenance\r\n Invoke: \"metareplace d0 /dev/dsk/c0t3d0s0 <new device>;\"\r\n Size: 47628 blocks\r\n Stripe 0:\r\n Device Start Block Dbase State Hot Spare\r\n /dev/dsk/c0t3d0s0 0 No Maintenance \r\n \r\nd20: Submirror of d0\r\n State: Okay\r\n Size: 47628 blocks\r\n Stripe 0:\r\n Device Start Block Dbase State Hot Spare\r\n /dev/dsk/c0t2d0s0 0 No Okay \r\n \r\nd1: Mirror\r\n Submirror 0: d11\r\n State: Needs maintenance\r\n Submirror 1: d21\r\n State: Okay\r\n...\r\n \r\nd11: Submirror of d1\r\n State: Needs maintenance\r\n Invoke: \"metareplace d1 /dev/dsk/c0t3d0s1 <new device>;\"\r\n Size: 69660 blocks\r\n Stripe 0:\r\n Device Start Block Dbase State Hot Spare\r\n /dev/dsk/c0t3d0s1 0 No Maintenance \r\n \r\nd21: Submirror of d1\r\n State: Okay\r\n Size: 69660 blocks\r\n Stripe 0:\r\n Device Start Block Dbase State Hot Spare\r\n /dev/dsk/c0t2d0s1 0 No Okay \r\n \r\nd2: Mirror\r\n Submirror 0: d12\r\n State: Needs maintenance\r\n Submirror 1: d22\r\n State: Okay\r\n...\r\n \r\nd2: Mirror\r\n Submirror 0: d12\r\n State: Needs maintenance\r\n Submirror 1: d22\r\n State: Okay\r\n...\r\n \r\nd12: Submirror of d2\r\n State: Needs maintenance\r\n Invoke: \"metareplace d2 /dev/dsk/c0t3d0s6 <new device>;\"\r\n Size: 286740 blocks\r\n Stripe 0:\r\n Device Start Block Dbase State Hot Spare\r\n /dev/dsk/c0t3d0s6 0 No Maintenance \r\n \r\n \r\nd22: Submirror of d2\r\n State: Okay\r\n Size: 286740 blocks\r\n Stripe 0:\r\n Device Start Block Dbase State Hot Spare\r\n /dev/dsk/c0t2d0s6 0 No Okay \r\n \r\n\r\n\r\nIn this example, the metastat command shows that following submirrors need maintenance:\r\n\r\nSubmirror d10, device c0t3d0s0\r\n\r\nSubmirror d11, device c0t3d0s1\r\n\r\nSubmirror d12, device c0t3d0s6\r\n\r\nHalt the system, replace the disk, and use the format command or the fmthard command, to partition the disk as it was before the failure. \r\n\r\n\r\n\r\n--------------------------------------------------------------------------------\r\n\r\nTip - If the new disk is identical to the existing disk (the intact side of the mirror in this example), use prtvtoc /dev/rdsk/c0t2d0s2 | fmthard -s - /dev/rdsk/c0t3d0s2 to quickly format the new disk (c0t3d0 in this example)\r\n\r\n\r\n--------------------------------------------------------------------------------\r\n\r\n\r\n# halt\r\n...\r\nHalted\r\n...\r\nok boot\r\n...\r\n# format /dev/rdsk/c0t3d0s0\r\n \r\n\r\n\r\nReboot.\r\n\r\nNote that you must reboot from the other half of the root (/) mirror. You should have recorded the alternate boot device when you created the mirror.\r\n\r\n# halt\r\n...\r\nok boot disk2\r\n \r\n\r\n\r\nTo delete the failed state database replicas and then add them back, use the metadb command. \r\n\r\n# metadb\r\n flags first blk block count\r\n M p unknown unknown /dev/dsk/c0t3d0s3\r\n M p unknown unknown /dev/dsk/c0t3d0s3\r\n a m p luo 16 1034 /dev/dsk/c0t2d0s3\r\n a p luo 1050 1034 /dev/dsk/c0t2d0s3\r\n a p luo 16 1034 /dev/dsk/c0t1d0s3\r\n a p luo 1050 1034 /dev/dsk/c0t1d0s3\r\n# metadb -d c0t3d0s3\r\n# metadb -c 2 -a c0t3d0s3\r\n# metadb\r\n flags first blk block count\r\n a m p luo 16 1034 /dev/dsk/c0t2d0s3\r\n a p luo 1050 1034 /dev/dsk/c0t2d0s3\r\n a p luo 16 1034 /dev/dsk/c0t1d0s3\r\n a p luo 1050 1034 /dev/dsk/c0t1d0s3\r\n a u 16 1034 /dev/dsk/c0t3d0s3\r\n a u 1050 1034 /dev/dsk/c0t3d0s3\r\n \r\n\r\n\r\nRe-enable the submirrors by using the metareplace command.\r\n\r\n# metareplace -e d0 c0t3d0s0\r\nDevice /dev/dsk/c0t3d0s0 is enabled\r\n \r\n# metareplace -e d1 c0t3d0s1\r\nDevice /dev/dsk/c0t3d0s1 is enabled\r\n \r\n# metareplace -e d2 c0t3d0s6\r\nDevice /dev/dsk/c0t3d0s6 is enabled\r\n \r\n\r\n\r\nAfter some time, the resynchronization will complete. You can now return to booting from the original device. |
|