xref: /freebsd/sbin/mdmfs/mdmfs.8 (revision d04b5dfe6cb5c950c97bcc0c5742c01d1d8d33f9)
14d7de91fSDima Dorfman.\"
2d69f5deeSDima Dorfman.\" Copyright (c) 2001 Dima Dorfman.
34d7de91fSDima Dorfman.\" All rights reserved.
44d7de91fSDima Dorfman.\"
54d7de91fSDima Dorfman.\" Redistribution and use in source and binary forms, with or without
64d7de91fSDima Dorfman.\" modification, are permitted provided that the following conditions
74d7de91fSDima Dorfman.\" are met:
84d7de91fSDima Dorfman.\" 1. Redistributions of source code must retain the above copyright
94d7de91fSDima Dorfman.\"    notice, this list of conditions and the following disclaimer.
104d7de91fSDima Dorfman.\" 2. Redistributions in binary form must reproduce the above copyright
114d7de91fSDima Dorfman.\"    notice, this list of conditions and the following disclaimer in the
124d7de91fSDima Dorfman.\"    documentation and/or other materials provided with the distribution.
134d7de91fSDima Dorfman.\"
144d7de91fSDima Dorfman.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
154d7de91fSDima Dorfman.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
164d7de91fSDima Dorfman.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
174d7de91fSDima Dorfman.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
184d7de91fSDima Dorfman.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
194d7de91fSDima Dorfman.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
204d7de91fSDima Dorfman.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
214d7de91fSDima Dorfman.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
224d7de91fSDima Dorfman.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
234d7de91fSDima Dorfman.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
244d7de91fSDima Dorfman.\" SUCH DAMAGE.
254d7de91fSDima Dorfman.\"
264d7de91fSDima Dorfman.\" $FreeBSD$
274d7de91fSDima Dorfman.\"
28d04b5dfeSRuslan Ermilov.Dd February 26, 2004
294d7de91fSDima Dorfman.Dt MDMFS 8
304d7de91fSDima Dorfman.Os
314d7de91fSDima Dorfman.Sh NAME
32f72709f6SDoug Barton.Nm mdmfs ,
33f72709f6SDoug Barton.Nm mount_mfs
344d7de91fSDima Dorfman.Nd configure and mount an in-memory file system using the
354d7de91fSDima Dorfman.Xr md 4
364d7de91fSDima Dorfmandriver
374d7de91fSDima Dorfman.Sh SYNOPSIS
384d7de91fSDima Dorfman.Nm
39d04b5dfeSRuslan Ermilov.Op Fl DLlMNSUX
404d7de91fSDima Dorfman.Op Fl a Ar maxcontig
414d7de91fSDima Dorfman.Op Fl b Ar block-size
424d7de91fSDima Dorfman.Op Fl c Ar cylinders
434d7de91fSDima Dorfman.Op Fl d Ar rotdelay
444d7de91fSDima Dorfman.Op Fl e Ar maxbpg
454d7de91fSDima Dorfman.Op Fl F Ar file
464d7de91fSDima Dorfman.Op Fl f Ar frag-size
474d7de91fSDima Dorfman.Op Fl i Ar bytes
484d7de91fSDima Dorfman.Op Fl m Ar percent-free
494d7de91fSDima Dorfman.Op Fl n Ar rotational-positions
504d7de91fSDima Dorfman.Op Fl O Ar optimization
514d7de91fSDima Dorfman.Op Fl o Ar mount-options
524d7de91fSDima Dorfman.Op Fl p Ar permissions
534d7de91fSDima Dorfman.Op Fl s Ar size
54622448faSRobert Watson.Op Fl v Ar version
559dde6035SDima Dorfman.Op Fl w Ar user : Ns Ar group
564d7de91fSDima Dorfman.Ar md-device
574d7de91fSDima Dorfman.Ar mount-point
58f7acb7e4SDima Dorfman.Nm
59f7acb7e4SDima Dorfman.Fl C
60d04b5dfeSRuslan Ermilov.Op Fl lNU
61f7acb7e4SDima Dorfman.Op Fl a Ar maxcontig
62f7acb7e4SDima Dorfman.Op Fl b Ar block-size
63f7acb7e4SDima Dorfman.Op Fl c Ar cylinders
64f7acb7e4SDima Dorfman.Op Fl d Ar rotdelay
65f7acb7e4SDima Dorfman.Op Fl e Ar maxbpg
66f7acb7e4SDima Dorfman.Op Fl F Ar file
67f7acb7e4SDima Dorfman.Op Fl f Ar frag-size
68f7acb7e4SDima Dorfman.Op Fl i Ar bytes
69f7acb7e4SDima Dorfman.Op Fl m Ar percent-free
70f7acb7e4SDima Dorfman.Op Fl n Ar rotational-positions
71f7acb7e4SDima Dorfman.Op Fl O Ar optimization
72f7acb7e4SDima Dorfman.Op Fl o Ar mount-options
73f7acb7e4SDima Dorfman.Op Fl s Ar size
74622448faSRobert Watson.Op Fl v Ar version
75f7acb7e4SDima Dorfman.Ar md-device
76f7acb7e4SDima Dorfman.Ar mount-point
774d7de91fSDima Dorfman.Sh DESCRIPTION
784d7de91fSDima DorfmanThe
794d7de91fSDima Dorfman.Nm
80e1205e80SPhilippe Charnierutility is designed to be a work-alike and look-alike of the deprecated
814d7de91fSDima Dorfman.Xr mount_mfs 8 .
824d7de91fSDima DorfmanThe end result is essentially the same,
834d7de91fSDima Dorfmanbut is accomplished in a completely different way.
84e1205e80SPhilippe CharnierThe
854d7de91fSDima Dorfman.Nm
86e1205e80SPhilippe Charnierutility configures an
874d7de91fSDima Dorfman.Xr md 4
884d7de91fSDima Dorfmandisk using
894d7de91fSDima Dorfman.Xr mdconfig 8 ,
904d7de91fSDima Dorfmanputs a UFS file system on it using
914d7de91fSDima Dorfman.Xr newfs 8 ,
924d7de91fSDima Dorfmanand mounts it using
934d7de91fSDima Dorfman.Xr mount 8 .
944d7de91fSDima DorfmanAll the command line options are passed to the appropriate program
954d7de91fSDima Dorfmanat the appropriate stage in order to achieve the desired effect.
964d7de91fSDima Dorfman.Pp
974d7de91fSDima DorfmanBy default,
984d7de91fSDima Dorfman.Nm
994d7de91fSDima Dorfmancreates a swap-based
1004d7de91fSDima Dorfman.Pq Dv MD_SWAP
1014d7de91fSDima Dorfmandisk with soft-updates enabled
1024d7de91fSDima Dorfmanand mounts it on
1034d7de91fSDima Dorfman.Ar mount-point .
1044d7de91fSDima DorfmanIt uses the
1054d7de91fSDima Dorfman.Xr md 4
1064d7de91fSDima Dorfmandevice specified by
1074d7de91fSDima Dorfman.Ar md-device .
1084d7de91fSDima DorfmanIf
1094d7de91fSDima Dorfman.Ar md-device
1104d7de91fSDima Dorfmanis
1114d7de91fSDima Dorfman.Ql md
1124d7de91fSDima Dorfman(no unit number),
1134d7de91fSDima Dorfmanit will use
1144d7de91fSDima Dorfman.Xr md 4 Ns 's
1154d7de91fSDima Dorfmanauto-unit feature to automatically select an unused device.
1164d7de91fSDima DorfmanUnless otherwise specified with one of the options below,
1174d7de91fSDima Dorfmanit uses the default arguments to all the helper programs.
1184d7de91fSDima Dorfman.Pp
1194d7de91fSDima DorfmanThe following options are available.
1204d7de91fSDima DorfmanWhere possible,
1214d7de91fSDima Dorfmanthe option letter matches the one used by
1224d7de91fSDima Dorfman.Xr mount_mfs 8
1234d7de91fSDima Dorfmanfor the same thing.
1249dde6035SDima Dorfman.Bl -tag -width indent
1254d7de91fSDima Dorfman.It Fl a Ar maxcontig
1264d7de91fSDima DorfmanSpecify the maximum number of contiguous blocks that will be laid
1274d7de91fSDima Dorfmanout before forcing a rotational delay
1284d7de91fSDima Dorfman(see the
1294d7de91fSDima Dorfman.Fl d
1304d7de91fSDima Dorfmanoption).
1314d7de91fSDima Dorfman.It Fl b Ar block-size
1324d7de91fSDima DorfmanThe block size of the file system, in bytes.
133f7acb7e4SDima Dorfman.It Fl C
134f7acb7e4SDima DorfmanEnable full compatibility mode with
135f7acb7e4SDima Dorfman.Xr mount_mfs 8 .
136f7acb7e4SDima DorfmanSee the
1376a68a83eSRuslan Ermilov.Sx COMPATIBILITY
138f7acb7e4SDima Dorfmansection for more information.
1394d7de91fSDima Dorfman.It Fl c Ar cylinders
1404d7de91fSDima DorfmanThe number of cylinders per cylinder group in the file system.
1414d7de91fSDima Dorfman.It Fl D
1424d7de91fSDima DorfmanIf not using auto-unit,
1439dde6035SDima Dorfmando not run
1444d7de91fSDima Dorfman.Xr mdconfig 8
1454d7de91fSDima Dorfmanto try to detach the unit before attaching it.
1464d7de91fSDima Dorfman.It Fl d Ar rotdelay
14757bd0fc6SJens SchweikhardtSpecify the minimum time in milliseconds required to initiate another
1484d7de91fSDima Dorfmandisk transfer on the same cylinder.
1494d7de91fSDima DorfmanModern disks with read/write-behind achieve higher performance without
1504d7de91fSDima Dorfmanthis feature,
1514d7de91fSDima Dorfmanso it is best to leave it at 0 milliseconds.
1524d7de91fSDima Dorfman.It Fl e Ar maxbpg
1534d7de91fSDima DorfmanIndicate the maximum number of blocks any single file can allocate
1544d7de91fSDima Dorfmanout of a cylinder group before it is forced to begin allocating
1554d7de91fSDima Dorfmanblocks from another cylinder group.
1564d7de91fSDima Dorfman.It Fl F Ar file
1574d7de91fSDima DorfmanCreate a vnode-backed
1584d7de91fSDima Dorfman.Pq Dv MD_VNODE
1594d7de91fSDima Dorfmanmemory disk backed by
1604d7de91fSDima Dorfman.Ar file .
1614d7de91fSDima Dorfman.It Fl f Ar frag-size
1624d7de91fSDima DorfmanThe fragment size of the file system in bytes.
1634d7de91fSDima Dorfman.It Fl i Ar bytes
1644d7de91fSDima DorfmanNumber of bytes per inode.
1651d3170aaSRobert Watson.It Fl l
166d04b5dfeSRuslan ErmilovEnable multilabel MAC on the new file system.
1674d7de91fSDima Dorfman.It Fl L
1684d7de91fSDima DorfmanShow the output of the helper programs.
1694d7de91fSDima DorfmanBy default,
1704d7de91fSDima Dorfmanit is sent to
1714d7de91fSDima Dorfman.Pa /dev/null .
1724d7de91fSDima Dorfman.It Fl M
1734d7de91fSDima DorfmanCreate a
1744d7de91fSDima Dorfman.Xr malloc 9
1754d7de91fSDima Dorfmanbacked disk
1764d7de91fSDima Dorfman.Pq Dv MD_MALLOC
1774d7de91fSDima Dorfmaninstead of a swap-backed disk.
1784d7de91fSDima Dorfman.It Fl m Ar percent-free
1794d7de91fSDima DorfmanThe percentage of space reserved for the superuser.
1804d7de91fSDima Dorfman.It Fl N
1819dde6035SDima DorfmanDo not actually run the helper programs.
1824d7de91fSDima DorfmanThis is most useful in conjunction with
1834d7de91fSDima Dorfman.Fl X .
1844d7de91fSDima Dorfman.It Fl n Ar rotational-positions
1854d7de91fSDima DorfmanThe default number of rotational positions to distinguish.
1864d7de91fSDima Dorfman.It Fl O Ar optimization
1874d7de91fSDima DorfmanSelect the optimization preference;
1884d7de91fSDima Dorfmanvalid choices are
1899dde6035SDima Dorfman.Cm space
1904d7de91fSDima Dorfmanand
1919dde6035SDima Dorfman.Cm time ,
1924d7de91fSDima Dorfmanwhich will optimize for minimum space fragmentation and
1934d7de91fSDima Dorfmanminimum time spent allocating blocks,
1944d7de91fSDima Dorfmanrespectively.
1954d7de91fSDima Dorfman.It Fl o Ar mount-options
1964d7de91fSDima DorfmanSpecify the mount options with which to mount the file system.
1974d7de91fSDima DorfmanSee
1984d7de91fSDima Dorfman.Xr mount 8
1994d7de91fSDima Dorfmanfor more information.
2004d7de91fSDima Dorfman.It Fl p Ar permissions
2014d7de91fSDima DorfmanSet the file (directory) permissions of the mount point
2024d7de91fSDima Dorfman.Ar mount-point
2034d7de91fSDima Dorfmanto
2044d7de91fSDima Dorfman.Ar permissions .
205ce03e3a7SYaroslav TykhiyThe
206ce03e3a7SYaroslav Tykhiy.Ar permissions
207ce03e3a7SYaroslav Tykhiyargument can be in any of the mode formats recognized by
208ce03e3a7SYaroslav Tykhiy.Xr chmod 1 .
209ce03e3a7SYaroslav TykhiyIf symbolic permissions are specified,
210ce03e3a7SYaroslav Tykhiythe operation characters
211ce03e3a7SYaroslav Tykhiy.Dq +
212ce03e3a7SYaroslav Tykhiyand
213ce03e3a7SYaroslav Tykhiy.Dq -
214ce03e3a7SYaroslav Tykhiyare interpreted relative to the initial permissions of
215ce03e3a7SYaroslav Tykhiy.Dq a=rwx .
2164d7de91fSDima Dorfman.It Fl S
2179dde6035SDima DorfmanDo not enable soft-updates on the file system.
2184d7de91fSDima Dorfman.It Fl s Ar size
2194d7de91fSDima DorfmanSpecify the size of the disk to create.
2204d7de91fSDima DorfmanThis only makes sense if
2214d7de91fSDima Dorfman.Fl F
2224d7de91fSDima Dorfmanis
2234d7de91fSDima Dorfman.Em not
2244d7de91fSDima Dorfmanspecified.
2254d7de91fSDima DorfmanThat is,
2264d7de91fSDima Dorfmanthis will work for the default swap-backed
2274d7de91fSDima Dorfman.Pq Dv MD_SWAP
2284d7de91fSDima Dorfmandisks,
2294d7de91fSDima Dorfmanand the optional
2304d7de91fSDima Dorfman.Pq Fl M
2314d7de91fSDima Dorfman.Xr malloc 9
2324d7de91fSDima Dorfmanbacked disks
2334d7de91fSDima Dorfman.Pq Dv MD_MALLOC .
234f7acb7e4SDima Dorfman.It Fl U
235f7acb7e4SDima DorfmanEnable soft-updates on the file system.
236f7acb7e4SDima DorfmanThis is the default, even in compatibility mode, and is accepted only
237f7acb7e4SDima Dorfmanfor compatibility.
238f7acb7e4SDima DorfmanIt is only really useful to negate the
239f7acb7e4SDima Dorfman.Fl S
240f7acb7e4SDima Dorfmanflag, should such a need occur.
241622448faSRobert Watson.It Fl v Ar version
242622448faSRobert WatsonSpecify the UFS version number for use on the file system; it may be
243622448faSRobert Watsoneither
244622448faSRobert Watson.Dv 1
245622448faSRobert Watsonor
246622448faSRobert Watson.Dv 2 .
247622448faSRobert WatsonThe default is derived from the default of the
248622448faSRobert Watson.Xr newfs 8
249622448faSRobert Watsoncommand.
2509dde6035SDima Dorfman.It Fl w Ar user : Ns Ar group
2519dde6035SDima DorfmanSet the owner and group to
2524d7de91fSDima Dorfman.Ar user
2534d7de91fSDima Dorfmanand
2544d7de91fSDima Dorfman.Ar group ,
2554d7de91fSDima Dorfmanrespectively.
2564d7de91fSDima DorfmanThe arguments have the same semantics as with
2574d7de91fSDima Dorfman.Xr chown 8 ,
2589dde6035SDima Dorfmanbut specifying just a
2599dde6035SDima Dorfman.Ar user
2609dde6035SDima Dorfmanor just a
2619dde6035SDima Dorfman.Ar group
2629dde6035SDima Dorfmanis not supported.
263ab1d004fSDima Dorfman.It Fl X
264ab1d004fSDima DorfmanPrint what command will be run before running it, and
265ab1d004fSDima Dorfmanother assorted debugging information.
2664d7de91fSDima Dorfman.El
2674d7de91fSDima Dorfman.Pp
2684d7de91fSDima DorfmanThe
2694d7de91fSDima Dorfman.Fl F
2704d7de91fSDima Dorfmanand
2714d7de91fSDima Dorfman.Fl s
2724d7de91fSDima Dorfmanoptions are passed to
2734d7de91fSDima Dorfman.Xr mdconfig 8
2744d7de91fSDima Dorfmanas
2754d7de91fSDima Dorfman.Fl f
2764d7de91fSDima Dorfmanand
2774d7de91fSDima Dorfman.Fl s ,
2784d7de91fSDima Dorfmanrespectively.
2794d7de91fSDima DorfmanThe
2809dde6035SDima Dorfman.Fl a , b , c , d , e , f , i , m
2814d7de91fSDima Dorfmanand
2824d7de91fSDima Dorfman.Fl n
2834d7de91fSDima Dorfmanoptions are passed to
2844d7de91fSDima Dorfman.Xr newfs 8
2854d7de91fSDima Dorfmanwith the same letter;
2864d7de91fSDima Dorfmanthe
2874d7de91fSDima Dorfman.Fl O
2884d7de91fSDima Dorfmanoption is passed to
2894d7de91fSDima Dorfman.Xr newfs 8
2904d7de91fSDima Dorfmanas
2914d7de91fSDima Dorfman.Fl o .
2924d7de91fSDima DorfmanThe
2934d7de91fSDima Dorfman.Fl o
2944d7de91fSDima Dorfmanoption is passed to
2954d7de91fSDima Dorfman.Xr mount 8
2964d7de91fSDima Dorfmanwith the same letter.
2974d7de91fSDima DorfmanSee the programs that the options are passed to for more information
2984d7de91fSDima Dorfmanon their semantics.
2994d7de91fSDima Dorfman.Sh EXAMPLES
3004d7de91fSDima DorfmanCreate and mount a 32 megabyte swap-backed file system on
3014d7de91fSDima Dorfman.Pa /tmp :
3024d7de91fSDima Dorfman.Pp
3039dde6035SDima Dorfman.Dl "mdmfs -s 32m md /tmp"
3044d7de91fSDima Dorfman.Pp
3054460871bSDoug BartonThe same file system created as an entry in
3064460871bSDoug Barton.Pa /etc/fstab :
307031ba6ffSRuslan Ermilov.Pp
3084460871bSDoug Barton.Dl "md /tmp mfs rw,-s32m 2 0"
3094460871bSDoug Barton.Pp
3104d7de91fSDima DorfmanCreate and mount a 16 megabyte malloc-backed file system on
3114d7de91fSDima Dorfman.Pa /tmp
3124d7de91fSDima Dorfmanusing the
3134d7de91fSDima Dorfman.Pa /dev/md1
3144d7de91fSDima Dorfmandevice;
3154d7de91fSDima Dorfmanfurthermore,
316ba40ba47SDima Dorfmando not use soft-updates on it and mount it
3174d7de91fSDima Dorfman.Cm async :
3184d7de91fSDima Dorfman.Pp
3199dde6035SDima Dorfman.Dl "mdmfs -M -S -o async -s 16m md1 /tmp"
320f7acb7e4SDima Dorfman.Sh COMPATIBILITY
321e1205e80SPhilippe CharnierThe
322e1205e80SPhilippe Charnier.Nm
323e1205e80SPhilippe Charnierutility, while designed to be fully compatible with
324f7acb7e4SDima Dorfman.Xr mount_mfs 8 ,
325f7acb7e4SDima Dorfmancan be useful by itself.
326f7acb7e4SDima DorfmanSince
327f7acb7e4SDima Dorfman.Xr mount_mfs 8
328f72709f6SDoug Bartonhad some silly defaults, a
329f7acb7e4SDima Dorfman.Dq full compatibility
330f7acb7e4SDima Dorfmanmode is provided for the case where bug-to-bug compatibility is desired.
331f7acb7e4SDima Dorfman.Pp
332f7acb7e4SDima DorfmanFull compatibility is enabled with the
333f7acb7e4SDima Dorfman.Fl C
334f7acb7e4SDima Dorfmanflag,
335f7acb7e4SDima Dorfmanor by starting
336f7acb7e4SDima Dorfman.Nm
3372dc4ac06SIan Dowsewith the name
3382dc4ac06SIan Dowse.Li mount_mfs
3392dc4ac06SIan Dowseor
3402dc4ac06SIan Dowse.Li mfs
341f7acb7e4SDima Dorfman(as returned by
342f7acb7e4SDima Dorfman.Xr getprogname 3 ) .
343f7acb7e4SDima DorfmanIn this mode, only the options which would be accepted by
344f7acb7e4SDima Dorfman.Xr mount_mfs 8
345f7acb7e4SDima Dorfmanare valid.
346f7acb7e4SDima DorfmanFurthermore, the following behavior, as done by
347f7acb7e4SDima Dorfman.Xr mount_mfs 8 ,
348f7acb7e4SDima Dorfmanis duplicated:
3496a68a83eSRuslan Ermilov.Bl -bullet -offset indent
350f7acb7e4SDima Dorfman.It
351f7acb7e4SDima DorfmanThe file mode of
352f7acb7e4SDima Dorfman.Ar mount-point
353f7acb7e4SDima Dorfmanis set to
354f7acb7e4SDima Dorfman.Li 01777
355f7acb7e4SDima Dorfmanas if
356f7acb7e4SDima Dorfman.Fl p Ar 1777
357f7acb7e4SDima Dorfmanwas given on the command line.
358f7acb7e4SDima Dorfman.El
35929dfd70bSDima Dorfman.Sh SEE ALSO
36029dfd70bSDima Dorfman.Xr md 4 ,
361f7acb7e4SDima Dorfman.Xr fstab 5 ,
36229dfd70bSDima Dorfman.Xr mdconfig 8 ,
36329dfd70bSDima Dorfman.Xr mount 8 ,
36429dfd70bSDima Dorfman.Xr newfs 8
3659dde6035SDima Dorfman.Sh AUTHORS
3664d7de91fSDima Dorfman.An Dima Dorfman
367