Format Disk (Low Level Format)

Top  Previous  Next

The -format option, introduced in build 1.25 can be used to perform a low-level format of a SCSI, Fibre channel, or IBM SSA type disk drive. This command sends out the FORMAT UNIT command which performs a physical formatting of the disk drive. Depending on the options you supply, and the capabilities of the disk drive, you can use this feature to clear the grown defects (GLIST) table, change the layout of the remapped data or specify a certain data pattern to be written over the disk drive.

 

The -format option will only be accepted for disk drives. If you try to format a CDROM, for example, you will get an error. The command will also be rejected for ATA type disks as well, as there is arguably no reason why this command should ever be issued to an ATA family disk drive.  Also, the command will only format one drive at a time, and the program will stay "locked up" until the operation has been completed. It will not send any additional commands to the drive until the format is complete.  If your command-line uses wild-cards, or if you give it the device name for more than one disk drive, only the first disk will be selected for formatting.

 

Usage

smartmon-ux -format DeviceName

 

Example

C:\>smartmon-ux -format \\.\SCSI2Port2Path0Target19Lun0

SMARTMon-ux [Release 1.25-RC2, Build 13-MAR-2004] - Copyright 2001-2004 SANtools, Inc. http://www.SANtools.com

***************************************************************************************

* Warning:  You have instructed the software to reformat the selected disk. No checks *

*           will be made to verify that the disk isn't mounted or in use in any way.  *

*           (Although reformatting your boot disk will blow the O/S, it will work.)   *

*                                                                                     *

*           The process could take several hours to complete, and this program will   *

*           lock up until either the formatting is complete or the drive rejects the  *

*           command.  Once the command is sent to the device, the software will       *

*           suspend and wait for the action to complete.                              *

*                                                                                     *

*           Your operating system may attempt to query the disk unless you have       *

*           unmounted it (unassigned drive letter in Windows, umount in UNIX/LINUX).  *

*                                                                                     *

*           As a formatting disk is going to appear dead to your operating system,    *

*           you may have to endure some error or system log messages, or even force   *

*           the system to rediscover devices after the process has formatting has     *

*           been completed.  WARNING:  If the formatting is interrupted due to        *

*           a power failure or an external hardware/software problem, then you must   *

*           reformat the disk as this is the only way to recover from an incomplete   *

*           format.                                                                   *

*                                                                                     *

*           If you are formatting a disk as part of a disk drive firmware update and  *

*           drive cloning procedure, don't forget to also clone the mode pages        *

*           BEFORE reformatting, as the disk topology (sector sizes) and defect       *

*           layout are defined in the mode pages and used by the disk as part of      *

*           the formatting process.                                                   *

***************************************************************************************

 

This will format the SEAGATE ST336605FC disk at \\.\SCSI2Port2Path0Target19Lun0

Do you want to clear the grown defects (GLIST) as the disk is formatted? <Y/N>: N

Do you want to assign a custom (non-zero) defect list format or assign vendor-unique settings? <Y/N>: N

Are you sure you want to do this? Answer "YES" to begin the low-level format, anything else exits program: YES

 

Sending command .... This will be last text you see until format complete or rejected.

Formatting ... [This is where the cursor will stay until format complete] completed ... Program terminating.

 

Command Options

Once you see the warning message after you invoke this command, you will be given the opportunity to select some additional features which must be defined before the format command is sent to the disk drive. The reason is these additional functions can only be performed on a disk at the time you format it. This is not a SMARTMonUX limitation. These constraints are within the ANSI SCSI specification.

 

Do not combine the -format command with any other options. As this feature is destructive, it may not be run in batch mode, and requires you to enter YES before the program begins reformatting your disk drive.

 

You may add the -confirm command which will suppress the are-you-sure. We strongly recommend you only use this in a batch test environment where you know exactly what you are doing. You will not be able to stop the process once you press return.

 

Clear Grown Defects

Disks typically (but not always) maintain a list of factory (called primary defects, or PLIST) and grown defects, called the GLIST. There may also be a DLIST. The primary defect list is created at time of manufacture and cannot be altered. The GLIST is built after time of manufacture and grow as either the disk detects areas as data is written, or the operating system detects a problem with an area of the disk and reassigns the data to another location.

 

SMARTMonUX allows you to clear the grown defect list at the time you format the disk, or more correctly, allows you to turn on this feature that is inherent in the disk drive, when the SCSI command to reformat is sent to the disk.   Ordinarily you would rarely want to clear the grown defects, as they are built over time whenever the disk detects a bad area of the disk and decides data should not be kept there. If you clear the defect list then you run risk of data loss when data is written to a bad sector that is not marked as bad.  We will not editorialize further on the merits of clearing the GLIST and suggest you contact your storage vendor to determine whether clearing the GLIST is something you need to do.  We will say that the only time we ever clear the defect list is when we reformat the disk to use a different sector size, and we follow the operation with a program that fully exercises every sector in the disk to properly rebuild the GLIST before any live data is put on the drive.

 

Specifying the Defect List Format

The ANSI specification allows for numerous formats that the defect lists can be presented to a program when it sends the appropriate SCSI commands to retrieve the data. Basically you have vendor unique, bytes-from-index, and physical sector format.  Ordinarily you would take the defaults, format 0, which is mandatory per the ANSI spec for all disk drives.  This might not be the correct format for drives that have special OEM firmware on them or are placed behind some RAID controllers. If you do not know what format to use, ask your storage vendor.

 

Formatting Disk with Full Parameter Control

