NEWFS_MSDOS(8) BSD System Manager's Manual NEWFS_MSDOS(8)NAMEnewfs_msdos - construct a new MS-DOS (FAT) file system
SYNOPSISnewfs_msdos [-N] [-B boot] [-F FAT-type] [-I volid] [-L label] [-O OEM]
[-S sector-size] [-a FAT-size] [-b block-size] [-c cluster-
size] [-e dirents] [-f format] [-h heads] [-i info]
[-k backup] [-m media] [-n FATs] [-o hidden] [-r reserved]
[-s total] [-u track-size] special [disktype]
DESCRIPTION
The newfs_msdos utility creates a FAT12, FAT16, or FAT32 file system on
device special, using disktab(5) entry disktype to determine geometry, if
required.
The options are as follows:
-N Don't create a file system: just print out parameters.
-B boot
Get bootstrap from file.
-F FAT-type
FAT type (one of 12, 16, or 32).
-I volid
Volume ID.
-L label
Volume label (up to 11 characters). The label should consist of
only those characters permitted in regular DOS (8+3) filenames.
-O OEM OEM string (up to 8 characters). The default is "BSD 4.4".
-S sector-size
Number of bytes per sector. Acceptable values are powers of 2 in
the range 128 through 32768. Conformant values are 512, 1024,
2048 and 4096; only 512 is portable.
-a FAT-size
Number of sectors per FAT.
-b block-size
File system block size (bytes per cluster). This should resolve
to an acceptable number of sectors per cluster (see below). Con-
formant values are powers of 2 no larger than 32768.
-c cluster-size
Sectors per cluster. Acceptable values are powers of 2 in the
range 1 through 128. Conformant values are 1, 2, 4, 8, 16, 32, 64
for 512-byte sectors.
-e dirents
Number of root directory entries (FAT12 and FAT16 only).
-f format
Specify a standard (floppy disk) format. The eight standard for-
mats are (capacities in Kibibytes): 160, 180, 320, 360, 720,
1200, 1440, 2880.
-h heads
Number of drive heads.
-i info
Location of the file system info sector (FAT32 only). A value of
0xffff signifies no info sector.
-k backup
Location of the backup boot sector (FAT32 only). A value of
0xffff signifies no backup sector.
-m media
Media descriptor (acceptable range 0xf0 to 0xff).
-n FATs
Number of FATs. Acceptable values are 1 to 16 inclusive. The de-
fault is 2.
-o hidden
Number of hidden sectors.
-r reserved
Number of reserved sectors.
-s total
File system size.
-u track-size
Number of sectors per track.
NOTES
FAT file system parameters occupy a "Boot Sector BPB (BIOS Parameter
Block)" in the first of the "reserved" sectors which precede the actual
file system. For reference purposes, this structure is presented below.
struct bsbpb {
u_int16_t bps; /* [-S] bytes per sector */
u_int8_t spc; /* [-c] sectors per cluster */
u_int16_t res; /* [-r] reserved sectors */
u_int8_t nft; /* [-n] number of FATs */
u_int16_t rde; /* [-e] root directory entries */
u_int16_t sec; /* [-s] total sectors */
u_int8_t mid; /* [-m] media descriptor */
u_int16_t spf; /* [-a] sectors per FAT */
u_int16_t spt; /* [-u] sectors per track */
u_int16_t hds; /* [-h] drive heads */
u_int32_t hid; /* [-o] hidden sectors */
u_int32_t bsec; /* [-s] big total sectors */
};
/* FAT32 extensions */
struct bsxbpb {
u_int32_t bspf; /* [-a] big sectors per FAT */
u_int16_t xflg; /* control flags */
u_int16_t vers; /* file system version */
u_int32_t rdcl; /* root directory start cluster */
u_int16_t infs; /* [-i] file system info sector */
u_int16_t bkbs; /* [-k] backup boot sector */
};
EXAMPLES
Create a file system, using default parameters, on /dev/rwd0i.
newfs_msdos /dev/rwd0i
Create a standard 1.44M file system, with volume label "foo", on
/dev/rfd0c.
newfs_msdos-f 1440 -L foo fd0c
DIAGNOSTICS
Exit status is 0 on success and 1 on error.
SEE ALSOdisktab(5), disklabel(8), fdisk(8), newfs(8)HISTORY
The newfs_msdos command first appeared in OpenBSD 2.1.
AUTHORS
Robert Nordier <rnordier@FreeBSD.org>.
BUGSnewfs_msdos will happily create a non-conformant filesystem, for example
a 2 GiB FAT16 filesystem with 65536 bytes per cluster, which cannot be
read on most systems.
MirOS BSD #10-current January 4, 2011 2