xref: /freebsd/sbin/newfs/newfs.8 (revision 7aa383846770374466b1dcb2cefd71bde9acf463)
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.\" 4. Neither the name of the University nor the names of its contributors
13.\"    may be used to endorse or promote products derived from this software
14.\"    without specific prior written permission.
15.\"
16.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26.\" SUCH DAMAGE.
27.\"
28.\"     @(#)newfs.8	8.6 (Berkeley) 5/3/95
29.\" $FreeBSD$
30.\"
31.Dd March 21, 2008
32.Dt NEWFS 8
33.Os
34.Sh NAME
35.Nm newfs
36.Nd construct a new UFS1/UFS2 file system
37.Sh SYNOPSIS
38.Nm
39.Op Fl EJNUln
40.Op Fl L Ar volname
41.Op Fl O Ar filesystem-type
42.Op Fl S Ar sector-size
43.Op Fl T Ar disktype
44.Op Fl a Ar maxcontig
45.Op Fl b Ar block-size
46.Op Fl c Ar blocks-per-cylinder-group
47.Op Fl d Ar max-extent-size
48.Op Fl e Ar maxbpg
49.Op Fl f Ar frag-size
50.Op Fl g Ar avgfilesize
51.Op Fl h Ar avgfpdir
52.Op Fl i Ar bytes
53.Op Fl m Ar free-space
54.Op Fl o Ar optimization
55.Op Fl p Ar partition
56.Op Fl r Ar reserved
57.Op Fl s Ar size
58.Ar special
59.Sh DESCRIPTION
60The
61.Nm
62utility is used to initialize and clear file systems before first use.
63The
64.Nm
65utility builds a file system on the specified special file.
66(We often refer to the
67.Dq special file
68as the
69.Dq disk ,
70although the special file need not be a physical disk.
71In fact, it need not even be special.)
72Typically the defaults are reasonable, however
73.Nm
74has numerous options to allow the defaults to be selectively overridden.
75.Pp
76The following options define the general layout policies:
77.Bl -tag -width indent
78.It Fl E
79Erase the content of the disk before making the filesystem.
80The reserved area in front of the superblock (for bootcode) will not be erased.
81.Pp
82This is a relevant option for flash based storage devices that use
83wear levelling algorithms.
84.Pp
85NB: Erasing may take as long time as writing every sector on the disk.
86.It Fl J
87Enable journaling on the new file system via gjournal.
88See
89.Xr gjournal 8
90for details.
91.It Fl L Ar volname
92Add a volume label to the new file system.
93.It Fl N
94Cause the file system parameters to be printed out
95without really creating the file system.
96.It Fl O Ar filesystem-type
97Use 1 to specify that a UFS1 format file system be built;
98use 2 to specify that a UFS2 format file system be built.
99The default format is UFS2.
100.It Fl T Ar disktype
101For backward compatibility.
102.It Fl U
103Enable soft updates on the new file system.
104.It Fl a Ar maxcontig
105Specify the maximum number of contiguous blocks that will be
106laid out before forcing a rotational delay.
107The default value is 16.
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.
113It must be a power of 2.
114The
115default size is 16384 bytes, and the smallest allowable size is 4096 bytes.
116The optimal block:fragment ratio is 8:1.
117Other ratios are possible, but are not recommended,
118and may produce poor results.
119.It Fl c Ar blocks-per-cylinder-group
120The number of blocks per cylinder group in a file system.
121The default is to compute the maximum allowed by the other parameters.
122This value is
123dependent on a number of other parameters, in particular the block size
124and the number of bytes per inode.
125.It Fl d Ar max-extent-size
126The file system may choose to store large files using extents.
127This parameter specifies the largest extent size that may be used.
128It is presently limited to its default value which is 16 times
129the file system blocksize.
130.It Fl e Ar maxbpg
131Indicate the maximum number of blocks any single file can
132allocate out of a cylinder group before it is forced to begin
133allocating blocks from another cylinder group.
134The default is about one quarter of the total blocks in a cylinder group.
135See
136.Xr tunefs 8
137for more details on how to set this option.
138.It Fl f Ar frag-size
139The fragment size of the file system in bytes.
140It must be a power of two
141ranging in value between
142.Ar blocksize Ns /8
143and
144.Ar blocksize .
145The default is 2048 bytes.
146.It Fl g Ar avgfilesize
147The expected average file size for the file system.
148.It Fl h Ar avgfpdir
149The expected average number of files per directory on the file system.
150.It Fl i Ar bytes
151Specify the density of inodes in the file system.
152The default is to create an inode for every
153.Pq 4 * Ar frag-size
154bytes of data space.
155If fewer inodes are desired, a larger number should be used;
156to create more inodes a smaller number should be given.
157One inode is required for each distinct file, so this value effectively
158specifies the average file size on the file system.
159.It Fl l
160Enable multilabel MAC on the new file system.
161.It Fl m Ar free-space
162The percentage of space reserved from normal users; the minimum free
163space threshold.
164The default value used is
165defined by
166.Dv MINFREE
167from
168.In ufs/ffs/fs.h ,
169currently 8%.
170See
171.Xr tunefs 8
172for more details on how to set this option.
173.It Fl n
174Do not create a
175.Pa .snap
176directory on the new file system.
177The resulting file system will not support snapshot generation, so
178.Xr dump 8
179in live mode and background
180.Xr fsck 8
181will not function properly.
182The traditional
183.Xr fsck 8
184and offline
185.Xr dump 8
186will work on the file system.
187This option is intended primarily for memory or vnode-backed file systems that
188do not require
189.Xr dump 8
190or
191.Xr fsck 8
192support.
193.It Fl o Ar optimization
194.Cm ( space
195or
196.Cm time ) .
197The file system can either be instructed to try to minimize the time spent
198allocating blocks, or to try to minimize the space fragmentation on the disk.
199If the value of minfree (see above) is less than 8%,
200the default is to optimize for
201.Cm space ;
202if the value of minfree is greater than or equal to 8%,
203the default is to optimize for
204.Cm time .
205See
206.Xr tunefs 8
207for more details on how to set this option.
208.It Fl p Ar partition
209The partition name (a..h) you want to use in case the underlying image
210is a file, so you don't have access to individual partitions through the
211filesystem.
212Can also be used with a device, e.g.
213.Nm
214.Fl p Ar f
215.Ar /dev/da1s3
216is equivalent to
217.Nm
218.Ar /dev/da1s3f .
219.It Fl r Ar reserved
220The size, in sectors, of reserved space
221at the end of the partition specified in
222.Ar special .
223This space will not be occupied by the file system;
224it can be used by other consumers such as
225.Xr geom 4 .
226Defaults to 0.
227.It Fl s Ar size
228The size of the file system in sectors.
229This value defaults to the size of the
230raw partition specified in
231.Ar special
232less the
233.Ar reserved
234space at its end (see
235.Fl r ) .
236A
237.Ar size
238of 0 can also be used to choose the default value.
239A valid
240.Ar size
241value cannot be larger than the default one,
242which means that the file system cannot extend into the reserved space.
243.El
244.Pp
245The following options override the standard sizes for the disk geometry.
246Their default values are taken from the disk label.
247Changing these defaults is useful only when using
248.Nm
249to build a file system whose raw image will eventually be used on a
250different type of disk than the one on which it is initially created
251(for example on a write-once disk).
252Note that changing any of these values from their defaults will make
253it impossible for
254.Xr fsck 8
255to find the alternate superblocks if the standard superblock is lost.
256.Bl -tag -width indent
257.It Fl S Ar sector-size
258The size of a sector in bytes (almost never anything but 512).
259.El
260.Sh EXAMPLES
261.Dl newfs /dev/ad3s1a
262.Pp
263Creates a new ufs file system on
264.Pa ad3s1a .
265The
266.Nm
267utility will use a block size of 16384 bytes, a fragment size of 2048 bytes
268and the largest possible number of blocks per cylinders group.
269These values tend to produce better performance for most applications
270than the historical defaults
271(8192 byte block size and 1024 byte fragment size).
272This large fragment size may lead to much wasted space
273on file systems that contain many small files.
274.Sh SEE ALSO
275.Xr fdformat 1 ,
276.Xr geom 4 ,
277.Xr disktab 5 ,
278.Xr fs 5 ,
279.Xr bsdlabel 8 ,
280.Xr camcontrol 8 ,
281.Xr dump 8 ,
282.Xr dumpfs 8 ,
283.Xr fsck 8 ,
284.Xr gjournal 8 ,
285.Xr mount 8 ,
286.Xr tunefs 8 ,
287.Xr gvinum 8
288.Rs
289.%A M. McKusick
290.%A W. Joy
291.%A S. Leffler
292.%A R. Fabry
293.%T A Fast File System for UNIX
294.%J ACM Transactions on Computer Systems 2
295.%V 3
296.%P pp 181-197
297.%D August 1984
298.%O (reprinted in the BSD System Manager's Manual)
299.Re
300.Sh HISTORY
301The
302.Nm
303utility appeared in
304.Bx 4.2 .
305