xref: /freebsd/sbin/mdconfig/mdconfig.8 (revision 6ccbb635d7b228a34d0eb8bb16b767a233c21166)
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 December 31, 2000
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
56.Fl o
57.Oo Cm no Oc Ns Ar option
58.Oc
59.Op Fl s Ar size
60.Op Fl f Ar file
61.Op Fl S Ar sectorsize
62.Op Fl u Ar unit
63.Op Fl x Ar sectors/track
64.Op Fl y Ar heads/cyl
65.Nm
66.Fl d
67.Fl u Ar unit
68.Nm
69.Fl l
70.Op Fl n
71.Op Fl u Ar unit
72.Sh DESCRIPTION
73The
74.Nm
75utility configures and enables
76.Xr md 4
77devices.
78.Pp
79Options indicate an action to be performed:
80.Bl -tag -width indent
81.It Fl a
82Attach a memory disk.
83This will configure and attach a memory disk with the
84parameters specified and attach it to the system.
85.It Fl d
86Detach a memory disk from the system and release all resources.
87.It Fl t Ar type
88Select the type of the memory disk.
89.Bl -tag -width "preload"
90.It Cm malloc
91Storage for this type of memory disk is allocated with
92.Xr malloc 9 .
93This limits the size to the malloc bucket limit in the kernel.
94If the
95.Fl o Cm reserve
96option is not set, creating and filling a large
97malloc-backed memory disk is a very easy way to
98panic a system.
99.It Cm vnode
100A file specified with
101.Fl f Ar file
102becomes the backingstore for this memory disk.
103.It Cm swap
104swapspace is used to back this memory disk.
105.El
106.It Fl f Ar file
107Filename to use for the vnode type memory disk.
108.It Fl l
109List information about configured
110.Xr md 4
111devices.  If the
112.Fl u
113option is used in conjuction with this, the output is limited to
114information on the specified device.
115.It Fl n
116When printing md device names, print only the unit number without the
117md prefix.
118.It Fl s Ar size
119Size of the memory disk.
120.Ar Size
121is the number of 512 byte sectors unless suffixed with a
122.Cm k , m ,
123or
124.Cm g
125which
126denotes kilobyte, megabyte and gigabyte respectively.
127.It Fl S Ar sectorsize
128Sectorsize to use for malloc backed device.
129.It Fl x Ar sectors/track
130See description of
131.Fl y
132below.
133.It Fl y Ar heads/cylinder
134For malloc or vnode backed devices, the
135.Fl x
136and
137.Fl y
138options can be used to specify a synthetic geometry.
139This is useful for constructing bootable images for later download to
140other devices.
141.It Fl o Oo Cm no Oc Ns Ar option
142Set or reset options.
143.Bl -tag -width indent
144.It Oo Cm no Oc Ns Cm async
145For vnode backed devices:  avoid IO_SYNC for increased performance but
146at the risk of deadlocking the entire kernel.
147.It Oo Cm no Oc Ns Cm reserve
148Allocate and reserve all needed storage from the start, rather than as needed.
149.It Oo Cm no Oc Ns Cm cluster
150Enable clustering on this disk.
151.It Oo Cm no Oc Ns Cm compress
152Enable/Disable compression features to reduce memory usage.
153.It Oo Cm no Oc Ns Cm force
154Disable/Enable extra sanity checks to prevent the user from doing something
155that might adversely affect the system.
156.It Oo Cm no Oc Ns Cm readonly
157Enable/Disable readonly mode.
158.El
159.It Fl u Ar unit
160Request a specific unit number for the
161.Xr md 4
162device instead of automatic allocation.
163.El
164.Sh EXAMPLES
165To create a 4 megabyte
166.Xr malloc 9
167backed memory disk.
168The name of the allocated unit will be output on stdout like
169.Dq Li md3 :
170.Pp
171.Dl mdconfig -a -t malloc -s 4m
172.Pp
173To create a disk named
174.Pa /dev/md4
175with
176.Pa /tmp/boot.flp
177as backing:
178.Pp
179.Dl mdconfig -a -t vnode -f /tmp/boot.flp -u 4
180.Pp
181To detach and free all resources used by
182.Pa /dev/md4 :
183.Pp
184.Dl mdconfig -d -u 4
185.Pp
186To create and mount a 128MByte swap backed file system on
187.Pa /tmp :
188.Bd -literal -offset indent
189mdconfig -a -t swap -s 128M -u 10
190newfs -U /dev/md10
191mount /dev/md10 /tmp
192chmod 1777 /tmp
193.Ed
194.Pp
195To create a 5MB file-backed disk:
196.Bd -literal -offset indent
197dd if=/dev/zero of=somebackingfile bs=1k count=5k
198mdconfig -a -t vnode -f somebackingfile -u 0
199bsdlabel -w md0 auto
200newfs md0c
201mount /dev/md0c /mnt
202.Ed
203.Sh SEE ALSO
204.Xr md 4 ,
205.Xr bsdlabel 8 ,
206.Xr fdisk 8 ,
207.Xr mdmfs 8 ,
208.Xr malloc 9
209.Sh HISTORY
210The
211.Nm
212utility first appeared in
213.Fx 5.0
214as a cleaner replacement for the
215.Xr vn 4
216and
217.Xr vnconfig 8
218combo.
219.Sh AUTHORS
220The
221.Nm
222utility was written by
223.An Poul-Henning Kamp
224.Aq phk@FreeBSD.org .
225