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)

     mdconfig - configure and enable memory disks

     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 -l [-n] [-v] [-f file] [-u unit]
     mdconfig file

     The mdconfig utility configures and enables 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.

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

     -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 a 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.

     -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

     -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, or t which denotes byte,
             kilobyte, megabyte, gigabyte and terabyte respectively.  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
             constructing bootable images for later download to other devices.

     -o [no]option
             Set or reset options.

                     For vnode backed devices: avoid IO_SYNC for increased
                     performance but at the risk of deadlocking the entire

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

                     Enable clustering on this disk.

                     Enable/disable compression features to reduce memory

                     Disable/enable extra sanity checks to prevent the user
                     from doing something that might adversely affect the

                     Enable/disable readonly mode.

     -u unit
             Request a specific unit number for the md(4) device instead of
             automatic allocation.

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

     Create a 4 megabyte malloc(9) backed memory disk.  The name of the
     allocated unit will be printed on stdout, such as ``md3'':

           mdconfig -a -t malloc -s 4m

     Create a disk named /dev/md4 with /tmp/boot.flp as backing storage:

           mdconfig -a -t vnode -f /tmp/boot.flp -u 4

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

           mdconfig -d -u 4

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

           mdconfig -a -t swap -s 128M -u 10
           newfs -U /dev/md10
           mount /dev/md10 /tmp
           chmod 1777 /tmp

     Create a 5MB file-backed disk (-a and -t vnode are implied):

           dd if=/dev/zero of=somebackingfile bs=1k count=5k
           mdconfig -f somebackingfile -u 0
           bsdlabel -w md0 auto
           newfs md0c
           mount /dev/md0c /mnt

     Create an md(4) device out of an ISO 9660 CD image file (-a and -t vnode
     are implied), using the first available md(4) device, and then mount the
     new memory disk:

           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

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

     md(4), ffs(7), bsdlabel(8), fdisk(8), mdmfs(8), malloc(9)

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

     The mdconfig utility was written by Poul-Henning Kamp <>.

FreeBSD 11.0-PRERELEASE          June 20, 2013         FreeBSD 11.0-PRERELEASE


Want to link to this manual page? Use this URL:

home | help