Go to main content

man pages section 1: User Commands

Exit Print View

Updated: Wednesday, July 27, 2022



rmformat - removable rewritable media format utility


rmformat [-DeHUv] [-b label] [-c blockno] 
     [-Fquick | long | force ] [-s filename] [devname]
rmformat -V read | write devname
rmformat -l [devname]


The rmformat utility is used to format, label, partition, and perform other miscellaneous functions on removable, rewritable media that include PCMCIA memory and ata cards. The rmformat utility should also be used with all USB mass storage devices, including USB hard drives. This utility can also be used for the verification and surface analysis and for repair of the bad sectors found during verification if the drive or the driver supports bad block management.

After formatting, rmformat writes the label, which covers the full capacity of the media as one slice on PCMCIA memory cards. The partition information can be changed with the help of other options provided by rmformat.


The following options are supported:

–b label

Labels the media with a SUNOS label. A SUNOS volume label name is restricted to 8 characters. For media size greater than 1 TB, an EFI label is created. For writing a DOS Volume label, the user should use mkfs_pcfs(8).

–c blockno

Corrects and repairs the given block. This correct and repair option may not be applicable to all devices supported by rmformat, as some devices may have a drive with bad block management capability and others may have this option implemented in the driver. If the drive or driver supports bad block management, a best effort is made to rectify the bad block. If the bad block still cannot be rectified, a message is displayed to indicate the failure to repair. The block number can be provided in decimal, octal, or hexadecimal format.

The normal PCMCIA memory and ata cards do not support bad block management.


Ejects the media upon completion. This feature may not be available if the drive does not support motorized eject.

–F quick | long | force

Formats the media.

The quick option starts a format without certification or format with limited certification of certain tracks on the media.

The long option starts a complete format. For some devices this might include the certification of the whole media by the drive itself.

The force option to format is provided to start a long format without user confirmation before the format is started.

On PCMCIA memory cards, all options start a long format.


Lists all removable devices. By default, without any options, rmformat also lists all removable devices. If the dev_name is given, rmformat lists the device associated with the dev_name. The output shows the device pathname, vendor information, and the device type.

–s filename

Enables the user to lay out the partition information in the SUNOS label.

The user should provide a file as input with information about each slice in a format providing byte offset, size required, tags, and flags, as follows:

slices: n = offset, size [, flags, tags] 

where n is the slice number, offset is the byte offset at which the slice n starts, and size is the required size for slice n. Both offset and size must be a multiple of 512 bytes. These numbers can be represented as decimal, hexadecimal, or octal numbers. No floating point numbers are accepted.

To specify the size or offset in kilobytes, megabytes, or gigabytes, add KB, MB, GB, respectively. A number without a suffix is assumed to be a byte offset. The flags are represented as follows:

wm = read-write, mountable
wu = read-write, unmountable
ru = read-only, unmountable

The tags are represented as follows: unassigned, boot, root, swap, usr, backup, stand, var, home, alternates.

The tags and flags can be omitted from the four tuple when finer control on those values is not required. It is required to omit both or include both. If the tags and flags are omitted from the four tuple for a particular slice, a default value for each is assumed. The default value for flags is wm and for tags is unassigned.

Either full tag names can be provided or an abbreviation for the tags can be used. The abbreviations can be the first two or more letters from the standard tag names. rmformat is case insensitive in handling the defined tags & flags.

Slice specifications are separated by :

For example:

slices: 0 = 0, 30MB, "wm", "home" : 
        1 = 30MB, 51MB : 
        2 = 0, 100MB, "wm", "backup" :
        6 = 81MB, 19MB

rmformat does the necessary checking to detect any overlapping partitions or illegal requests to addresses beyond the capacity of the media under consideration. There can be only one slice information entry for each slice n. If multiple slice information entries for the same slice n are provided, an appropriate error message is displayed. The slice 2 is the backup slice covering the whole disk capacity. The pound sign character, #, can be used to describe a line of comments in the input file. If the line starts with #, then rmformat ignores all the characters following # until the end of the line.

Partitioning some of the media with very small capacity is permitted, but be cautious in using this option on such devices.


Performs umount on any file systems and then formats. See mount(8). This option unmounts all the mounted slices and issues a long format on the device requested.

–V read | write

Verifies each block of media after format. The write verification is a destructive mechanism. The user is queried for confirmation before the verification is started. The output of this option is a list of block numbers, which are identified as bad.

The read verification only verifies the blocks and report the blocks which are prone to errors.

The list of block numbers displayed can be used with the –c option for repairing.


The following operand is supported:


devname can be provided as absolute device pathname or relative pathname for the device from the current working directory or the nickname, such as cdrom or rmdisk.

For systems without volume management running, the user can also provide the absolute device pathname as /dev/rdsk/c?t?d?s? or the appropriate relative device pathname from the current working directory.


Example 1 Formatting Removable Media for a PCFS File System

The following example shows how to create an alternate fdisk partition:

example$ rmformat -F quick /dev/rdsk/c0t4d0s2:c
Formatting will erase all the data on disk.
Do you want to continue? (y/n)y
example$ su
# fdisk /dev/rdsk/c0t4d0s2:c
# mkfs -F pcfs /dev/rdsk/c0t4d0s2:c
Construct a new FAT file system on /dev/rdsk/c0t4d0s2:c: (y/n)? y



Directory providing symbolic links to the character devices for the different media under the control of volume management using appropriate alias.


Directory providing block device access for the PCMCIA memory and ata cards and removable media devices.


Directory providing character device access for the PCMCIA memory and ata cards and removable media devices.


Symbolic link to the character device for the PCMCIA memory card in socket S, where S represents a PCMCIA socket number.


Symbolic link to the generic removable media device that is not a CD-ROM, DVD-ROM, PCMCIA memory card, and so forth.


Directory providing character device access for the PCMCIA memory and ata cards and other removable devices.


Directory providing block device access for the PCMCIA memory and ata cards and other removable media devices.


See attributes(7) for descriptions of the following attributes:


See Also

cpio(1), eject(1), tar(1), volcheck(1), volrmmount(1), scsa2usb(4D), sd(4D), pcfs(4FS), udfs(4FS), attributes(7), format(8), mkfs_pcfs(8), mount(8), newfs(8), prtvtoc(8), rmmount(8), rpc.smserverd(8)


A rewritable media or PCMCIA memory card or PCMCIA ata card containing a ufs file system created on a SPARC-based system (using newfs(8)) is not identical to a rewritable media or PCMCIA memory card containing a ufs file system created on an x86 based system. Do not interchange any removable media containing ufs between these platforms; use cpio(1) or tar(1) to transfer files on memory cards between them. For interchangeable filesystems refer to pcfs(4FS) and udfs(4FS).

rmformat might not list all removable devices in virtualization environments.


Currently, bad sector mapping is not supported on PCMCIA memory cards. Therefore, memory card is unusable if rmformat finds an error (bad sector).