2 .\" Copyright (c) 2001 Dima Dorfman.
3 .\" All rights reserved.
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted provided that the following conditions
8 .\" 1. Redistributions of source code must retain the above copyright
9 .\" notice, this list of conditions and the following disclaimer.
10 .\" 2. Redistributions in binary form must reproduce the above copyright
11 .\" notice, this list of conditions and the following disclaimer in the
12 .\" documentation and/or other materials provided with the distribution.
14 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 .Nd configure and mount an in-memory file system using the
43 .Op Fl b Ar block-size
44 .Op Fl c Ar blocks-per-cylinder-group
45 .Op Fl d Ar max-extent-size
46 .Op Fl E Ar path-mdconfig
51 .Op Fl m Ar percent-free
52 .Op Fl O Ar optimization
53 .Op Fl o Ar mount-options
54 .Op Fl p Ar permissions
58 .Op Fl w Ar user : Ns Ar group
64 utility is designed to be a work-alike and look-alike of the deprecated
66 The end result is essentially the same,
67 but is accomplished in a completely different way.
72 utility either creates a
74 filesystem, or it configures an
78 puts a UFS file system on it (unless
86 compressed disk images, as long as the kernel supports this GEOM class.
87 All the command line options are passed to the appropriate program
88 at the appropriate stage in order to achieve the desired effect.
96 if it is present in the kernel or can be loaded as a module,
97 otherwise it falls back to using
99 auto-unit as if `md' had been specified.
107 filesystem, translating the
109 size option, if present, into a `-o size=' mount option.
112 options on the command line are passed through to the
127 device is configured instead.
132 disk with soft-updates enabled
146 auto-unit feature to automatically select an unused device.
147 Unless otherwise specified with one of the options below,
148 it uses the default arguments to all the helper programs.
150 The following options are available.
152 the option letter matches the one used by
155 .Bl -tag -width indent
156 .It Fl a Ar maxcontig
157 Specify the maximum number of contiguous blocks that will be laid
158 out before forcing a rotational delay
162 .It Fl b Ar block-size
163 The block size of the file system, in bytes.
164 .It Fl c Ar blocks-per-cylinder-group
165 The number of blocks per cylinder group in the file system.
167 If not using auto-unit,
170 to try to detach the unit before attaching it.
171 .It Fl d Ar max-extent-size
172 The file system may choose to store large files using extents.
173 This parameter specifies the largest extent size that may be
175 It is presently limited to its default value which is 16
176 times the file system blocksize.
177 .It Fl E Ar path-mdconfig
184 Indicate the maximum number of blocks any single file can allocate
185 out of a cylinder group before it is forced to begin allocating
186 blocks from another cylinder group.
188 Create a vnode-backed
190 memory disk backed by
192 .It Fl f Ar frag-size
193 The fragment size of the file system in bytes.
195 Number of bytes per inode.
197 Enable multilabel MAC on the new file system.
199 Show the output of the helper programs.
208 instead of a swap-backed disk.
209 .It Fl m Ar percent-free
210 The percentage of space reserved for the superuser.
212 Do not actually run the helper programs.
213 This is most useful in conjunction with
218 directory on the new file system.
219 .It Fl O Ar optimization
220 Select the optimization preference;
225 which will optimize for minimum space fragmentation and
226 minimum time spent allocating blocks,
228 .It Fl o Ar mount-options
229 Specify the mount options with which to mount the file system.
232 for more information.
234 Preserve the existing file system;
237 This only makes sense if
239 is specified to create a vnode-backed disk.
240 .It Fl p Ar permissions
241 Set the file (directory) permissions of the mount point
247 argument can be in any of the mode formats recognized by
249 If symbolic permissions are specified,
250 the operation characters
254 are interpreted relative to the initial permissions of
257 Do not enable soft-updates on the file system.
259 Specify the size of the disk to create.
260 This only makes sense if
266 this will work when the backing storage is some form of
267 memory, as opposed to a fixed-size file.
268 The size may include the usual SI suffixes (k, m, g, t, p).
269 A number without a suffix is interpreted as a count of 512-byte sectors.
271 Turn on the TRIM enable flag for
273 When used with a file system that issue BIO_DELETE bio requests,
275 returns deleted blocks to the system memory pool.
277 Specify a file system type for a vnode-backed memory disk.
278 Any file system supported by
280 command can be specified.
281 This option only makes sense when
287 Enable soft-updates on the file system.
288 This is the default, and is accepted only
290 It is only really useful to negate the
292 flag, should such a need occur.
294 Specify the UFS version number for use on the file system; it may be
299 The default is derived from the default of the
302 .It Fl w Ar user : Ns Ar group
303 Set the owner and group to
308 The arguments have the same semantics as with
310 but specifying just a
316 Print what command will be run before running it, and
317 other assorted debugging information.
324 options are passed to
332 .Fl a , b , c , d , e , f , i , m
335 options are passed to
337 with the same letter.
348 with the same letter.
355 For information on semantics, refer to the documentation of the programs
356 that the options are passed to.
358 Create and mount a 32 megabyte swap-backed file system on
361 .Dl "mdmfs -s 32m md /tmp"
363 The same file system created as an entry in
366 .Dl "md /tmp mfs rw,-s32m 2 0"
368 Create and mount a 16 megabyte malloc-backed file system on
374 do not use soft-updates on it and mount it
377 .Dl "mdmfs -M -S -o async -s 16m md1 /tmp"
381 based compressed disk image:
383 .Dl "mdmfs -P -F foo.uzip -oro md.uzip /tmp/"
385 Mount the same image, specifying the
389 .Dl "mdmfs -P -F foo.uzip -oro md1.uzip /tmp/"
391 Configure a vnode-backed file system and mount its first partition,
392 using automatic device numbering:
394 .Dl "mdmfs -P -F foo.img mds1a /tmp/"
396 Mount a vnode-backed cd9660 file system using automatic device numbering:
398 .Dl "mdmfs -T cd9660 -P -F foo.iso md /tmp"
402 utility, while designed to be compatible with
404 can be useful by itself.
407 had some silly defaults, a
409 mode is provided for the case where bug-to-bug compatibility is desired.
411 Compatibility is enabled by starting
418 .Xr getprogname 3 ) .
419 In this mode, the following behavior, as done by
422 .Bl -bullet -offset indent
430 was given on the command line.