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

FreeBSD Manual Pages

  
 
  

home | help
NEWFS(8)		    System Manager's Manual		      NEWFS(8)

NAME
       newfs --	construct a new	UFS1/UFS2 file system

SYNOPSIS
       newfs  [-EJNUjlnt]  [-L	volname] [-O filesystem-type] [-S sector-size]
	     [-T     disktype]	   [-a	   maxcontig]	  [-b	   block-size]
	     [-c  blocks-per-cylinder-group]  [-d max-extent-size] [-e maxbpg]
	     [-f  frag-size]  [-g  avgfilesize]	 [-h  avgfpdir]	  [-i	bytes]
	     [-k  held-for-metadata-blocks]  [-m free-space] [-o optimization]
	     [-p partition] [-r	reserved] [-s size] special

DESCRIPTION
       The newfs utility is used to initialize and clear file  systems	before
       first  use.   The  newfs	 utility builds	a file system on the specified
       special file.  (We often	refer to the "special file" as the "disk", al-
       though the special file need not	be a physical disk.  In	fact, it  need
       not  even  be special.)	Typically the defaults are reasonable, however
       newfs has numerous options to allow  the	 defaults  to  be  selectively
       overridden.

       The following options define the	general	layout policies:

       -E      Erase  the  content  of	the disk before	making the filesystem.
	       The reserved area in front of  the  superblock  (for  bootcode)
	       will  not  be erased.  Erasing is only relevant to flash-memory
	       or thinly provisioned devices.  Erasing may take	a  long	 time.
	       If  the	device	does  not support BIO_DELETE, the command will
	       fail.

       -J      Enable journaling on the	new file  system  via  gjournal.   See
	       gjournal(8) for details.

       -L volname
	       Add a volume label to the new file system.

       -N      Cause  the file system parameters to be printed out without re-
	       ally creating the file system.

       -O filesystem-type
	       Use 1 to	specify	that a UFS1 format file	system be built; use 2
	       to specify that a UFS2 format file system be  built.   The  de-
	       fault format is UFS2.

       -T disktype
	       For backward compatibility.

       -U      Enable soft updates on the new file system.

       -a maxcontig
	       Specify	the  maximum  number of	contiguous blocks that will be
	       laid out	before forcing a rotational delay.  The	default	 value
	       is  16.	 See tunefs(8) for more	details	on how to set this op-
	       tion.

       -b block-size
	       The block size of the file system, in  bytes.   It  must	 be  a
	       power  of 2.  The default size is 32768 bytes, and the smallest
	       allowable size is 4096 bytes.  The optimal block:fragment ratio
	       is 8:1.	Other ratios are possible, but	are  not  recommended,
	       and may produce poor results.

       -c blocks-per-cylinder-group
	       The  number of blocks per cylinder group	in a file system.  The
	       default is to compute the maximum allowed by the	other  parame-
	       ters.  This value is dependent on a number of other parameters,
	       in particular the block size and	the number of bytes per	inode.

       -d max-extent-size
	       The  file system	may choose to store large files	using extents.
	       This parameter specifies	the largest extent size	 that  may  be
	       used.   The  default value is the file system blocksize.	 It is
	       presently limited to a maximum value of 16 times	the file  sys-
	       tem blocksize and a minimum value of the	file system blocksize.

       -e maxbpg
	       Indicate	the maximum number of blocks any single	file can allo-
	       cate out	of a cylinder group before it is forced	to begin allo-
	       cating  blocks  from  another  cylinder	group.	The default is
	       about one quarter of the	total blocks in	a cylinder group.  See
	       tunefs(8) for more details on how to set	this option.

       -f frag-size
	       The fragment size of the	file system in bytes.  It  must	 be  a
	       power   of   two	 ranging  in  value  between  blocksize/8  and
	       blocksize.  The default is 4096 bytes.

       -g avgfilesize
	       The expected average file size for the file system.

       -h avgfpdir
	       The expected average number of files per	directory on the  file
	       system.

       -i bytes
	       Specify	the density of inodes in the file system.  The default
	       is to create an inode for every (2 * frag-size) bytes  of  data
	       space.	If fewer inodes	are desired, a larger number should be
	       used; to	create more inodes a smaller number should  be	given.
	       One inode is required for each distinct file, so	this value ef-
	       fectively specifies the average file size on the	file system.

       -j      Enable  soft  updates  journaling on the	new file system.  This
	       flag is implemented by running the tunefs(8) utility  found  in
	       the user's $PATH.

       -k held-for-metadata-blocks
	       Set  the	amount of space	to be held for metadata	blocks in each
	       cylinder	group.	When set, the file system preference  routines
	       will try	to save	the specified amount of	space immediately fol-
	       lowing the inode	blocks in each cylinder	group for use by meta-
	       data  blocks.   Clustering the metadata blocks speeds up	random
	       file access and decreases the running time of fsck(8).  By  de-
	       fault newfs sets	it to half of the space	reserved to minfree.

       -l      Enable multilabel MAC on	the new	file system.

       -m free-space
	       The percentage of space reserved	from normal users; the minimum
	       free  space  threshold.	 The  default value used is defined by
	       MINFREE from <ufs/ffs/fs.h>, currently 8%.  See	tunefs(8)  for
	       more details on how to set this option.

       -n      Do  not	create	a .snap	directory on the new file system.  The
	       resulting file system will not support snapshot generation,  so
	       dump(8)	in  live mode and background fsck(8) will not function
	       properly.  The traditional fsck(8)  and	offline	 dump(8)  will
	       work on the file	system.	 This option is	intended primarily for
	       memory or vnode-backed file systems that	do not require dump(8)
	       or fsck(8) support.

       -o optimization
	       (space  or  time).  The file system can either be instructed to
	       try to minimize the time	spent allocating blocks, or to try  to
	       minimize	 the space fragmentation on the	disk.  If the value of
	       minfree (see above) is less than	8%, the	default	is to optimize
	       for space; if the value of minfree is greater than or equal  to
	       8%,  the	 default  is  to optimize for time.  See tunefs(8) for
	       more details on how to set this option.

       -p partition
	       The partition name (a..h) you want to use in case the  underly-
	       ing  image  is  a file, so you do not have access to individual
	       partitions through the filesystem.  Can also be used with a de-
	       vice, e.g., newfs  -p  f	 /dev/da1s3  is	 equivalent  to	 newfs
	       /dev/da1s3f.

       -r reserved
	       The  size, in sectors, of reserved space	at the end of the par-
	       tition specified	in special.  This space	will not  be  occupied
	       by  the	file system; it	can be used by other consumers such as
	       geom(4).	 Defaults to 0.

       -s size
	       The size	of the file system in sectors.	This value defaults to
	       the size	of the raw partition specified	in  special  less  the
	       reserved	 space	at  its	end (see -r).  A size of 0 can also be
	       used to choose the default value.  A valid size value cannot be
	       larger than the default one, which means	that the  file	system
	       cannot extend into the reserved space.

       -t      Turn  on	the TRIM enable	flag.  If enabled, and if the underly-
	       ing device supports the BIO_DELETE  command,  the  file	system
	       will  send  a  delete request to	the underlying device for each
	       freed block.  The trim enable flag is typically set for	flash-
	       memory devices to reduce	write amplification which reduces wear
	       on write-limited	flash-memory and often improves	long-term per-
	       formance.   Thinly provisioned storage also benefits by return-
	       ing unused blocks to the	global pool.

       The following options override the standard sizes for the  disk	geome-
       try.   Their  default  values  are taken	from the disk label.  Changing
       these defaults is useful	only when using	newfs to build a  file	system
       whose  raw  image  will	eventually be used on a	different type of disk
       than the	one on which it	is initially created (for example on a	write-
       once disk).  Note that changing any of these values from	their defaults
       will  make  it impossible for fsck(8) to	find the alternate superblocks
       if the standard superblock is lost.

       -S sector-size
	       The size	of a sector in bytes (almost never anything but	512).

EXAMPLES
	     newfs /dev/ada3s1a

       Creates a new ufs file system on	ada3s1a.  The newfs utility will use a
       block size of 32768 bytes, a  fragment  size  of	 4096  bytes  and  the
       largest	possible  number  of blocks per	cylinders group.  These	values
       tend to produce better performance for most applications	than the  his-
       torical	defaults  (8192	 byte block size and 1024 byte fragment	size).
       This large fragment size	may lead to much wasted	space on file  systems
       that contain many small files.

SEE ALSO
       fdformat(1),   geom(4),	 disktab(5),  fs(5),  camcontrol(8),  dump(8),
       dumpfs(8),  fsck(8),  gpart(8),	gjournal(8),   growfs(8),   gvinum(8),
       makefs(8), mount(8), tunefs(8)

       M.  McKusick, W.	Joy, S.	Leffler, and R.	Fabry, "A Fast File System for
       UNIX", ACM Transactions on Computer Systems 2, 3,  pp  181-197,	August
       1984, (reprinted	in the BSD System Manager's Manual).

HISTORY
       The newfs utility appeared in 4.2BSD.

FreeBSD	12.0			 July 7, 2017			      NEWFS(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=newfs&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help