xref: /freebsd/sbin/mdconfig/mdconfig.8 (revision 4f29da19bd44f0e99f021510460a81bf754c21d2)
1.\" Copyright (c) 1993 University of Utah.
2.\" Copyright (c) 1980, 1989, 1991, 1993
3.\"	The Regents of the University of California.  All rights reserved.
4.\" Copyright (c) 2000
5.\"	Poul-Henning Kamp  All rights reserved.
6.\"
7.\" This code is derived from software contributed to Berkeley by
8.\" the Systems Programming Group of the University of Utah Computer
9.\" Science Department.
10.\"
11.\" Redistribution and use in source and binary forms, with or without
12.\" modification, are permitted provided that the following conditions
13.\" are met:
14.\" 1. Redistributions of source code must retain the above copyright
15.\"    notice, this list of conditions and the following disclaimer.
16.\" 2. Redistributions in binary form must reproduce the above copyright
17.\"    notice, this list of conditions and the following disclaimer in the
18.\"    documentation and/or other materials provided with the distribution.
19.\" 3. All advertising materials mentioning features or use of this software
20.\"    must display the following acknowledgement:
21.\"	This product includes software developed by the University of
22.\"	California, Berkeley and its contributors.
23.\" 4. Neither the name of the University nor the names of its contributors
24.\"    may be used to endorse or promote products derived from this software
25.\"    without specific prior written permission.
26.\"
27.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
28.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
31.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
32.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
33.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
34.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37.\" SUCH DAMAGE.
38.\"
39.\"     @(#)vnconfig.8	8.1 (Berkeley) 6/5/93
40.\" from: src/usr.sbin/vnconfig/vnconfig.8,v 1.19 2000/12/27 15:30:29
41.\"
42.\" $FreeBSD$
43.\"
44.Dd November 6, 2004
45.Dt MDCONFIG 8
46.Os
47.Sh NAME
48.Nm mdconfig
49.Nd configure and enable memory disks
50.Sh SYNOPSIS
51.Nm
52.Fl a
53.Fl t Ar type
54.Op Fl n
55.Oo Fl o Oo Cm no Oc Ns Ar option Oc ...
56.Op Fl f Ar file
57.Op Fl s Ar size
58.Op Fl S Ar sectorsize
59.Op Fl u Ar unit
60.Op Fl x Ar sectors/track
61.Op Fl y Ar heads/cyl
62.Nm
63.Fl d
64.Fl u Ar unit
65.Nm
66.Fl l
67.Op Fl n
68.Op Fl u Ar unit
69.Sh DESCRIPTION
70The
71.Nm
72utility configures and enables
73.Xr md 4
74devices.
75.Pp
76Options indicate an action to be performed:
77.Bl -tag -width indent
78.It Fl a
79Attach a memory disk.
80This will configure and attach a memory disk with the
81parameters specified and attach it to the system.
82.It Fl d
83Detach a memory disk from the system and release all resources.
84.It Fl t Ar type
85Select the type of the memory disk.
86.Bl -tag -width "preload"
87.It Cm malloc
88Storage for this type of memory disk is allocated with
89.Xr malloc 9 .
90This limits the size to the malloc bucket limit in the kernel.
91If the
92.Fl o Cm reserve
93option is not set, creating and filling a large
94malloc-backed memory disk is a very easy way to
95panic a system.
96.It Cm vnode
97A file specified with
98.Fl f Ar file
99becomes the backingstore for this memory disk.
100.It Cm swap
101Swap space is used to back this memory disk.
102.El
103.It Fl f Ar file
104Filename to use for the vnode type memory disk.
105.It Fl l
106List configured devices.
107If given with
108.Fl u ,
109display details about that particular device.
110.It Fl n
111When printing md device names, print only the unit number without the
112md prefix.
113.It Fl s Ar size
114Size of the memory disk.
115.Ar Size
116is the number of 512 byte sectors unless suffixed with a
117.Cm b , k , m , g ,
118or
119.Cm t
120which
121denotes byte, kilobyte, megabyte, gigabyte and terabyte respectively.
122.It Fl S Ar sectorsize
123Sectorsize to use for malloc backed device.
124.It Fl x Ar sectors/track
125See the description of the
126.Fl y
127option below.
128.It Fl y Ar heads/cylinder
129For
130.Cm malloc
131or
132.Cm vnode
133backed devices, the
134.Fl x
135and
136.Fl y
137options can be used to specify a synthetic geometry.
138This is useful for constructing bootable images for later download to
139other devices.
140.It Fl o Oo Cm no Oc Ns Ar option
141Set or reset options.
142.Bl -tag -width indent
143.It Oo Cm no Oc Ns Cm async
144For
145.Cm vnode
146backed devices: avoid
147.Dv IO_SYNC
148for increased performance but
149at the risk of deadlocking the entire kernel.
150.It Oo Cm no Oc Ns Cm reserve
151Allocate and reserve all needed storage from the start, rather than as needed.
152.It Oo Cm no Oc Ns Cm cluster
153Enable clustering on this disk.
154.It Oo Cm no Oc Ns Cm compress
155Enable/Disable compression features to reduce memory usage.
156.It Oo Cm no Oc Ns Cm force
157Disable/Enable extra sanity checks to prevent the user from doing something
158that might adversely affect the system.
159.It Oo Cm no Oc Ns Cm readonly
160Enable/Disable readonly mode.
161.El
162.It Fl u Ar unit
163Request a specific unit number for the
164.Xr md 4
165device instead of automatic allocation.
166.El
167.Sh EXAMPLES
168To create a 4 megabyte
169.Xr malloc 9
170backed memory disk.
171The name of the allocated unit will be output on stdout like
172.Dq Li md3 :
173.Pp
174.Dl mdconfig -a -t malloc -s 4m
175.Pp
176To create a disk named
177.Pa /dev/md4
178with
179.Pa /tmp/boot.flp
180as backing:
181.Pp
182.Dl mdconfig -a -t vnode -f /tmp/boot.flp -u 4
183.Pp
184To detach and free all resources used by
185.Pa /dev/md4 :
186.Pp
187.Dl mdconfig -d -u 4
188.Pp
189To create and mount a 128MByte swap backed file system on
190.Pa /tmp :
191.Bd -literal -offset indent
192mdconfig -a -t swap -s 128M -u 10
193newfs -U /dev/md10
194mount /dev/md10 /tmp
195chmod 1777 /tmp
196.Ed
197.Pp
198To create a 5MB file-backed disk:
199.Bd -literal -offset indent
200dd if=/dev/zero of=somebackingfile bs=1k count=5k
201mdconfig -a -t vnode -f somebackingfile -u 0
202bsdlabel -w md0 auto
203newfs md0c
204mount /dev/md0c /mnt
205.Ed
206.Sh SEE ALSO
207.Xr md 4 ,
208.Xr bsdlabel 8 ,
209.Xr fdisk 8 ,
210.Xr mdmfs 8 ,
211.Xr malloc 9
212.Sh HISTORY
213The
214.Nm
215utility first appeared in
216.Fx 5.0
217as a cleaner replacement for the
218.Xr vn 4
219and
220.Xr vnconfig 8
221combo.
222.Sh AUTHORS
223The
224.Nm
225utility was written by
226.An Poul-Henning Kamp
227.Aq phk@FreeBSD.org .
228