format.dat enables you to use your specific disk drives with format(1M). On Solaris 2.3 and compatible systems, format will automatically configure and label SCSI drives, so that they need not be defined in format.dat. Three things can be defined in the data file:
• search paths
• disk types
• partition tables.
The following syntax rules apply to the data file:
• The pound # sign is the comment character. Any text on a line after a pound sign is not interpreted by format.
• Each definition in the format.dat file appears on a single logical line. If the definition is more than one line long, all but the last line of the definition must end with a backslash (\).
• A definition consists of a series of assignments that have an identifier on the left side and one or more values on the right side. The assignment operator is the equal sign (=). Assignments within a definition must be separated by a colon (:).
• White space is ignored by format(1M). If you want an assigned value to contain white space, enclose the entire value in double quotes ("). This will cause the white space within quotes to be preserved as part of the assignment value.
• Some assignments can have multiple values on the right hand side. Separate values by a comma (,).
The data file contains disk definitions that are read in by format(1M) when it starts up. Each definition starts with one of the following keywords: search_path, disk_type, and partition.
search_path 4.x: Tells format which disks it should search for when it starts up. The list in the default data file contains all the disks in the GENERIC configuration file. If your system has disks that are not in the GENERIC configuration file, add them to the search_path definition in your data file. The data file can contain only one search_path definition. However, this single definition lets you specify all the disks you have in your system.
5.x: By default, format(1M) understands all the logical devices that are of the form /dev/rdsk/cntndnsn; hence search_path is not normally defined on a 5.x system.
disk_type Defines the controller and disk model. Each disk_type definition contains information concerning the physical geometry of the disk. The default data file contains definitions for the controllers and disks that the Solaris operating environment supports. You need to add a new disk_type only if you have an unsupported disk. You can add as many disk_type definitions to the data file as you want.
The following controller types are supported by format(1M):
XY450 Xylogics 450 controller (SMD)
XD7053 Xylogics 7053 controller (SMD)
SCSI True SCSI (CCS or SCSI-2)
ISP-80 IPI panther controller
The keyword itself is assigned the name of the disk type. This name appears in the disk's label and is used to identify the disk type whenever format(1M) is run. Enclose the name in double quotes to preserve any white space in the name.
Below are lists of identifiers for supported controllers. Note that an asterisk ('*') indicates the identifier is mandatory for that controller -- it is not part of the keyword name.
The following identifiers are assigned values in all disk_type definitions:
acyl* alternate cylinders
asect alternate sectors per track
atrks alternate tracks
fmt_time formatting time per cylinder
ncyl* number of logical cylinders
nhead* number of logical heads
nsect* number of logical sectors per track
pcyl* number of physical cylinders
phead number of physical heads
psect number of physical sectors per track
rpm* drive RPM
These identifiers are for SCSI and MD-21 Controllers
read_retries page 1 byte 3 (read retries)
write_retries page 1 byte 8 (write retries)
cyl_skew page 3 bytes 18-19 (cylinder skew)
trk_skew page 3 bytes 16-17 (track skew)
trks_zone page 3 bytes 2-3 (tracks per zone)
cache page 38 byte 2 (cache parameter)
prefetch page 38 byte 3 (prefetch parameter)
max_prefetch page 38 byte 4 (minimum prefetch)
min_prefetch page 38 byte 6 (maximum prefetch)
Note: The Page 38 values are device-specific. Refer the user to the particular disk's manual for these values.
For SCSI disks, the following geometry specifiers may cause a mode select on the byte(s) indicated:
asect page 3 bytes 4-5 (alternate sectors per zone)
atrks page 3 bytes 8-9 (alt. tracks per logical unit)
phead page 4 byte 5 (number of heads)
psect page 3 bytes 10-11 (sectors per track)
And these identifiers are for SMD Controllers Only
bps* bytes per sector (SMD)
bpt* bytes per track (SMD)
Note: under SunOS 5.x, bpt is only required for SMD disks. Under SunOS 4.x, bpt was required for all disk types, even though it was only used for SMD disks.
And this identifier is for XY450 SMD Controllers Only
drive_type* drive type (SMD) (just call this "xy450 drive type")
partition Defines a partition table for a specific disk type. The partition table contains the partitioning information, plus a name that lets you refer to it in format(1M). The default data file contains default partition definitions for several kinds of disk drives. Add a partition definition if you repartitioned any of the disks on your system. Add as many partition definitions to the data file as you need.
Partition naming conventions differ in SunOS 4.x and in SunOS 5.x.
4.x: the partitions are named as a, b, c, d, e, f, g, h.
5.x: the partitions are referred to by numbers 0, 1, 2, 3, 4, 5, 6, 7.
Example 1: A sample disk_type and partition.
Following is a sample disk_type and partition definition in format.dat file for SUN0535 disk device.
disk_type = "SUN0535" \ : ctlr = SCSI : fmt_time = 4 \ : ncyl = 1866 : acyl = 2 : pcyl = 2500 : nhead = 7 : nsect = 80 \ : rpm = 5400 partition = "SUN0535" \ : disk = "SUN0535" : ctlr = SCSI \ : 0 = 0, 64400 : 1 = 115, 103600 : 2 = 0, 1044960 : 6 = 300, 876960
/etc/format.dat default data file if format -x is not specified, nor is there a format.dat file in the current directory.
System Administration Guide: Basic Administration