xref: /freebsd/sbin/mdmfs/mdmfs.8 (revision 957d7c8f9caa62d41d6c51a60bb0d01d1b77126e)
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.\"
28957d7c8fSRuslan Ermilov.Dd November 3, 2006
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
3905b2fd30SDima Dorfman.Op Fl DLlMNPSUX
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
4463f8ddbeSMaxim Sobolev.Op Fl E Ar path-mdconfig
454d7de91fSDima Dorfman.Op Fl e Ar maxbpg
464d7de91fSDima Dorfman.Op Fl F Ar file
474d7de91fSDima Dorfman.Op Fl f Ar frag-size
484d7de91fSDima Dorfman.Op Fl i Ar bytes
494d7de91fSDima Dorfman.Op Fl m Ar percent-free
504d7de91fSDima Dorfman.Op Fl n Ar rotational-positions
514d7de91fSDima Dorfman.Op Fl O Ar optimization
524d7de91fSDima Dorfman.Op Fl o Ar mount-options
534d7de91fSDima Dorfman.Op Fl p Ar permissions
544d7de91fSDima Dorfman.Op Fl s Ar size
55622448faSRobert Watson.Op Fl v Ar version
569dde6035SDima Dorfman.Op Fl w Ar user : Ns Ar group
574d7de91fSDima Dorfman.Ar md-device
584d7de91fSDima Dorfman.Ar mount-point
594d7de91fSDima Dorfman.Sh DESCRIPTION
604d7de91fSDima DorfmanThe
614d7de91fSDima Dorfman.Nm
62e1205e80SPhilippe Charnierutility is designed to be a work-alike and look-alike of the deprecated
634d7de91fSDima Dorfman.Xr mount_mfs 8 .
644d7de91fSDima DorfmanThe end result is essentially the same,
654d7de91fSDima Dorfmanbut is accomplished in a completely different way.
66e1205e80SPhilippe CharnierThe
674d7de91fSDima Dorfman.Nm
68e1205e80SPhilippe Charnierutility configures an
694d7de91fSDima Dorfman.Xr md 4
704d7de91fSDima Dorfmandisk using
714d7de91fSDima Dorfman.Xr mdconfig 8 ,
72e7e3ba9bSMatteo Riondatoputs a UFS file system on it (unless
73e7e3ba9bSMatteo Riondato.Fl P
74e7e3ba9bSMatteo Riondatowas specified) using
754d7de91fSDima Dorfman.Xr newfs 8 ,
764d7de91fSDima Dorfmanand mounts it using
774d7de91fSDima Dorfman.Xr mount 8 .
784d7de91fSDima DorfmanAll the command line options are passed to the appropriate program
794d7de91fSDima Dorfmanat the appropriate stage in order to achieve the desired effect.
804d7de91fSDima Dorfman.Pp
814d7de91fSDima DorfmanBy default,
824d7de91fSDima Dorfman.Nm
834d7de91fSDima Dorfmancreates a swap-based
844d7de91fSDima Dorfman.Pq Dv MD_SWAP
854d7de91fSDima Dorfmandisk with soft-updates enabled
864d7de91fSDima Dorfmanand mounts it on
874d7de91fSDima Dorfman.Ar mount-point .
884d7de91fSDima DorfmanIt uses the
894d7de91fSDima Dorfman.Xr md 4
904d7de91fSDima Dorfmandevice specified by
914d7de91fSDima Dorfman.Ar md-device .
924d7de91fSDima DorfmanIf
934d7de91fSDima Dorfman.Ar md-device
944d7de91fSDima Dorfmanis
954d7de91fSDima Dorfman.Ql md
964d7de91fSDima Dorfman(no unit number),
974d7de91fSDima Dorfmanit will use
984d7de91fSDima Dorfman.Xr md 4 Ns 's
994d7de91fSDima Dorfmanauto-unit feature to automatically select an unused device.
1004d7de91fSDima DorfmanUnless otherwise specified with one of the options below,
1014d7de91fSDima Dorfmanit uses the default arguments to all the helper programs.
1024d7de91fSDima Dorfman.Pp
1034d7de91fSDima DorfmanThe following options are available.
1044d7de91fSDima DorfmanWhere possible,
1054d7de91fSDima Dorfmanthe option letter matches the one used by
1064d7de91fSDima Dorfman.Xr mount_mfs 8
1074d7de91fSDima Dorfmanfor the same thing.
1089dde6035SDima Dorfman.Bl -tag -width indent
1094d7de91fSDima Dorfman.It Fl a Ar maxcontig
1104d7de91fSDima DorfmanSpecify the maximum number of contiguous blocks that will be laid
1114d7de91fSDima Dorfmanout before forcing a rotational delay
1124d7de91fSDima Dorfman(see the
1134d7de91fSDima Dorfman.Fl d
1144d7de91fSDima Dorfmanoption).
1154d7de91fSDima Dorfman.It Fl b Ar block-size
1164d7de91fSDima DorfmanThe block size of the file system, in bytes.
1174d7de91fSDima Dorfman.It Fl c Ar cylinders
1184d7de91fSDima DorfmanThe number of cylinders per cylinder group in the file system.
1194d7de91fSDima Dorfman.It Fl D
1204d7de91fSDima DorfmanIf not using auto-unit,
1219dde6035SDima Dorfmando not run
1224d7de91fSDima Dorfman.Xr mdconfig 8
1234d7de91fSDima Dorfmanto try to detach the unit before attaching it.
1244d7de91fSDima Dorfman.It Fl d Ar rotdelay
12557bd0fc6SJens SchweikhardtSpecify the minimum time in milliseconds required to initiate another
1264d7de91fSDima Dorfmandisk transfer on the same cylinder.
1274d7de91fSDima DorfmanModern disks with read/write-behind achieve higher performance without
1284d7de91fSDima Dorfmanthis feature,
1294d7de91fSDima Dorfmanso it is best to leave it at 0 milliseconds.
13063f8ddbeSMaxim Sobolev.It Fl E Ar path-mdconfig
13163f8ddbeSMaxim SobolevUse
13263f8ddbeSMaxim Sobolev.Ar path-mdconfig
13363f8ddbeSMaxim Sobolevas a location of the
13463f8ddbeSMaxim Sobolev.Xr mdconfig 8
13563f8ddbeSMaxim Sobolevutility.
1364d7de91fSDima Dorfman.It Fl e Ar maxbpg
1374d7de91fSDima DorfmanIndicate the maximum number of blocks any single file can allocate
1384d7de91fSDima Dorfmanout of a cylinder group before it is forced to begin allocating
1394d7de91fSDima Dorfmanblocks from another cylinder group.
1404d7de91fSDima Dorfman.It Fl F Ar file
1414d7de91fSDima DorfmanCreate a vnode-backed
1424d7de91fSDima Dorfman.Pq Dv MD_VNODE
1434d7de91fSDima Dorfmanmemory disk backed by
1444d7de91fSDima Dorfman.Ar file .
1454d7de91fSDima Dorfman.It Fl f Ar frag-size
1464d7de91fSDima DorfmanThe fragment size of the file system in bytes.
1474d7de91fSDima Dorfman.It Fl i Ar bytes
1484d7de91fSDima DorfmanNumber of bytes per inode.
1491d3170aaSRobert Watson.It Fl l
150d04b5dfeSRuslan ErmilovEnable multilabel MAC on the new file system.
1514d7de91fSDima Dorfman.It Fl L
1524d7de91fSDima DorfmanShow the output of the helper programs.
1534d7de91fSDima DorfmanBy default,
1544d7de91fSDima Dorfmanit is sent to
1554d7de91fSDima Dorfman.Pa /dev/null .
1564d7de91fSDima Dorfman.It Fl M
1574d7de91fSDima DorfmanCreate a
1584d7de91fSDima Dorfman.Xr malloc 9
1594d7de91fSDima Dorfmanbacked disk
1604d7de91fSDima Dorfman.Pq Dv MD_MALLOC
1614d7de91fSDima Dorfmaninstead of a swap-backed disk.
1624d7de91fSDima Dorfman.It Fl m Ar percent-free
1634d7de91fSDima DorfmanThe percentage of space reserved for the superuser.
1644d7de91fSDima Dorfman.It Fl N
1659dde6035SDima DorfmanDo not actually run the helper programs.
1664d7de91fSDima DorfmanThis is most useful in conjunction with
1674d7de91fSDima Dorfman.Fl X .
1684d7de91fSDima Dorfman.It Fl n Ar rotational-positions
1694d7de91fSDima DorfmanThe default number of rotational positions to distinguish.
1704d7de91fSDima Dorfman.It Fl O Ar optimization
1714d7de91fSDima DorfmanSelect the optimization preference;
1724d7de91fSDima Dorfmanvalid choices are
1739dde6035SDima Dorfman.Cm space
1744d7de91fSDima Dorfmanand
1759dde6035SDima Dorfman.Cm time ,
1764d7de91fSDima Dorfmanwhich will optimize for minimum space fragmentation and
1774d7de91fSDima Dorfmanminimum time spent allocating blocks,
1784d7de91fSDima Dorfmanrespectively.
1794d7de91fSDima Dorfman.It Fl o Ar mount-options
1804d7de91fSDima DorfmanSpecify the mount options with which to mount the file system.
1814d7de91fSDima DorfmanSee
1824d7de91fSDima Dorfman.Xr mount 8
1834d7de91fSDima Dorfmanfor more information.
18405b2fd30SDima Dorfman.It Fl P
18505b2fd30SDima DorfmanPreserve the existing file system;
18605b2fd30SDima Dorfmando not run
18705b2fd30SDima Dorfman.Xr newfs 8 .
18805b2fd30SDima DorfmanThis only makes sense if
18905b2fd30SDima Dorfman.Fl F
19005b2fd30SDima Dorfmanis specified to create a vnode-backed disk.
1914d7de91fSDima Dorfman.It Fl p Ar permissions
1924d7de91fSDima DorfmanSet the file (directory) permissions of the mount point
1934d7de91fSDima Dorfman.Ar mount-point
1944d7de91fSDima Dorfmanto
1954d7de91fSDima Dorfman.Ar permissions .
196ce03e3a7SYaroslav TykhiyThe
197ce03e3a7SYaroslav Tykhiy.Ar permissions
198ce03e3a7SYaroslav Tykhiyargument can be in any of the mode formats recognized by
199ce03e3a7SYaroslav Tykhiy.Xr chmod 1 .
200ce03e3a7SYaroslav TykhiyIf symbolic permissions are specified,
201ce03e3a7SYaroslav Tykhiythe operation characters
202ce03e3a7SYaroslav Tykhiy.Dq +
203ce03e3a7SYaroslav Tykhiyand
204ce03e3a7SYaroslav Tykhiy.Dq -
205ce03e3a7SYaroslav Tykhiyare interpreted relative to the initial permissions of
206ce03e3a7SYaroslav Tykhiy.Dq a=rwx .
2074d7de91fSDima Dorfman.It Fl S
2089dde6035SDima DorfmanDo not enable soft-updates on the file system.
2094d7de91fSDima Dorfman.It Fl s Ar size
2104d7de91fSDima DorfmanSpecify the size of the disk to create.
2114d7de91fSDima DorfmanThis only makes sense if
2124d7de91fSDima Dorfman.Fl F
2134d7de91fSDima Dorfmanis
2144d7de91fSDima Dorfman.Em not
2154d7de91fSDima Dorfmanspecified.
2164d7de91fSDima DorfmanThat is,
2174d7de91fSDima Dorfmanthis will work for the default swap-backed
2184d7de91fSDima Dorfman.Pq Dv MD_SWAP
2194d7de91fSDima Dorfmandisks,
2204d7de91fSDima Dorfmanand the optional
2214d7de91fSDima Dorfman.Pq Fl M
2224d7de91fSDima Dorfman.Xr malloc 9
2234d7de91fSDima Dorfmanbacked disks
2244d7de91fSDima Dorfman.Pq Dv MD_MALLOC .
225f7acb7e4SDima Dorfman.It Fl U
226f7acb7e4SDima DorfmanEnable soft-updates on the file system.
227957d7c8fSRuslan ErmilovThis is the default, and is accepted only
228f7acb7e4SDima Dorfmanfor compatibility.
229f7acb7e4SDima DorfmanIt is only really useful to negate the
230f7acb7e4SDima Dorfman.Fl S
231f7acb7e4SDima Dorfmanflag, should such a need occur.
232622448faSRobert Watson.It Fl v Ar version
233622448faSRobert WatsonSpecify the UFS version number for use on the file system; it may be
234622448faSRobert Watsoneither
235622448faSRobert Watson.Dv 1
236622448faSRobert Watsonor
237622448faSRobert Watson.Dv 2 .
238622448faSRobert WatsonThe default is derived from the default of the
239622448faSRobert Watson.Xr newfs 8
240622448faSRobert Watsoncommand.
2419dde6035SDima Dorfman.It Fl w Ar user : Ns Ar group
2429dde6035SDima DorfmanSet the owner and group to
2434d7de91fSDima Dorfman.Ar user
2444d7de91fSDima Dorfmanand
2454d7de91fSDima Dorfman.Ar group ,
2464d7de91fSDima Dorfmanrespectively.
2474d7de91fSDima DorfmanThe arguments have the same semantics as with
2484d7de91fSDima Dorfman.Xr chown 8 ,
2499dde6035SDima Dorfmanbut specifying just a
2509dde6035SDima Dorfman.Ar user
2519dde6035SDima Dorfmanor just a
2529dde6035SDima Dorfman.Ar group
2539dde6035SDima Dorfmanis not supported.
254ab1d004fSDima Dorfman.It Fl X
255ab1d004fSDima DorfmanPrint what command will be run before running it, and
256ab1d004fSDima Dorfmanother assorted debugging information.
2574d7de91fSDima Dorfman.El
2584d7de91fSDima Dorfman.Pp
2594d7de91fSDima DorfmanThe
2604d7de91fSDima Dorfman.Fl F
2614d7de91fSDima Dorfmanand
2624d7de91fSDima Dorfman.Fl s
2634d7de91fSDima Dorfmanoptions are passed to
2644d7de91fSDima Dorfman.Xr mdconfig 8
2654d7de91fSDima Dorfmanas
2664d7de91fSDima Dorfman.Fl f
2674d7de91fSDima Dorfmanand
2684d7de91fSDima Dorfman.Fl s ,
2694d7de91fSDima Dorfmanrespectively.
2704d7de91fSDima DorfmanThe
2719dde6035SDima Dorfman.Fl a , b , c , d , e , f , i , m
2724d7de91fSDima Dorfmanand
2734d7de91fSDima Dorfman.Fl n
2744d7de91fSDima Dorfmanoptions are passed to
2754d7de91fSDima Dorfman.Xr newfs 8
2764d7de91fSDima Dorfmanwith the same letter;
2774d7de91fSDima Dorfmanthe
2784d7de91fSDima Dorfman.Fl O
2794d7de91fSDima Dorfmanoption is passed to
2804d7de91fSDima Dorfman.Xr newfs 8
2814d7de91fSDima Dorfmanas
2824d7de91fSDima Dorfman.Fl o .
2834d7de91fSDima DorfmanThe
2844d7de91fSDima Dorfman.Fl o
2854d7de91fSDima Dorfmanoption is passed to
2864d7de91fSDima Dorfman.Xr mount 8
2874d7de91fSDima Dorfmanwith the same letter.
2884d7de91fSDima DorfmanSee the programs that the options are passed to for more information
2894d7de91fSDima Dorfmanon their semantics.
2904d7de91fSDima Dorfman.Sh EXAMPLES
2914d7de91fSDima DorfmanCreate and mount a 32 megabyte swap-backed file system on
2924d7de91fSDima Dorfman.Pa /tmp :
2934d7de91fSDima Dorfman.Pp
2949dde6035SDima Dorfman.Dl "mdmfs -s 32m md /tmp"
2954d7de91fSDima Dorfman.Pp
2964460871bSDoug BartonThe same file system created as an entry in
2974460871bSDoug Barton.Pa /etc/fstab :
298031ba6ffSRuslan Ermilov.Pp
2994460871bSDoug Barton.Dl "md /tmp mfs rw,-s32m 2 0"
3004460871bSDoug Barton.Pp
3014d7de91fSDima DorfmanCreate and mount a 16 megabyte malloc-backed file system on
3024d7de91fSDima Dorfman.Pa /tmp
3034d7de91fSDima Dorfmanusing the
3044d7de91fSDima Dorfman.Pa /dev/md1
3054d7de91fSDima Dorfmandevice;
3064d7de91fSDima Dorfmanfurthermore,
307ba40ba47SDima Dorfmando not use soft-updates on it and mount it
3084d7de91fSDima Dorfman.Cm async :
3094d7de91fSDima Dorfman.Pp
3109dde6035SDima Dorfman.Dl "mdmfs -M -S -o async -s 16m md1 /tmp"
311f7acb7e4SDima Dorfman.Sh COMPATIBILITY
312e1205e80SPhilippe CharnierThe
313e1205e80SPhilippe Charnier.Nm
314957d7c8fSRuslan Ermilovutility, while designed to be compatible with
315f7acb7e4SDima Dorfman.Xr mount_mfs 8 ,
316f7acb7e4SDima Dorfmancan be useful by itself.
317f7acb7e4SDima DorfmanSince
318f7acb7e4SDima Dorfman.Xr mount_mfs 8
319f72709f6SDoug Bartonhad some silly defaults, a
320957d7c8fSRuslan Ermilov.Dq compatibility
321f7acb7e4SDima Dorfmanmode is provided for the case where bug-to-bug compatibility is desired.
322f7acb7e4SDima Dorfman.Pp
323957d7c8fSRuslan ErmilovCompatibility is enabled by starting
324f7acb7e4SDima Dorfman.Nm
3252dc4ac06SIan Dowsewith the name
3262dc4ac06SIan Dowse.Li mount_mfs
3272dc4ac06SIan Dowseor
3282dc4ac06SIan Dowse.Li mfs
329f7acb7e4SDima Dorfman(as returned by
330f7acb7e4SDima Dorfman.Xr getprogname 3 ) .
331957d7c8fSRuslan ErmilovIn this mode, the following behavior, as done by
332f7acb7e4SDima Dorfman.Xr mount_mfs 8 ,
333f7acb7e4SDima Dorfmanis duplicated:
3346a68a83eSRuslan Ermilov.Bl -bullet -offset indent
335f7acb7e4SDima Dorfman.It
336f7acb7e4SDima DorfmanThe file mode of
337f7acb7e4SDima Dorfman.Ar mount-point
338957d7c8fSRuslan Ermilovis set by default to
339f7acb7e4SDima Dorfman.Li 01777
340f7acb7e4SDima Dorfmanas if
341f7acb7e4SDima Dorfman.Fl p Ar 1777
342f7acb7e4SDima Dorfmanwas given on the command line.
343f7acb7e4SDima Dorfman.El
34429dfd70bSDima Dorfman.Sh SEE ALSO
34529dfd70bSDima Dorfman.Xr md 4 ,
346f7acb7e4SDima Dorfman.Xr fstab 5 ,
34729dfd70bSDima Dorfman.Xr mdconfig 8 ,
34829dfd70bSDima Dorfman.Xr mount 8 ,
34929dfd70bSDima Dorfman.Xr newfs 8
3509dde6035SDima Dorfman.Sh AUTHORS
3514d7de91fSDima Dorfman.An Dima Dorfman
352