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] [-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 the swap when
                      the system is under memory pressure, otherwise they stay
                      in the operating memory.  Using swap backing is
                      generally preferable over malloc backing.

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

     -l      List configured devices.  If given with -u, display details about
             that particular device.  If -v option specified, show all

     -n      When printing md device names, print only the unit number without
             the md 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. Options
             -a and -t swap 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.

     To create a 4 megabyte malloc(9) backed memory disk.  The name of the
     allocated unit will be output on stdout like ``md3'':

           mdconfig -a -t malloc -s 4m

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

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

     To detach and free all resources used by /dev/md4:

           mdconfig -d -u 4

     To 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

     To 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

     To 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

     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 27, 2012         FreeBSD 11.0-PRERELEASE


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

home | help