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
MAKEFS(8)		FreeBSD	System Manager's Manual		     MAKEFS(8)

     makefs -- create a	file system image from a directory tree

     makefs [-x] [-B byte-order] [-b free-blocks] [-d debug-mask]
	    [-F	specfile] [-f free-files] [-M minimum-size] [-m	maximum-size]
	    [-N	userdb-dir] [-o	fs-options] [-S	sector-size] [-s image-size]
	    [-t	fs-type] image-file directory

     The utility makefs	creates	a file system image into image-file from the
     directory tree directory.	No special devices or privileges are required
     to	perform	this task.

     The options are as	follows:

     -B	byte-order
	   Set the byte	order of the image to byte-order.  Valid byte orders
	   are `4321', `big', or `be' for big endian, and `1234', `little', or
	   `le'	for little endian.  Some file systems may have a fixed byte
	   order; in those cases this argument will be ignored.

     -b	free-blocks
	   Ensure that a minimum of free-blocks	free blocks exist in the
	   image.  An optional `%' suffix may be provided to indicate that
	   free-blocks indicates a percentage of the calculated	image size.

     -d	debug-mask
	   Enable various levels of debugging, depending upon which bits are
	   set in debug-mask.  XXX: document these

     -F	specfile
	   Use specfile	as an mtree(8) `specfile' specification.

	   If a	specfile entry exists in the underlying	file system, its per-
	   missions and	modification time will be used unless specifically
	   overridden by the specfile.	An error will be raised	if the type of
	   entry in the	specfile conflicts with	that of	an existing entry.

	   In the opposite case	(where a specfile entry	does not have an entry
	   in the underlying file system) the following	occurs:	If the spec-
	   file	entry is marked	optional, the specfile entry is	ignored.  Oth-
	   erwise, the entry will be created in	the image, and it is necessary
	   to specify at least the following parameters	in the specfile: type,
	   mode, gname,	or gid,	and uname or uid, and link (in the case	of
	   symbolic links).  If	time isn't provided, the current time will be
	   used.  If flags isn't provided, the current file flags will be
	   used.  Missing regular file entries will be created as zero-length

     -f	free-files
	   Ensure that a minimum of free-files free files (inodes) exist in
	   the image.  An optional `%' suffix may be provided to indicate that
	   free-files indicates	a percentage of	the calculated image size.

     -M	minimum-size
	   Set the minimum size	of the file system image to minimum-size.

     -m	maximum-size
	   Set the maximum size	of the file system image to maximum-size.  An
	   error will be raised	if the target file system needs	to be larger
	   than	this to	accommodate the	provided directory tree.

     -N	dbdir
	   Use the user	database text file master.passwd and group database
	   text	file group from	dbdir, rather than using the results from the
	   system's getpwnam(3)	and getgrnam(3)	(and related) library calls.

     -o	fs-options
	   Set file system specific options.  fs-options is a comma separated
	   list	of options.  Valid file	system specific	options	are detailed

     -S	sector-size
	   Set the file	system sector size to sector-size.  Defaults to	512.

     -s	image-size
	   Set the size	of the file system image to image-size.

     -t	fs-type
	   Create an fs-type file system image.	 The following file system
	   types are supported:

		 ffs	 BSD fast file system (default).

		 cd9660	 ISO 9660 file system.

     -x	   Exclude file	system nodes not explicitly listed in the specfile.

     Where sizes are specified,	a decimal number of bytes is expected.	Two or
     more numbers may be separated by an ``x'' to indicate a product.  Each
     number may	have one of the	following optional suffixes:
	   b	Block; multiply	by 512
	   k	Kibi; multiply by 1024 (1 KiB)
	   m	Mebi; multiply by 1048576 (1 MiB)
	   g	Gibi; multiply by 1073741824 (1	GiB)
	   t	Tebi; multiply by 1099511627776	(1 TiB)
	   w	Word; multiply by the number of	bytes in an integer

   FFS-specific	options
     ffs images	have ffs-specific optional parameters that may be provided.
     Each of the options consists of a keyword,	an equal sign (`='), and a
     value.  The following keywords are	supported:

	   avgfilesize	 Expected average file size.
	   avgfpdir	 Expected number of files per directory.
	   bsize	 Block size.
	   density	 Bytes per inode.
	   fsize	 Fragment size.
	   maxbpg	 Maximum blocks	per file in a cylinder group.
	   minfree	 Minimum % free.
	   optimization	 Optimization preference; one of `space' or `time'.
	   extent	 Maximum extent	size.
	   maxbpcg	 Maximum total number of blocks	in a cylinder group.
	   version	 UFS version.  1 for FFS (default), 2 for UFS2.

   CD9660-specific options
     cd9660 images have	ISO9660-specific optional parameters that may be pro-
     vided.  The arguments consist of a	keyword	and, optionally, an equal sign
     (`='), and	a value.  The following	keywords are supported:

	   allow-deep-trees	 Allow the directory structure to exceed the
				 maximum specified in the spec.
	   allow-max-name	 Allow 37 instead of 33	characters for file-
				 names by omitting the version id.
	   allow-multidot	 Allow multiple	dots in	a filename.
	   applicationid	 Application ID	of the image.
	   archimedes		 Use the `ARCHIMEDES' extension	to encode RISC
				 OS metadata.
	   chrp-boot		 Write an MBR partition	table to the image to
				 allow older CHRP hardware to boot.
	   boot-load-segment	 Set load segment for the boot image.
	   bootimage		 Filename of a boot image in the format
				 ``sysid;filename'', where ``sysid'' is	one of
				 `i386', `mac68k', `macppc', or	`powerpc'.
	   generic-bootimage	 Load a	generic	boot image into	the first 32K
				 of the	cd9660 image.
	   hard-disk-boot	 Boot image is a hard disk image.
	   keep-bad-images	 Don't throw away images whose write was
				 aborted due to	an error.  For debugging pur-
	   label		 Label name of the image.
	   no-boot		 Boot image is not bootable.
	   no-emul-boot		 Boot image is a ``no emulation'' ElTorito
	   no-trailing-padding	 Do not	pad the	image (apparently Linux	needs
				 the padding).
	   preparer		 Preparer ID of	the image.
	   publisher		 Publisher ID of the image.
	   rockridge		 Use RockRidge extensions (for longer file-
				 names,	etc.).
	   volumeid		 Volume	set identifier of the image.

     mtree(8), newfs(8)

     The makefs	utility	appeared in NetBSD 1.6.

     Luke Mewburn <> (original program)
     Daniel Watt,
     Walter Deignan,
     Ryan Gabrys,
     Alan Perez-Rathke,
     Ram Vedam (cd9660 support)

FreeBSD	9.2		       January 10, 2009			   FreeBSD 9.2


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

home | help