xref: /freebsd/sbin/newfs/newfs.8 (revision 6990ffd8a95caaba6858ad44ff1b3157d1efba8f)
1.\" Copyright (c) 1983, 1987, 1991, 1993, 1994
2.\"	The Regents of the University of California.  All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
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 the
11.\"    documentation and/or other materials provided with the distribution.
12.\" 3. All advertising materials mentioning features or use of this software
13.\"    must display the following acknowledgement:
14.\"	This product includes software developed by the University of
15.\"	California, Berkeley and its contributors.
16.\" 4. Neither the name of the University nor the names of its contributors
17.\"    may be used to endorse or promote products derived from this software
18.\"    without specific prior written permission.
19.\"
20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30.\" SUCH DAMAGE.
31.\"
32.\"     @(#)newfs.8	8.6 (Berkeley) 5/3/95
33.\" $FreeBSD$
34.\"
35.Dd May 29, 2001
36.Dt NEWFS 8
37.Os
38.Sh NAME
39.Nm newfs ,
40.Nd construct a new file system
41.Sh SYNOPSIS
42.Nm
43.Op Fl NOU
44.Op Fl S Ar sector-size
45.Op Fl T Ar disktype
46.Op Fl a Ar maxcontig
47.Op Fl b Ar block-size
48.Op Fl c Ar cylinders
49.Op Fl d Ar rotdelay
50.Op Fl e Ar maxbpg
51.Op Fl f Ar frag-size
52.Op Fl g Ar avgfilesize
53.Op Fl h Ar avfpdir
54.Op Fl i Ar bytes
55.Op Fl k Ar skew
56.Op Fl l Ar interleave
57.Op Fl m Ar free space
58.Op Fl n Ar rotational positions
59.Op Fl o Ar optimization
60.Op Fl p Ar sectors
61.Op Fl r Ar revolutions
62.Op Fl s Ar size
63.Op Fl t Ar tracks
64.Op Fl u Ar sectors
65.Op Fl v
66.Op Fl x Ar sectors
67.Ar special
68.Sh DESCRIPTION
69.Nm Newfs
70is used to initialize and clear filesystems before first use.
71Before running
72.Nm
73the disk must be labeled using
74.Xr disklabel 8 .
75.Nm Newfs
76builds a file system on the specified special file.
77(We often refer to the
78.Dq special file
79as the
80.Dq disk ,
81although the special file need not be a physical disk.
82In fact, it need not even be special.)
83Typically the defaults are reasonable, however
84.Nm
85has numerous options to allow the defaults to be selectively overridden.
86.Pp
87The following options define the general layout policies:
88.Bl -tag -width indent
89.It Fl T Ar disktype
90For backward compatibility.
91.It Fl N
92Cause the file system parameters to be printed out
93without really creating the file system.
94.It Fl O
95Create a
96.Bx 4.3
97format filesystem.
98This options is primarily used to build root filesystems
99that can be understood by older boot ROMs.
100.It Fl U
101Enables soft updates on the new filesystem.
102.It Fl a Ar maxcontig
103Specify the maximum number of contiguous blocks that will be
104laid out before forcing a rotational delay (see the
105.Fl d
106option).
107The default value is 1.
108See
109.Xr tunefs 8
110for more details on how to set this option.
111.It Fl b Ar block-size
112The block size of the file system, in bytes.  It must be a power of 2.  The
113default size is 8192 bytes, and the smallest allowable size is 4096 bytes.
114.It Fl c Ar #cylinders/group
115The number of cylinders per cylinder group in a file system.  The default value
116is 22.  The maximum value is dependent on a number of other parameters, in
117particular the block size.  The best way to find the maximum value for a
118specific file system is to attempt to specify a value which is far too large:
119.Nm
120will print out the maximum value.
121.It Fl d Ar rotdelay
122This parameter once specified the minimum time in milliseconds required to
123initiate another disk transfer on the same cylinder.  It was used in determining
124the rotationally optimal layout for disk blocks within a file.  Modern disks
125with read/write-behind achieve higher performance with this feature disabled, so
126this value should be left at the default value of 0 milliseconds.  See
127.Xr tunefs 8
128for more details on how to set this option.
129.It Fl e Ar maxbpg
130Indicate the maximum number of blocks any single file can
131allocate out of a cylinder group before it is forced to begin
132allocating blocks from another cylinder group.
133The default is about one quarter of the total blocks in a cylinder group.
134See
135.Xr tunefs 8
136for more details on how to set this option.
137.It Fl f Ar frag-size
138The fragment size of the file system in bytes.  It must be a power of two
139ranging in value between
140.Ar blocksize Ns /8
141and
142.Ar blocksize .
143The default is 1024 bytes.
144.It Fl g Ar avgfilesize
145The expected average file size for the file system.
146.It Fl h Ar avgfpdir
147The expected average number of files per directory on the file system.
148.It Fl i Ar number of bytes per inode
149Specify the density of inodes in the file system.
150The default is to create an inode for every
151.Pq 4 * Ar frag-size
152bytes of data space.
153If fewer inodes are desired, a larger number should be used;
154to create more inodes a smaller number should be given.
155One inode is required for each distinct file, so this value effectively
156specifies the average file size on the file system.
157.It Fl m Ar free space \&%
158The percentage of space reserved from normal users; the minimum free
159space threshold.
160The default value used is
161defined by
162.Dv MINFREE
163from
164.Aq Pa ufs/ffs/fs.h ,
165currently 8%.
166See
167.Xr tunefs 8
168for more details on how to set this option.
169.It Fl n Ar number of distinguished rotational positions
170UFS has the ability to keep track of the availability of blocks at different
171rotational positions, so that it could lay out the data to be picked up with
172minimum rotational latency.  This parameter specifies the default number of
173rotational positions to distinguish.
174.Pp
175Nowadays this value should be set to 1 (which essentially disables the
176rotational position table) because modern drives with read-ahead and
177write-behind do better without the rotational position table.
178.It Fl o Ar optimization\ preference
179.Pq Ar space No or Ar time .
180The file system can either be instructed to try to minimize the time spent
181allocating blocks, or to try to minimize the space fragmentation on the disk.
182If the value of minfree (see above) is less than 8%,
183the default is to optimize for
184.Ar space ;
185if the value of minfree is greater than or equal to 8%,
186the default is to optimize for
187.Ar time .
188See
189.Xr tunefs 8
190for more details on how to set this option.
191.It Fl s Ar size
192The size of the file system in sectors.  This value defaults to the size of the
193raw partition specified in
194.Ar special
195(in other words,
196.Nm
197will use the entire partition for the file system).
198.It Fl v
199Specify that the disk does not contain any partitions, and that
200.Nm
201should build a file system on the whole disk.
202This option is useful for synthetic disks such as
203.Nm vinum .
204.El
205.Pp
206The following options override the standard sizes for the disk geometry.
207Their default values are taken from the disk label.
208Changing these defaults is useful only when using
209.Nm
210to build a file system whose raw image will eventually be used on a
211different type of disk than the one on which it is initially created
212(for example on a write-once disk).
213Note that changing any of these values from their defaults will make
214it impossible for
215.Xr fsck 8
216to find the alternate superblocks if the standard superblock is lost.
217.Bl -tag -width indent
218.It Fl S Ar sector-size
219The size of a sector in bytes (almost never anything but 512).
220.It Fl k Ar sector \&0 skew , per track
221Used to describe perturbations in the media format to compensate for
222a slow controller.
223Track skew is the offset of sector 0 on track N relative to sector 0
224on track N-1 on the same cylinder.
225This option is of historical importance only; modern controllers are always fast
226enough to handle operations back-to-back.
227.It Fl l Ar hardware sector interleave
228Used to describe perturbations in the media format to compensate for
229a slow controller.
230Interleave is physical sector interleave on each track,
231specified as the denominator of the ratio:
232.Dl sectors read/sectors passed over
233Thus an interleave of 1/1 implies contiguous layout, while 1/2 implies
234logical sector 0 is separated by one sector from logical sector 1.
235This option is of historical importance only; the physical sector layout of
236modern disks is not visible from outside.
237.It Fl p Ar spare sectors per track
238Spare sectors (bad sector replacements) are physical sectors that occupy
239space at the end of each track.
240They are not counted as part of the sectors/track
241.Pq Fl u
242since they are not available to the file system for data allocation.
243This option is of historical importance only.  Modern disks perform their own
244bad sector allocation.
245.It Fl r Ar revolutions/minute
246The speed of the disk in revolutions per minute.  This value is no longer of
247interest, since all the parameters which depend on it are usually disabled.
248.It Fl t Ar #tracks/cylinder
249The number of tracks/cylinder available for data allocation by the file
250system.
251The default is 1.
252If zero is specified, the value from the disklabel will be used.
253.It Fl u Ar sectors/track
254The number of sectors per track available for data allocation by the file
255system.
256The default is 4096.
257If zero is specified, the value from the disklabel will be used.
258This does not include sectors reserved at the end of each track for bad
259block replacement (see the
260.Fl p
261option).
262.It Fl x Ar spare sectors per cylinder
263Spare sectors (bad sector replacements) are physical sectors that occupy
264space at the end of the last track in the cylinder.
265They are deducted from the sectors/track
266.Pq Fl u
267of the last track of each cylinder since they are not available to the file
268system for data allocation.
269This option is of historical importance only.  Modern disks perform their own
270bad sector allocation.
271.El
272.Sh EXAMPLES
273.Dl newfs -b 16384 -f 4096 -c 100 /dev/ad3s1a
274.Pp
275Creates a new ufs file system on
276.Pa ad3s1a .
277.Nm
278will use a block size of 16384 bytes, a fragement size of 4096 bytes
279and have 100 cylinders per cylinder group rather than the defaults.
280These values are tend to produce better performance than the defaults
281for file systems larger than about 5 gigabytes.
282.Sh SEE ALSO
283.Xr fdformat 1 ,
284.Xr disktab 5 ,
285.Xr fs 5 ,
286.Xr camcontrol 8 ,
287.Xr disklabel 8 ,
288.Xr diskpart 8 ,
289.Xr dumpfs 8 ,
290.Xr fsck 8 ,
291.Xr mount 8 ,
292.Xr tunefs 8 ,
293.Xr vinum 8
294.Rs
295.%A M. McKusick
296.%A W. Joy
297.%A S. Leffler
298.%A R. Fabry
299.%T A Fast File System for UNIX
300.%J ACM Transactions on Computer Systems 2
301.%V 3
302.%P pp 181-197
303.%D August 1984
304.%O (reprinted in the BSD System Manager's Manual)
305.Re
306.Sh HISTORY
307The
308.Nm
309command appeared in
310.Bx 4.2 .
311