SMARTMonUX provides the user a mechanism to specify the complete SCSI CDB. This allows you to do anything from force a certain interleave factor to provide custom defect layouts or even pass vendor/drive unique commands to the disk to perform tasks that are only documented under customer/vendor non-disclosure agreements.  If you need to format your disk with non-standard parameters, answer Y to the "Do you want to assign a custom (non-zero) defect list format or assign vendor-unique settings" question. You would then see:

 

Do you want to assign a custom (non-zero) defect list format or assign vendor-unique settings? <Y/N>: y

Please enter the last 5 bytes of the FORMAT UNIT CDB in hex. If you don't know what they

should be, then it is highly probable you should NOT be sending vendor-unique info.

CDB[0] = 04

CDB[1] =

 

You would enter the hex byte for the 2nd CDB byte and continue the process until all 6 bytes of the SCSI CDB were filled in. The reason the first byte of the CDB is 04 is because that value represents the op-code to perform the FORMAT UNIT command, so that would not change. After all 6 bytes have been entered (red represents what the computer displays, blue is what the user typed in this example), the format would begin provided you entered YES after entering the rest of the command. In the example below, we instructed the drive to clear the GLIST, use defect format #4, and set the interleave factor to 2. To repeat an earlier warning, if you do not know what all of this means, you should probably not be doing this. We strongly recommend contacting your storage vendor to determine whether or not a special format command should be sent rather than the default.

 

Do you want to assign a custom (non-zero) defect list format or assign vendor-unique settings? <Y/N>: y

Please enter the last 5 bytes of the FORMAT UNIT CDB in hex. If you don't know what they

should be, then it is highly probable you should NOT be sending vendor-unique info.

CDB[0] = 04

CDB[1] = 0B

CDB[2] = 00

CDB[3] = 00

CDB[4] = 02

CDB[5] = 00

 

Will send CDB = 04 0B 00 00 02 00

Are you sure you want to do this? Answer "YES" to begin the low-level format, anything else exits program: NO

 

Low level formatting aborted. Program exiting now!

 

Formatting Disks in the Background

If your disks were made after 2005, then chances are good that they support background formatting.  This command, -formatb, lets you issue the format command to a device and the selected disk formats in the background. The net result to the user is that the program returns immediately.  If you combine the -formatb with the -confirm command, then you can format dozens or hundreds of disk drives at once, with no host computer overhead.  Background formatting makes a lot of sense if you have (JBOD) enclosures and a large number of disks that need to be reformatted.

 

C:\>smartmon-ux -formatb \\.\PHYSICALDRIVE4

SMARTMon-UX [Release 1.42, Build 17-NOV-2009] - Copyright 2001-2009 SANtools(R), Inc. http://www.SANtools.com

Discovered HITACHI HUS103073FLF210 S/N "V3W908XA0055P6591CC9" on \\.\PHYSICALDRIVE4 [SES] (SMART enabled) [Bus/Port/ID.LUN=1/2/2.0](694

60 MB)

 

***************************************************************************************

* Warning:  You have instructed the software to reformat the selected disk. No checks *

*           will be made to verify that the disk isn't mounted or in use in any way.  *

*           (Although reformatting your boot disk will blow the O/S, it will work.)   *

*                                                                                     *

*           The process could take several hours to complete, and this program will   *

*           lock up until either the formatting is complete or the drive rejects the  *

*           command.  Once the command is sent to the device, the software will       *

*           suspend and wait for the action to complete.                              *

*                                                                                     *

*           Your operating system may attempt to query the disk unless you have       *

*           unmounted it (unassigned drive letter in Windows, umount in UNIX/LINUX).  *

*                                                                                     *

*           As a formatting disk is going to appear dead to your operating system,    *

*           you may have to endure some error or system log messages, or even force   *

*           the system to rediscover devices after the process has formatting has     *

*           been completed.  WARNING:  If the formatting is interrupted due to        *

*           a power failure or an external hardware/software problem, then you must   *

*           reformat the disk as this is the only way to recover from an incomplete   *

*           format.                                                                   *

*                                                                                     *

*           If you are formatting a disk as part of a disk drive firmware update and  *

*           drive cloning procedure, don't forget to also clone the mode pages        *

*           BEFORE reformatting, as the disk topology (sector sizes) and defect       *

*           layout are defined in the mode pages and used by the disk as part of      *

*           the formatting process.                                                   *

***************************************************************************************

 

This will format the HITACHI HUS103073FLF210 disk at \\.\PHYSICALDRIVE4

Do you want to clear the grown defects (GLIST) as the disk is formatted? <Y/N>: y

Do you want to assign a custom (non-zero) defect list format or assign vendor-unique settings? <Y/N>: N

Are you sure you want to do this? Answer "YES" to begin the low-level format, anything else exits program: YES

 

Sending command ... Background format acknowledged and running.

Program terminating.

 

You may use the -str command, which reports status of self-tests to see if the selected disk has completed the operation.

 

C:\>smartmon-ux -str \\.\PHYSICALDRIVE4

SMARTMon-UX [Release 1.42, Build 17-NOV-2009] - Copyright 2001-2009 SANtools(R), Inc. http://www.SANtools.com

Discovered HITACHI HUS103073FLF210 S/N "V3W908XA0055P6591CC9" on \\.\PHYSICALDRIVE4 [SES] (SMART unsupported) [Bus/Port/ID.LUN=1/2/2.0]

 

- Results from last self-test: Logical unit not ready, format in progress

 

Program Ended.