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.\" 28*fd07a29cSAlexander Motin.Dd March 7, 2016 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 39*fd07a29cSAlexander Motin.Op Fl DLlMNnPStUX 404d7de91fSDima Dorfman.Op Fl a Ar maxcontig 414d7de91fSDima Dorfman.Op Fl b Ar block-size 42c72132f0SMatteo Riondato.Op Fl c Ar blocks-per-cylinder-group 43c72132f0SMatteo Riondato.Op Fl d Ar max-extent-size 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 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 584d7de91fSDima Dorfman.Sh DESCRIPTION 594d7de91fSDima DorfmanThe 604d7de91fSDima Dorfman.Nm 61e1205e80SPhilippe Charnierutility is designed to be a work-alike and look-alike of the deprecated 624d7de91fSDima Dorfman.Xr mount_mfs 8 . 634d7de91fSDima DorfmanThe end result is essentially the same, 644d7de91fSDima Dorfmanbut is accomplished in a completely different way. 65e1205e80SPhilippe CharnierThe 664d7de91fSDima Dorfman.Nm 67e1205e80SPhilippe Charnierutility configures an 684d7de91fSDima Dorfman.Xr md 4 694d7de91fSDima Dorfmandisk using 704d7de91fSDima Dorfman.Xr mdconfig 8 , 71e7e3ba9bSMatteo Riondatoputs a UFS file system on it (unless 72e7e3ba9bSMatteo Riondato.Fl P 73e7e3ba9bSMatteo Riondatowas specified) using 744d7de91fSDima Dorfman.Xr newfs 8 , 754d7de91fSDima Dorfmanand mounts it using 764d7de91fSDima Dorfman.Xr mount 8 . 77de63bf71SMatteo RiondatoIt can handle 78de63bf71SMatteo Riondato.Xr geom_uzip 4 79032ae0f3SCeri Daviescompressed disk images, as long as the kernel supports this GEOM class. 804d7de91fSDima DorfmanAll the command line options are passed to the appropriate program 814d7de91fSDima Dorfmanat the appropriate stage in order to achieve the desired effect. 824d7de91fSDima Dorfman.Pp 834d7de91fSDima DorfmanBy default, 844d7de91fSDima Dorfman.Nm 854d7de91fSDima Dorfmancreates a swap-based 864d7de91fSDima Dorfman.Pq Dv MD_SWAP 874d7de91fSDima Dorfmandisk with soft-updates enabled 884d7de91fSDima Dorfmanand mounts it on 894d7de91fSDima Dorfman.Ar mount-point . 904d7de91fSDima DorfmanIt uses the 914d7de91fSDima Dorfman.Xr md 4 924d7de91fSDima Dorfmandevice specified by 934d7de91fSDima Dorfman.Ar md-device . 944d7de91fSDima DorfmanIf 954d7de91fSDima Dorfman.Ar md-device 964d7de91fSDima Dorfmanis 974d7de91fSDima Dorfman.Ql md 984d7de91fSDima Dorfman(no unit number), 994d7de91fSDima Dorfmanit will use 1004d7de91fSDima Dorfman.Xr md 4 Ns 's 1014d7de91fSDima Dorfmanauto-unit feature to automatically select an unused device. 1024d7de91fSDima DorfmanUnless otherwise specified with one of the options below, 1034d7de91fSDima Dorfmanit uses the default arguments to all the helper programs. 1044d7de91fSDima Dorfman.Pp 1054d7de91fSDima DorfmanThe following options are available. 1064d7de91fSDima DorfmanWhere possible, 1074d7de91fSDima Dorfmanthe option letter matches the one used by 1084d7de91fSDima Dorfman.Xr mount_mfs 8 1094d7de91fSDima Dorfmanfor the same thing. 1109dde6035SDima Dorfman.Bl -tag -width indent 1114d7de91fSDima Dorfman.It Fl a Ar maxcontig 1124d7de91fSDima DorfmanSpecify the maximum number of contiguous blocks that will be laid 1134d7de91fSDima Dorfmanout before forcing a rotational delay 1144d7de91fSDima Dorfman(see the 1154d7de91fSDima Dorfman.Fl d 1164d7de91fSDima Dorfmanoption). 1174d7de91fSDima Dorfman.It Fl b Ar block-size 1184d7de91fSDima DorfmanThe block size of the file system, in bytes. 119c72132f0SMatteo Riondato.It Fl c Ar blocks-per-cylinder-group 120c72132f0SMatteo RiondatoThe number of blocks per cylinder group in the file system. 1214d7de91fSDima Dorfman.It Fl D 1224d7de91fSDima DorfmanIf not using auto-unit, 1239dde6035SDima Dorfmando not run 1244d7de91fSDima Dorfman.Xr mdconfig 8 1254d7de91fSDima Dorfmanto try to detach the unit before attaching it. 126c72132f0SMatteo Riondato.It Fl d Ar max-extent-size 127c72132f0SMatteo RiondatoThe file system may choose to store large files using extents. 128c72132f0SMatteo RiondatoThis parameter specifies the largest extent size that may be 129c72132f0SMatteo Riondatoused. It is presently limited to its default value which is 16 130c72132f0SMatteo Riondatotimes the file system blocksize. 13163f8ddbeSMaxim Sobolev.It Fl E Ar path-mdconfig 13263f8ddbeSMaxim SobolevUse 13363f8ddbeSMaxim Sobolev.Ar path-mdconfig 13463f8ddbeSMaxim Sobolevas a location of the 13563f8ddbeSMaxim Sobolev.Xr mdconfig 8 13663f8ddbeSMaxim Sobolevutility. 1374d7de91fSDima Dorfman.It Fl e Ar maxbpg 1384d7de91fSDima DorfmanIndicate the maximum number of blocks any single file can allocate 1394d7de91fSDima Dorfmanout of a cylinder group before it is forced to begin allocating 1404d7de91fSDima Dorfmanblocks from another cylinder group. 1414d7de91fSDima Dorfman.It Fl F Ar file 1424d7de91fSDima DorfmanCreate a vnode-backed 1434d7de91fSDima Dorfman.Pq Dv MD_VNODE 1444d7de91fSDima Dorfmanmemory disk backed by 1454d7de91fSDima Dorfman.Ar file . 1464d7de91fSDima Dorfman.It Fl f Ar frag-size 1474d7de91fSDima DorfmanThe fragment size of the file system in bytes. 1484d7de91fSDima Dorfman.It Fl i Ar bytes 1494d7de91fSDima DorfmanNumber of bytes per inode. 1501d3170aaSRobert Watson.It Fl l 151d04b5dfeSRuslan ErmilovEnable multilabel MAC on the new file system. 1524d7de91fSDima Dorfman.It Fl L 1534d7de91fSDima DorfmanShow the output of the helper programs. 1544d7de91fSDima DorfmanBy default, 1554d7de91fSDima Dorfmanit is sent to 1564d7de91fSDima Dorfman.Pa /dev/null . 1574d7de91fSDima Dorfman.It Fl M 1584d7de91fSDima DorfmanCreate a 1594d7de91fSDima Dorfman.Xr malloc 9 1604d7de91fSDima Dorfmanbacked disk 1614d7de91fSDima Dorfman.Pq Dv MD_MALLOC 1624d7de91fSDima Dorfmaninstead of a swap-backed disk. 1634d7de91fSDima Dorfman.It Fl m Ar percent-free 1644d7de91fSDima DorfmanThe percentage of space reserved for the superuser. 1654d7de91fSDima Dorfman.It Fl N 1669dde6035SDima DorfmanDo not actually run the helper programs. 1674d7de91fSDima DorfmanThis is most useful in conjunction with 1684d7de91fSDima Dorfman.Fl X . 169*fd07a29cSAlexander Motin.It Fl n 170*fd07a29cSAlexander MotinDo not create a 171*fd07a29cSAlexander Motin.Pa .snap 172*fd07a29cSAlexander Motindirectory on the new file system. 1734d7de91fSDima Dorfman.It Fl O Ar optimization 1744d7de91fSDima DorfmanSelect the optimization preference; 1754d7de91fSDima Dorfmanvalid choices are 1769dde6035SDima Dorfman.Cm space 1774d7de91fSDima Dorfmanand 1789dde6035SDima Dorfman.Cm time , 1794d7de91fSDima Dorfmanwhich will optimize for minimum space fragmentation and 1804d7de91fSDima Dorfmanminimum time spent allocating blocks, 1814d7de91fSDima Dorfmanrespectively. 1824d7de91fSDima Dorfman.It Fl o Ar mount-options 1834d7de91fSDima DorfmanSpecify the mount options with which to mount the file system. 1844d7de91fSDima DorfmanSee 1854d7de91fSDima Dorfman.Xr mount 8 1864d7de91fSDima Dorfmanfor more information. 18705b2fd30SDima Dorfman.It Fl P 18805b2fd30SDima DorfmanPreserve the existing file system; 18905b2fd30SDima Dorfmando not run 19005b2fd30SDima Dorfman.Xr newfs 8 . 19105b2fd30SDima DorfmanThis only makes sense if 19205b2fd30SDima Dorfman.Fl F 19305b2fd30SDima Dorfmanis specified to create a vnode-backed disk. 1944d7de91fSDima Dorfman.It Fl p Ar permissions 1954d7de91fSDima DorfmanSet the file (directory) permissions of the mount point 1964d7de91fSDima Dorfman.Ar mount-point 1974d7de91fSDima Dorfmanto 1984d7de91fSDima Dorfman.Ar permissions . 199ce03e3a7SYaroslav TykhiyThe 200ce03e3a7SYaroslav Tykhiy.Ar permissions 201ce03e3a7SYaroslav Tykhiyargument can be in any of the mode formats recognized by 202ce03e3a7SYaroslav Tykhiy.Xr chmod 1 . 203ce03e3a7SYaroslav TykhiyIf symbolic permissions are specified, 204ce03e3a7SYaroslav Tykhiythe operation characters 205ce03e3a7SYaroslav Tykhiy.Dq + 206ce03e3a7SYaroslav Tykhiyand 207ce03e3a7SYaroslav Tykhiy.Dq - 208ce03e3a7SYaroslav Tykhiyare interpreted relative to the initial permissions of 209ce03e3a7SYaroslav Tykhiy.Dq a=rwx . 2104d7de91fSDima Dorfman.It Fl S 2119dde6035SDima DorfmanDo not enable soft-updates on the file system. 2124d7de91fSDima Dorfman.It Fl s Ar size 2134d7de91fSDima DorfmanSpecify the size of the disk to create. 2144d7de91fSDima DorfmanThis only makes sense if 2154d7de91fSDima Dorfman.Fl F 2164d7de91fSDima Dorfmanis 2174d7de91fSDima Dorfman.Em not 2184d7de91fSDima Dorfmanspecified. 2194d7de91fSDima DorfmanThat is, 2204d7de91fSDima Dorfmanthis will work for the default swap-backed 2214d7de91fSDima Dorfman.Pq Dv MD_SWAP 2224d7de91fSDima Dorfmandisks, 2234d7de91fSDima Dorfmanand the optional 2244d7de91fSDima Dorfman.Pq Fl M 2254d7de91fSDima Dorfman.Xr malloc 9 2264d7de91fSDima Dorfmanbacked disks 2274d7de91fSDima Dorfman.Pq Dv MD_MALLOC . 228bf6619baSKonstantin Belousov.It Fl t 229bf6619baSKonstantin BelousovTurn on the TRIM enable flag for 230bf6619baSKonstantin Belousov.Xr newfs 8 . 231bf6619baSKonstantin BelousovThe 232bf6619baSKonstantin Belousov.Xr md 4 233bf6619baSKonstantin Belousovdevice supports the BIO_DELETE command, enabling the TRIM on created 234bf6619baSKonstantin Belousovfilesystem allows return of freed memory to the system pool. 235f7acb7e4SDima Dorfman.It Fl U 236f7acb7e4SDima DorfmanEnable soft-updates on the file system. 237957d7c8fSRuslan ErmilovThis is the default, and is accepted only 238f7acb7e4SDima Dorfmanfor compatibility. 239f7acb7e4SDima DorfmanIt is only really useful to negate the 240f7acb7e4SDima Dorfman.Fl S 241f7acb7e4SDima Dorfmanflag, should such a need occur. 242622448faSRobert Watson.It Fl v Ar version 243622448faSRobert WatsonSpecify the UFS version number for use on the file system; it may be 244622448faSRobert Watsoneither 245622448faSRobert Watson.Dv 1 246622448faSRobert Watsonor 247622448faSRobert Watson.Dv 2 . 248622448faSRobert WatsonThe default is derived from the default of the 249622448faSRobert Watson.Xr newfs 8 250622448faSRobert Watsoncommand. 2519dde6035SDima Dorfman.It Fl w Ar user : Ns Ar group 2529dde6035SDima DorfmanSet the owner and group to 2534d7de91fSDima Dorfman.Ar user 2544d7de91fSDima Dorfmanand 2554d7de91fSDima Dorfman.Ar group , 2564d7de91fSDima Dorfmanrespectively. 2574d7de91fSDima DorfmanThe arguments have the same semantics as with 2584d7de91fSDima Dorfman.Xr chown 8 , 2599dde6035SDima Dorfmanbut specifying just a 2609dde6035SDima Dorfman.Ar user 2619dde6035SDima Dorfmanor just a 2629dde6035SDima Dorfman.Ar group 2639dde6035SDima Dorfmanis not supported. 264ab1d004fSDima Dorfman.It Fl X 265ab1d004fSDima DorfmanPrint what command will be run before running it, and 266ab1d004fSDima Dorfmanother assorted debugging information. 2674d7de91fSDima Dorfman.El 2684d7de91fSDima Dorfman.Pp 2694d7de91fSDima DorfmanThe 2704d7de91fSDima Dorfman.Fl F 2714d7de91fSDima Dorfmanand 2724d7de91fSDima Dorfman.Fl s 2734d7de91fSDima Dorfmanoptions are passed to 2744d7de91fSDima Dorfman.Xr mdconfig 8 2754d7de91fSDima Dorfmanas 2764d7de91fSDima Dorfman.Fl f 2774d7de91fSDima Dorfmanand 2784d7de91fSDima Dorfman.Fl s , 2794d7de91fSDima Dorfmanrespectively. 2804d7de91fSDima DorfmanThe 2819dde6035SDima Dorfman.Fl a , b , c , d , e , f , i , m 2824d7de91fSDima Dorfmanand 2834d7de91fSDima Dorfman.Fl n 2844d7de91fSDima Dorfmanoptions are passed to 2854d7de91fSDima Dorfman.Xr newfs 8 2864d7de91fSDima Dorfmanwith the same letter; 2874d7de91fSDima Dorfmanthe 2884d7de91fSDima Dorfman.Fl O 2894d7de91fSDima Dorfmanoption is passed to 2904d7de91fSDima Dorfman.Xr newfs 8 2914d7de91fSDima Dorfmanas 2924d7de91fSDima Dorfman.Fl o . 2934d7de91fSDima DorfmanThe 2944d7de91fSDima Dorfman.Fl o 2954d7de91fSDima Dorfmanoption is passed to 2964d7de91fSDima Dorfman.Xr mount 8 2974d7de91fSDima Dorfmanwith the same letter. 2984d7de91fSDima DorfmanSee the programs that the options are passed to for more information 2994d7de91fSDima Dorfmanon their semantics. 3004d7de91fSDima Dorfman.Sh EXAMPLES 3014d7de91fSDima DorfmanCreate and mount a 32 megabyte swap-backed file system on 3024d7de91fSDima Dorfman.Pa /tmp : 3034d7de91fSDima Dorfman.Pp 3049dde6035SDima Dorfman.Dl "mdmfs -s 32m md /tmp" 3054d7de91fSDima Dorfman.Pp 3064460871bSDoug BartonThe same file system created as an entry in 3074460871bSDoug Barton.Pa /etc/fstab : 308031ba6ffSRuslan Ermilov.Pp 3094460871bSDoug Barton.Dl "md /tmp mfs rw,-s32m 2 0" 3104460871bSDoug Barton.Pp 3114d7de91fSDima DorfmanCreate and mount a 16 megabyte malloc-backed file system on 3124d7de91fSDima Dorfman.Pa /tmp 3134d7de91fSDima Dorfmanusing the 3144d7de91fSDima Dorfman.Pa /dev/md1 3154d7de91fSDima Dorfmandevice; 3164d7de91fSDima Dorfmanfurthermore, 317ba40ba47SDima Dorfmando not use soft-updates on it and mount it 3184d7de91fSDima Dorfman.Cm async : 3194d7de91fSDima Dorfman.Pp 3209dde6035SDima Dorfman.Dl "mdmfs -M -S -o async -s 16m md1 /tmp" 321de63bf71SMatteo Riondato.Pp 322de63bf71SMatteo RiondatoCreate and mount a 323de63bf71SMatteo Riondato.Xr geom_uzip 4 324de63bf71SMatteo Riondatobased compressed disk image: 325de63bf71SMatteo Riondato.Pp 326de63bf71SMatteo Riondato.Dl "mdmfs -P -F foo.uzip -oro md.uzip /tmp/" 327de63bf71SMatteo Riondato.Pp 328032ae0f3SCeri DaviesMount the same image, specifying the 329de63bf71SMatteo Riondato.Pa /dev/md1 330de63bf71SMatteo Riondatodevice: 331de63bf71SMatteo Riondato.Pp 332de63bf71SMatteo Riondato.Dl "mdmfs -P -F foo.uzip -oro md1.uzip /tmp/" 333de63bf71SMatteo Riondato.Pp 334de63bf71SMatteo RiondatoConfigure a vnode-backed file system and mount its first partition, 335de63bf71SMatteo Riondatousing automatic device numbering: 336de63bf71SMatteo Riondato.Pp 337de63bf71SMatteo Riondato.Dl "mdmfs -P -F foo.img mds1a /tmp/" 338f7acb7e4SDima Dorfman.Sh COMPATIBILITY 339e1205e80SPhilippe CharnierThe 340e1205e80SPhilippe Charnier.Nm 341957d7c8fSRuslan Ermilovutility, while designed to be compatible with 342f7acb7e4SDima Dorfman.Xr mount_mfs 8 , 343f7acb7e4SDima Dorfmancan be useful by itself. 344f7acb7e4SDima DorfmanSince 345f7acb7e4SDima Dorfman.Xr mount_mfs 8 346f72709f6SDoug Bartonhad some silly defaults, a 347957d7c8fSRuslan Ermilov.Dq compatibility 348f7acb7e4SDima Dorfmanmode is provided for the case where bug-to-bug compatibility is desired. 349f7acb7e4SDima Dorfman.Pp 350957d7c8fSRuslan ErmilovCompatibility is enabled by starting 351f7acb7e4SDima Dorfman.Nm 3522dc4ac06SIan Dowsewith the name 3532dc4ac06SIan Dowse.Li mount_mfs 3542dc4ac06SIan Dowseor 3552dc4ac06SIan Dowse.Li mfs 356f7acb7e4SDima Dorfman(as returned by 357f7acb7e4SDima Dorfman.Xr getprogname 3 ) . 358957d7c8fSRuslan ErmilovIn this mode, the following behavior, as done by 359f7acb7e4SDima Dorfman.Xr mount_mfs 8 , 360f7acb7e4SDima Dorfmanis duplicated: 3616a68a83eSRuslan Ermilov.Bl -bullet -offset indent 362f7acb7e4SDima Dorfman.It 363f7acb7e4SDima DorfmanThe file mode of 364f7acb7e4SDima Dorfman.Ar mount-point 365957d7c8fSRuslan Ermilovis set by default to 366f7acb7e4SDima Dorfman.Li 01777 367f7acb7e4SDima Dorfmanas if 368f7acb7e4SDima Dorfman.Fl p Ar 1777 369f7acb7e4SDima Dorfmanwas given on the command line. 370f7acb7e4SDima Dorfman.El 37129dfd70bSDima Dorfman.Sh SEE ALSO 37229dfd70bSDima Dorfman.Xr md 4 , 373f7acb7e4SDima Dorfman.Xr fstab 5 , 37429dfd70bSDima Dorfman.Xr mdconfig 8 , 37529dfd70bSDima Dorfman.Xr mount 8 , 37629dfd70bSDima Dorfman.Xr newfs 8 3779dde6035SDima Dorfman.Sh AUTHORS 3784d7de91fSDima Dorfman.An Dima Dorfman 379