If a disk on your system has a defective sector, you can repair it by following procedures in this section. You might become aware of defective sectors when you do the following:
Run surface analysis on a disk
For more information on the analysis feature of the format utility, see The analyze Menu.
The defective area reported while your system is running might not be accurate. Since the system does disk operations many sectors at a time, it is often hard to pinpoint exactly which sector caused a given error. To find the exact sector(s), use How to Identify a Defective Sector by Using Surface Analysis.
Get multiple error messages from the disk driver concerning a particular portion of the disk while your system is running.
Messages that are related to disk errors look like the following:
WARNING: /io-unit@f,e0200000/sbi@0,0/QLGC,isp@1,10000/sd@3,0 (sd33): Error for command 'read' Error Level: Retryable Requested Block 126, Error Block: 179 Sense Key: Media Error Vendor 'name': ASC = 0x11 (unrecovered read error), ASCQ = 0x0, FRU = 0x0 |
The preceding console message indicates that block 179 might be defective. Relocate the bad block by using the format utility's repair command or use the analyze command with the repair option enabled.
Become superuser or assume an equivalent role.
Unmount the file system in the slice that contains the defective sector.
# umount /dev/dsk/device-name |
For more information, see mount(1M).
Invoke the format utility.
# format |
Select the affected disk.
Specify disk (enter its number):1 selecting c0t2d0: [disk formatted] Warning: Current Disk has mounted partitions. |
Select the analyze menu.
format> analyze |
Set up the analysis parameters by typing setup at the analyze> prompt.
Use the parameters shown here:
analyze> setup Analyze entire disk [yes]? n Enter starting block number [0, 0/0/0]: 12330 Enter ending block number [2052287, 2035/13/71]: 12360 Loop continuously [no]? y Repair defective blocks [yes]? n Stop after first error [no]? n Use random bit patterns [no]? n Enter number of blocks per transfer [126, 0/1/54]: 1 Verify media after formatting [yes]? y Enable extended messages [no]? n Restore defect list [yes]? y Create defect label [yes]? y |
Use the read command to find the defect.
analyze> read Ready to analyze (won't harm SunOS). This takes a long time, but is interruptible with Control-C. Continue? y pass 0 2035/12/1825/7/24 pass 1 Block 12354 (18/4/18), Corrected media error (hard data ecc) 25/7/24 ^C Total of 1 defective blocks repaired. |
Become superuser or assume an equivalent role.
Invoke the format utility.
# format |
Select the disk that contains the defective sector.
Specify disk (enter its number): 1 selecting c0t3d0 [disk formatted] format> |
Select the repair command.
format> repair |
Type the defective block number.
Enter absolute block number of defect: 12354 Ready to repair defect, continue? y Repairing block 12354 (18/4/18)...ok. format> |
If you are unsure of the format that is used to identify the defective sector, see How to Identify a Defective Sector by Using Surface Analysis for more information.