1 .\" Copyright (c) 1998 Robert Nordier
2 .\" All rights reserved.
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\" notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\" notice, this list of conditions and the following disclaimer in
11 .\" the documentation and/or other materials provided with the
14 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS
15 .\" OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
16 .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY
18 .\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
20 .\" GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
21 .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
22 .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
23 .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
24 .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 .Nd construct a new MS-DOS (FAT) file system
42 .Op Fl S Ar sector-size
44 .Op Fl b Ar block-size
45 .Op Fl c Ar cluster-size
56 .Op Fl u Ar track-size
62 utility creates a FAT12, FAT16, or FAT32 file system on device
68 to determine geometry, if required.
70 The options are as follow:
71 .Bl -tag -width indent
73 Do not create a file system: just print out parameters.
75 Get bootstrap from file.
77 FAT type (one of 12, 16, or 32).
81 Volume label (up to 11 characters).
82 The label should consist of
83 only those characters permitted in regular DOS (8+3) filenames.
85 OEM string (up to 8 characters).
88 .It Fl S Ar sector-size
89 Number of bytes per sector.
90 Acceptable values are powers of 2
91 in the range 128 through 32768.
93 Number of sectors per FAT.
94 .It Fl b Ar block-size
95 File system block size (bytes per cluster).
96 This should resolve to an
97 acceptable number of sectors per cluster (see below).
98 .It Fl c Ar cluster-size
100 Acceptable values are powers of 2 in the range
103 Number of root directory entries (FAT12 and FAT16 only).
105 Specify a standard (floppy disk) format.
107 are (capacities in kilobytes): 160, 180, 320, 360, 640, 720, 1200,
110 Number of drive heads.
112 Location of the file system info sector (FAT32 only).
113 A value of 0xffff signifies no info sector.
115 Location of the backup boot sector (FAT32 only).
117 of 0xffff signifies no backup sector.
119 Media descriptor (acceptable range 0xf0 to 0xff).
122 Acceptable values are 1 to 16 inclusive.
126 Number of hidden sectors.
128 Number of reserved sectors.
131 .It Fl u Ar track-size
132 Number of sectors per track.
135 FAT file system parameters occupy a "Boot Sector BPB (BIOS Parameter
136 Block)" in the first of the "reserved" sectors which precede the actual
138 For reference purposes, this structure is presented
142 u_int16_t bps; /* [-S] bytes per sector */
143 u_int8_t spc; /* [-c] sectors per cluster */
144 u_int16_t res; /* [-r] reserved sectors */
145 u_int8_t nft; /* [-n] number of FATs */
146 u_int16_t rde; /* [-e] root directory entries */
147 u_int16_t sec; /* [-s] total sectors */
148 u_int8_t mid; /* [-m] media descriptor */
149 u_int16_t spf; /* [-a] sectors per FAT */
150 u_int16_t spt; /* [-u] sectors per track */
151 u_int16_t hds; /* [-h] drive heads */
152 u_int32_t hid; /* [-o] hidden sectors */
153 u_int32_t bsec; /* [-s] big total sectors */
155 /* FAT32 extensions */
157 u_int32_t bspf; /* [-a] big sectors per FAT */
158 u_int16_t xflg; /* control flags */
159 u_int16_t vers; /* file system version */
160 u_int32_t rdcl; /* root directory start cluster */
161 u_int16_t infs; /* [-i] file system info sector */
162 u_int16_t bkbs; /* [-k] backup boot sector */
166 Exit status is 0 on success and 1 on error.
168 .Bd -literal -offset indent
169 newfs_msdos /dev/ad0s1
172 Create a file system, using default parameters, on
174 .Bd -literal -offset indent
175 newfs_msdos -f 1440 -L foo fd0
178 Create a standard 1.44M file system, with volume label
190 utility first appeared in
193 .An Robert Nordier Aq rnordier@FreeBSD.org .