]> CyberLeo.Net >> Repos - FreeBSD/releng/7.2.git/blob - sbin/mdconfig/mdconfig.8
Create releng/7.2 from stable/7 in preparation for 7.2-RELEASE.
[FreeBSD/releng/7.2.git] / sbin / mdconfig / mdconfig.8
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 11, 2007
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 v
69 .Op Fl u Ar unit
70 .Sh DESCRIPTION
71 The
72 .Nm
73 utility configures and enables
74 .Xr md 4
75 devices.
76 .Pp
77 Options indicate an action to be performed:
78 .Bl -tag -width indent
79 .It Fl a
80 Attach a memory disk.
81 This will configure and attach a memory disk with the
82 parameters specified and attach it to the system.
83 .It Fl d
84 Detach a memory disk from the system and release all resources.
85 .It Fl t Ar type
86 Select the type of the memory disk.
87 .Bl -tag -width "preload"
88 .It Cm malloc
89 Storage for this type of memory disk is allocated with
90 .Xr malloc 9 .
91 This limits the size to the malloc bucket limit in the kernel.
92 If the
93 .Fl o Cm reserve
94 option is not set, creating and filling a large
95 malloc-backed memory disk is a very easy way to
96 panic a system.
97 .It Cm vnode
98 A file specified with
99 .Fl f Ar file
100 becomes the backing store for this memory disk.
101 .It Cm swap
102 Storage for this type of memory disk is allocated from buffer
103 memory.
104 Pages get pushed out to the swap when the system is under memory
105 pressure, otherwise they stay in the operating memory.
106 Using
107 .Cm swap
108 backing is generally preferable over
109 .Cm malloc
110 backing.
111 .El
112 .It Fl f Ar file
113 Filename to use for the vnode type memory disk. Options
114 .Fl a
115 and
116 .Fl t Ar vnode
117 are implied if not specified.
118 .It Fl l
119 List configured devices.
120 If given with
121 .Fl u ,
122 display details about that particular device.
123 If
124 .Fl v
125 option specified, show all details.
126 .It Fl n
127 When printing md device names, print only the unit number without the
128 md prefix.
129 .It Fl s Ar size
130 Size of the memory disk.
131 .Ar Size
132 is the number of 512 byte sectors unless suffixed with a
133 .Cm b , k , m , g ,
134 or
135 .Cm t
136 which
137 denotes byte, kilobyte, megabyte, gigabyte and terabyte respectively. Options
138 .Fl a
139 and
140 .Fl t Ar swap
141 are implied if not specified.
142 .It Fl S Ar sectorsize
143 Sectorsize to use for malloc backed device.
144 .It Fl x Ar sectors/track
145 See the description of the
146 .Fl y
147 option below.
148 .It Fl y Ar heads/cylinder
149 For
150 .Cm malloc
151 or
152 .Cm vnode
153 backed devices, the
154 .Fl x
155 and
156 .Fl y
157 options can be used to specify a synthetic geometry.
158 This is useful for constructing bootable images for later download to
159 other devices.
160 .It Fl o Oo Cm no Oc Ns Ar option
161 Set or reset options.
162 .Bl -tag -width indent
163 .It Oo Cm no Oc Ns Cm async
164 For
165 .Cm vnode
166 backed devices: avoid
167 .Dv IO_SYNC
168 for increased performance but
169 at the risk of deadlocking the entire kernel.
170 .It Oo Cm no Oc Ns Cm reserve
171 Allocate and reserve all needed storage from the start, rather than as needed.
172 .It Oo Cm no Oc Ns Cm cluster
173 Enable clustering on this disk.
174 .It Oo Cm no Oc Ns Cm compress
175 Enable/Disable compression features to reduce memory usage.
176 .It Oo Cm no Oc Ns Cm force
177 Disable/Enable extra sanity checks to prevent the user from doing something
178 that might adversely affect the system.
179 .It Oo Cm no Oc Ns Cm readonly
180 Enable/Disable readonly mode.
181 .El
182 .It Fl u Ar unit
183 Request a specific unit number for the
184 .Xr md 4
185 device instead of automatic allocation.
186 .El
187 .Sh EXAMPLES
188 To create a 4 megabyte
189 .Xr malloc 9
190 backed memory disk.
191 The name of the allocated unit will be output on stdout like
192 .Dq Li md3 :
193 .Pp
194 .Dl mdconfig -a -t malloc -s 4m
195 .Pp
196 To create a disk named
197 .Pa /dev/md4
198 with
199 .Pa /tmp/boot.flp
200 as backing storage:
201 .Pp
202 .Dl mdconfig -a -t vnode -f /tmp/boot.flp -u 4
203 .Pp
204 To detach and free all resources used by
205 .Pa /dev/md4 :
206 .Pp
207 .Dl mdconfig -d -u 4
208 .Pp
209 To create a 128MByte swap backed disk, initialize an
210 .Xr ffs 7
211 file system on it, and mount it on
212 .Pa /tmp :
213 .Bd -literal -offset indent
214 mdconfig -a -t swap -s 128M -u 10
215 newfs -U /dev/md10
216 mount /dev/md10 /tmp
217 chmod 1777 /tmp
218 .Ed
219 .Pp
220 To create a 5MB file-backed disk
221 .Ns ( Fl a
222 and
223 .Fl t Ar vnode
224 are implied):
225 .Bd -literal -offset indent
226 dd if=/dev/zero of=somebackingfile bs=1k count=5k
227 mdconfig -f somebackingfile -u 0
228 bsdlabel -w md0 auto
229 newfs md0c
230 mount /dev/md0c /mnt
231 .Ed
232 .Pp
233 To create an
234 .Xr md 4
235 device out of an ISO 9660 CD image file
236 .Ns ( Fl a
237 and
238 .Fl t Ar vnode
239 are implied), using the first available
240 .Xr md 4
241 device, and then mount the new memory disk:
242 .Bd -literal -offset indent
243 mount -t cd9660 /dev/`mdconfig -f cdimage.iso` /mnt
244 .Ed
245 .Sh SEE ALSO
246 .Xr md 4 ,
247 .Xr ffs 7 ,
248 .Xr bsdlabel 8 ,
249 .Xr fdisk 8 ,
250 .Xr mdmfs 8 ,
251 .Xr malloc 9
252 .Sh HISTORY
253 The
254 .Nm
255 utility first appeared in
256 .Fx 5.0
257 as a cleaner replacement for the
258 .Xr vn 4
259 and
260 .Xr vnconfig 8
261 combo.
262 .Sh AUTHORS
263 The
264 .Nm
265 utility was written by
266 .An Poul-Henning Kamp
267 .Aq phk@FreeBSD.org .