Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
MDCONFIG(8)		FreeBSD	System Manager's Manual		   MDCONFIG(8)

NAME
     mdconfig -- create	and control memory disks

SYNOPSIS
     mdconfig -a -t type [-n] [-o [no]option] ... [-f file] [-s	size]
	      [-S sectorsize] [-u unit]	[-x sectors/track] [-y heads/cylinder]
     mdconfig -d -u unit [-o [no]force]
     mdconfig -r -u unit -s size [-o [no]force]
     mdconfig -l [-n] [-v] [-f file] [-u unit]
     mdconfig file

DESCRIPTION
     The mdconfig utility creates and controls md(4) devices.

     Options indicate an action	to be performed:

     -a	     Attach a memory disk.  This will configure	and attach a memory
	     disk with the parameters specified	and attach it to the system.
	     If	the -u unit option is not provided, the	newly created device
	     name will be printed on stdout.

     -d	     Detach a memory disk from the system and release all resources.

     -r	     Resize a memory disk.

     -t	type
	     Select the	type of	the memory disk.

	     malloc  Storage for this type of memory disk is allocated with
		     malloc(9).	 This limits the size to the malloc bucket
		     limit in the kernel.  If the -o reserve option is not
		     set, creating and filling a large malloc-backed memory
		     disk is a very easy way to	panic the system.

	     vnode   A file specified with -f file becomes the backing store
		     for this memory disk.

	     swap    Storage for this type of memory disk is allocated from
		     buffer memory.  Pages get pushed out to swap when the
		     system is under memory pressure, otherwise	they stay in
		     the operating memory.  Using swap backing is generally
		     preferred instead of using	malloc backing.

	     null    Bitsink; all writes do nothing, all reads return zeroes.

     -f	file
	     Filename to use for the vnode type	memory disk.  The -a and -t
	     vnode options are implied if not specified.

     -l	     List configured devices.  If given	with -u, display details about
	     that particular device.  If given with -f file, display md(4)
	     device names of which file	is used	as the backing store.  If both
	     of	-u and -f options are specified, display devices which match
	     the two conditions.  If the -v option is specified, show all
	     details.

     -n	     When printing md(4) device	names, print only the unit number
	     without the md(4) prefix.

     -s	size
	     Size of the memory	disk.  Size is the number of 512 byte sectors
	     unless suffixed with a b, k, m, g,	t, or p	which denotes byte,
	     kilobyte, megabyte, gigabyte, terabyte and	petabyte respectively.
	     When used without the -r option, the -a and -t swap options are
	     implied if	not specified.

     -S	sectorsize
	     Sectorsize	to use for the memory disk, in bytes.

     -x	sectors/track
	     See the description of the	-y option below.

     -y	heads/cylinder
	     For malloc	or vnode backed	devices, the -x	and -y options can be
	     used to specify a synthetic geometry.  This is useful for con-
	     structing bootable	images for later download to other devices.

     -o	[no]option
	     Set or reset options.

	     [no]async
		     For vnode backed devices: avoid IO_SYNC for increased
		     performance but at	the risk of deadlocking	the entire
		     kernel.

	     [no]reserve
		     Allocate and reserve all needed storage from the start,
		     rather than as needed.

	     [no]cluster
		     Enable clustering on this disk.

	     [no]compress
		     Enable/disable compression	features to reduce memory
		     usage.

	     [no]force
		     Disable/enable extra sanity checks	to prevent the user
		     from doing	something that might adversely affect the sys-
		     tem.  This	can be used with the -d	flag to	forcibly
		     destroy an	md(4) disk that	is still in use.

	     [no]readonly
		     Enable/disable readonly mode.

     -u	unit
	     Request a specific	unit number or device name for the md(4)
	     device instead of automatic allocation.  If a device name is
	     specified,	it must	be start with ``md'' followed by the unit num-
	     ber.

     The last form, mdconfig file, is provided for convenience as an abbrevia-
     tion of mdconfig -a -t vnode -f file.

EXAMPLES
     Create a disk with	/tmp/boot.flp as backing storage.  The name of the
     allocated unit will be printed on stdout, such as ``md0'':

	   mdconfig /tmp/boot.flp

     Create a 1	gigabyte swap backed memory disk named ``md3'':

	   mdconfig -s 1g -u md3

     Detach and	free all resources used	by /dev/md3:

	   mdconfig -du	md3

     Show detailed information on current memory disks:

	   mdconfig -lv

     Resize the	``md3''	memory disk to 2 gigabytes:

	   mdconfig -rs	2g -u md3

     Create a 1	gigabyte swap backed disk, initialize an ffs(7)	file system on
     it, and mount it on /tmp:

	   mdconfig -s 1g -u md10
	   newfs -U /dev/md10
	   mount /dev/md10 /tmp
	   chmod 1777 /tmp

     Create a memory disk out of an ISO	9660 CD	image file, using the first
     available md(4) device, and then mount it:

	   mount -t cd9660 /dev/`mdconfig -f cdimage.iso` /mnt

     Create a file-backed device from a	hard disk image	that begins with 512K
     of	raw header information.	 gnop(8) is used to skip over the header
     information, positioning md1.nop to the start of the filesystem in	the
     image.

	   mdconfig -u md1 -f diskimage.img
	   gnop	create -o 512K md1
	   mount /dev/md1.nop /mnt

SEE ALSO
     md(4), ffs(7), gpart(8), mdmfs(8),	malloc(9)

HISTORY
     The mdconfig utility first	appeared in FreeBSD 5.0	as a cleaner replace-
     ment for the vn(4)	and vnconfig(8)	combo.

AUTHORS
     The mdconfig utility was written by Poul-Henning Kamp <phk@FreeBSD.org>.

FreeBSD	10.3		       October 10, 2015			  FreeBSD 10.3

NAME | SYNOPSIS | DESCRIPTION | EXAMPLES | SEE ALSO | HISTORY | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=mdconfig&sektion=8&manpath=FreeBSD+10.3-RELEASE>

home | help