Merge branch 'vendor/CVS'
[dragonfly.git] / sbin / newfs_hammer / newfs_hammer.8
1 .\" Copyright (c) 2007 The DragonFly Project.  All rights reserved.
2 .\"
3 .\" This code is derived from software contributed to The DragonFly Project
4 .\" by Matthew Dillon <dillon@backplane.com>
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\"
10 .\" 1. Redistributions of source code must retain the above copyright
11 .\"    notice, this list of conditions and the following disclaimer.
12 .\" 2. Redistributions in binary form must reproduce the above copyright
13 .\"    notice, this list of conditions and the following disclaimer in
14 .\"    the documentation and/or other materials provided with the
15 .\"    distribution.
16 .\" 3. Neither the name of The DragonFly Project nor the names of its
17 .\"    contributors may be used to endorse or promote products derived
18 .\"    from this software without specific, prior written permission.
19 .\"
20 .\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 .\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23 .\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
24 .\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25 .\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
26 .\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27 .\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
28 .\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29 .\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
30 .\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 .\" SUCH DAMAGE.
32 .\"
33 .\" $DragonFly: src/sbin/newfs_hammer/newfs_hammer.8,v 1.10 2008/07/27 16:47:19 thomas Exp $
34 .Dd April 10, 2011
35 .Dt NEWFS_HAMMER 8
36 .Os
37 .Sh NAME
38 .Nm newfs_hammer
39 .Nd construct a new HAMMER file system
40 .Sh SYNOPSIS
41 .Nm
42 .Fl L Ar label
43 .Op Fl f
44 .Op Fl b Ar bootsize
45 .Op Fl m Ar savesize
46 .Op Fl u Ar undosize
47 .Op Fl V Ar version
48 .Ar special ...
49 .Sh DESCRIPTION
50 The
51 .Nm
52 utility creates a
53 .Nm HAMMER
54 file system on device(s)
55 .Ar special .
56 If multiple devices are specified a single
57 .Nm HAMMER
58 file system is created
59 which spans all of them.
60 Each
61 .Ar special
62 will constitute a volume which the
63 .Nm HAMMER
64 file system is built on.
65 .Nm HAMMER
66 file systems are sector-size agnostic, however the
67 .Dx
68 implementation requires the sector size to be no larger than 16K.
69 .Nm HAMMER
70 file systems start at a relative offset of 0 and may only be created
71 under out-of-band disk labels
72 .Po
73 .Xr disklabel64 5
74 or
75 .Xr gpt 8
76 labels
77 .Pc ,
78 or in
79 .Xr disklabel32 5
80 partitions which do not overlap the label area (have a starting sector
81 greater than 16).
82 .Pp
83 .Nm HAMMER
84 file systems are designed for large storage systems, up to 1 Exabyte, and
85 will not operate efficiently on small storage systems.
86 The minimum recommended file system size is 50GB.
87 .Nm HAMMER
88 must reserve 500MB to 1GB of its storage for reblocking and UNDO/REDO.
89 In addition,
90 .Nm HAMMER
91 file systems operating normally, with full history
92 retention and daily snapshots, do not immediately reclaim space when
93 files are deleted.
94 A regular system maintenance job runs once a day by
95 .Xr periodic 8
96 to handle reclamation.
97 .Pp
98 .Nm HAMMER
99 works best when the machine's normal workload would not otherwise fill
100 the file system up in the course of 60 days of operation.
101 .Pp
102 The options are as follows:
103 .Bl -tag -width indent
104 .It Fl L Ar label
105 All
106 .Nm HAMMER
107 file systems must be named and names should be unique on a
108 per-machine basis.
109 .It Fl b Ar bootsize
110 Specify a fixed area in which a boot related kernel and data can be stored.
111 The
112 .Ar bootsize
113 is specified in bytes.
114 By default a boot area of approximately 4MB will be created.
115 .It Fl f
116 Force operation.
117 This is needed for the creation of a
118 .Nm HAMMER
119 file system less than 10GB size or
120 with less than 500MB UNDO/REDO FIFO.
121 This should not be used under normal circumstances.
122 .It Fl m Ar savesize
123 Specify a fixed area which
124 .Nm HAMMER
125 may use as a memory log.
126 This area is currently unused.
127 The
128 .Ar savesize
129 is specified in bytes.
130 .It Fl u Ar undosize
131 Specify the size of the fixed UNDO/REDO FIFO.
132 The
133 .Ar undosize
134 is specified in bytes.
135 By default 0.1% of the root
136 volume's size is used, with a reasonable minimum and a reasonable cap.
137 The UNDO/REDO FIFO is used to sequence meta-data out to the media for
138 instant crash recovery.
139 .It Fl V Ar version
140 Specify the
141 .Nm HAMMER
142 file system version to format.
143 By default
144 .Nm
145 formats the file system using the highest production version number
146 supported by the
147 .Nm HAMMER
148 VFS by checking the
149 .Va vfs.hammer.supported_version
150 sysctl.
151 If you need to maintain compatibility with an older version of
152 .Nm HAMMER
153 you may specify the version with this option.
154 .El
155 .Pp
156 The
157 .Ar bootsize ,
158 .Ar savesize
159 and
160 .Ar undosize
161 must be given with a suffix of
162 .Cm K , M , G
163 or
164 .Cm T
165 meaning kilobyte, megabyte, gigabyte and terabyte.
166 Lower case can also be used for suffix.
167 .Sh EXAMPLES
168 .Bd -literal -offset indent
169 newfs_hammer -L Home /dev/ad0s1d
170 .Ed
171 .Pp
172 Create a file system named
173 .Sq Home
174 on
175 .Pa /dev/ad0s1d .
176 .Sh DIAGNOSTICS
177 Exit status is 0 on success and 1 on error.
178 .Sh SEE ALSO
179 .Xr disklabel32 5 ,
180 .Xr disklabel64 5 ,
181 .Xr HAMMER 5 ,
182 .Xr fdisk 8 ,
183 .Xr gpt 8 ,
184 .Xr newfs 8
185 .Sh HISTORY
186 The
187 .Nm
188 utility first appeared in
189 .Dx 1.11 .
190 .Sh AUTHORS
191 .An Matthew Dillon Aq dillon@backplane.com