Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


NEWFS_LFS(8)                System Manager's Manual               NEWFS_LFS(8)

NAME
     newfs_lfs - construct a new LFS file system

SYNOPSIS
     newfs_lfs [newfs_lfs-options] special

DESCRIPTION
     newfs_lfs builds a log-structured file system on the specified special
     device basing its defaults on the information in the disk label.  Before
     running newfs_lfs the disk must be labeled using disklabel(8), the proper
     fstype is 4.4LFS.  Reasonable values for the fsize, bsize, and sgs fields
     are 1024, 8192, and 7 respectively.

     The following options define the general layout policies.

     -A          Attempt to compute the appropriate segment size using the
                 formula 4 * bandwidth * access time.  The disk is tested for
                 twenty seconds to discover its bandwidth and seek time.

     -B logical-segment-size
                 The logical segment size of the file system in bytes.  If not
                 specified, the segment size is computed by left-shifting the
                 partition label's block size by the amount indicated in the
                 partition table's segshift.  If the disklabel indicates a
                 zero block size or segment shift, a compile-time default
                 segment size of 1M is used.

     -b block-size
                 The block size of the file system in bytes.  If not
                 specified, the block size is taken from the partition label,
                 or if the partition label indicates 0, a compile-time default
                 of 8K is used.

     -F          Force creation of an LFS even on a partition labeled as
                 another type.  newfs_lfs will use compile-time default values
                 for block and fragment size, and segment shift, unless these
                 are overridden by command-line flags.

     -f fragment-size
                 The fragment size of the file system in bytes.  If not
                 specified, the fragment size is taken from the partition
                 label, or if the partition label indicates 0, a compile-time
                 default of 1K is used.

     -I interleave
                 Specify the interleave between segments.  The default is
                 zero.

     -i          The size of an inode block, in bytes.  The default is to use
                 the same size as a fragment, or in a v1 filesystem, the same
                 size as a data block.

     -L          Create a log-structured file system (LFS).  This is the
                 default, and this option is provided for compatibility only.

     -M nsegs    Specify lfs_minfreeseg, the number of segments left out of
                 the amount allocated to user data.  A higher number increases
                 cleaner performance, while a lower number gives more usable
                 space.  The default is based on the size of the filesystem,
                 either 5% of the total number of segments or 20 segments,
                 whichever is larger.

     -m free space %
                 The percentage of space reserved from normal users; the
                 minimum free space threshold.  The default value used is 10%.

     -N          Do not actually create the filesystem.

     -O offset   Start the first segment this many sectors from the beginning
                 of the partition.  The default is zero.

     -R nsegs    Specify lfs_resvseg, the number of segments set aside for the
                 exclusive use of the cleaner.  A larger figure reduces the
                 likelihood of running out of clean segments, but if
                 lfs_resvseg is too close to lfs_minfreeseg, the cleaner will
                 run without ceasing when the filesystem becomes close to
                 full.  The default is the larger of 15 or the quantity
                 lfs_minfreeseg / 2 + 1 .

     -r ident    For a v2 filesystem, specify the roll-forward identifier for
                 the filesystem.  This identifier, a 32-bit numeric quantity,
                 should be different from that of any LFS that may previously
                 have existed on the same disk.  By default the identifier is
                 chosen at random.

     -s size     The size of the file system in sectors.

     -v version  Make a filesystem with the specified disk layout version.
                 Valid options are 1 or 2 (the default).  Note, however, that
                 LFS version 1 is deprecated, and 64-bit volumes may not be
                 version 1.

     -w bitwidth
                 Create a filesystem using the specified bit width: 32 or 64.
                 32-bit LFS volumes are limited to 2TB in size; 64-bit LFS
                 volumes are not, but incur additional overhead from having
                 larger metadata structures.  The default is 32-bit for
                 volumes less than 1 TB, and 64-bit for larger volumes.

SEE ALSO
     disktab(5), disklabel(8), diskpart(8), dumplfs(8)

     M. Seltzer, K. Bostic, M. McKusick, and C. Staelin, "An Implementation of
     a Log-Structured File System for UNIX", Proceedings of the Winter 1993
     USENIX Conference, pp. 315-331, January 25-29, 1993.

     J. Matthews, D. Roselli, A. Costello, R. Wang, and T. Anderson,
     "Improving the Performance of Log-Structured File Systems with Adaptive
     Methods", Proceedings of the Sixteenth ACM SOSP, October 1997.

HISTORY
     A newlfs command appeared in 4.4BSD, and was renamed to newfs_lfs for
     NetBSD 1.4.

NetBSD 10.99                   October 13, 2015                   NetBSD 10.99