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