TUNEFS(8) BSD System Manager's Manual TUNEFS(8)
NAME
tunefs -- tune up an existing file system
SYNOPSIS
tunefs [-AFN] [-e maxbpg] [-g avgfilesize] [-h avgfpdir] [-l logsize] [-m minfree] [-o optimize_preference] [-q quota] special | filesys
DESCRIPTION
tunefs is designed to change the dynamic parameters of a file system which affect the layout policies.
The following options are supported by tunefs:
-A Cause the values to be updated in all the alternate superblocks instead of just the standard superblock. If this option is not used,
then use of a backup superblock by fsck(8) will lose anything changed by tunefs. -A is ignored when -N is specified.
-F Indicates that special is a file system image, rather than a device name or file system mount point. special will be accessed
'as-is'.
-N Display all the settable options (after any changes from the tuning options) but do not cause any of them to be changed.
-e maxbpg
This indicates the maximum number of blocks any single file can allocate out of a cylinder group before it is forced to begin allo-
cating blocks from another cylinder group. Typically this value is set to about one quarter of the total blocks in a cylinder group.
The intent is to prevent any single file from using up all the blocks in a single cylinder group, thus degrading access times for all
files subsequently allocated in that cylinder group. The effect of this limit is to cause big files to do long seeks more frequently
than if they were allowed to allocate all the blocks in a cylinder group before seeking elsewhere. For file systems with exclusively
large files, this parameter should be set higher.
-g avgfilesize
This specifies the expected average file size.
-h avgfpdir
This specifies the expected number of files per directory.
-l logsize
This value specifies the size of the in-filesystem journaling log file. The default journaling log file size is described in
wapbl(4). Specifying a size of zero will cause the in-filesystem journaling log file to be removed the next time the filesystem is
mounted. The size of an existing in-filesystem journaling log file can not be changed.
-m minfree
This value specifies the percentage of space held back from normal users; the minimum free space threshold. The default value is set
during creation of the filesystem, see newfs(8). This value can be set to zero, however up to a factor of three in throughput will
be lost over the performance obtained at a 5% threshold. Note that if the value is raised above the current usage level, users will
be unable to allocate files until enough files have been deleted to get under the higher threshold.
-o optimize_preference
The file system can either try to minimize the time spent allocating blocks, or it can attempt to minimize the space fragmentation on
the disk. If the value of minfree (see above) is less than 5%, then the file system should optimize for space to avoid running out
of full sized blocks. For values of minfree greater than or equal to 5%, fragmentation is unlikely to be problematical, and the file
system can be optimized for time.
optimize_preference can be specified as either space or time.
-q quota
enable or disable a quota. quota can be one of user, group, nouser or nogroup to enable or disable the specified quota type. Multi-
ple -q can be used to enable/disable all types at once.
After enabling a quota, fsck_ffs(8) has to be run to compute the correct quota values.
SEE ALSO
wapbl(4), fs(5), dumpfs(8), fsck_ffs(8), newfs(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, SMM:5).
HISTORY
The tunefs command appeared in 4.2BSD.
BUGS
This program should work on mounted and active file systems. Because the super-block is not kept in the buffer cache, the changes will only
take effect if the program is run on unmounted file systems. To change the root file system, the system must be rebooted after the file sys-
tem is tuned.
You can tune a file system, but you can't tune a fish.
BSD
December 15, 2010 BSD