1.\" Copyright (c) 1983, 1991, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. All advertising materials mentioning features or use of this software 13.\" must display the following acknowledgement: 14.\" This product includes software developed by the University of 15.\" California, Berkeley and its contributors. 16.\" 4. Neither the name of the University nor the names of its contributors 17.\" may be used to endorse or promote products derived from this software 18.\" without specific prior written permission. 19.\" 20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30.\" SUCH DAMAGE. 31.\" 32.\" @(#)tunefs.8 8.2 (Berkeley) 12/11/93 33.\" $FreeBSD: src/sbin/tunefs/tunefs.8,v 1.11.2.6 2003/01/23 11:14:02 maxim Exp $ 34.\" $DragonFly: src/sbin/tunefs/tunefs.8,v 1.3 2006/02/17 19:33:33 swildner Exp $ 35.\" 36.Dd December 11, 1993 37.Dt TUNEFS 8 38.Os 39.Sh NAME 40.Nm tunefs 41.Nd tune up an existing filesystem 42.Sh SYNOPSIS 43.Nm 44.Op Fl A 45.Op Fl a Ar maxcontig 46.Op Fl d Ar rotdelay 47.Op Fl e Ar maxbpg 48.Op Fl f Ar avgfilesize 49.Op Fl m Ar minfree 50.Bk -words 51.Op Fl n Ar enable | disable 52.Op Fl o Ar space | time 53.Op Fl p 54.Op Fl s Ar avgfpdir 55.Ek 56.Op Ar special | Ar filesystem 57.Sh DESCRIPTION 58.Nm Tunefs 59is designed to change the dynamic parameters of a filesystem 60which affect the layout policies. 61The parameters which are to be changed are indicated by the flags 62given below: 63.Bl -tag -width indent 64.It Fl A 65The filesystem has several backups of the super-block. Specifying 66this option will cause all backups to be modified as well as the 67primary super-block. This is potentially dangerous - use with caution. 68.It Fl a Ar maxcontig 69Specify the maximum number of contiguous blocks that will 70be laid out before forcing a rotational delay (see 71.Fl d 72below). 73The default value is one, since most device drivers require 74an interrupt per disk transfer. 75Device drivers that can chain several buffers together in a single 76transfer should set this to the maximum chain length. 77.It Fl d Ar rotdelay 78Specify the expected time (in milliseconds) 79to service a transfer completion 80interrupt and initiate a new transfer on the same disk. 81It is used to decide how much rotational spacing to place between 82successive blocks in a file. 83.It Fl e Ar maxbpg 84Indicate the maximum number of blocks any single file can 85allocate out of a cylinder group before it is forced to begin 86allocating blocks from another cylinder group. 87Typically this value is set to about one quarter of the total blocks 88in a cylinder group. 89The intent is to prevent any single file from using up all the 90blocks in a single cylinder group, 91thus degrading access times for all files subsequently allocated 92in that cylinder group. 93The effect of this limit is to cause big files to do long seeks 94more frequently than if they were allowed to allocate all the blocks 95in a cylinder group before seeking elsewhere. 96For filesystems with exclusively large files, 97this parameter should be set higher. 98.It Fl f Ar avgfilezsize 99Specify the expected average file size. 100.It Fl m Ar minfree 101Specify the percentage of space held back 102from normal users; the minimum free space threshold. 103The default value used is 8%. 104This value can be set to zero, however up to a factor of three 105in throughput will be lost over the performance obtained at a 10% 106threshold. 107Settings of 5% and less force space optimization to 108always be used which will greatly increase the overhead for file 109writes. 110Note that if the value is raised above the current usage level, 111users will be unable to allocate files until enough files have 112been deleted to get under the higher threshold. 113.It Fl n Ar enable | disable 114Turn on/off soft updates. 115.It Fl o Ar space | time 116The filesystem can either try to minimize the time spent 117allocating blocks, or it can attempt to minimize the space 118fragmentation on the disk. 119Optimization for space has much 120higher overhead for file writes. 121The kernel normally changes the preference automatically as 122the percent fragmentation changes on the filesystem. 123.It Fl p 124Show a summary of what the current tunable settings 125are on the selected filesystem. More detailed information can be 126obtained in the 127.Xr dumpfs 8 128manual page. 129.It Fl s Ar avgfpdir 130Specify the expected number of files per directory. 131.El 132.Sh FILES 133.Bl -tag -width /etc/fstab -compact 134.It Pa /etc/fstab 135read this to determine the device file for a 136specified mount point. 137.El 138.Sh SEE ALSO 139.Xr fs 5 , 140.Xr dumpfs 8 , 141.Xr newfs 8 142.Rs 143.%A M. McKusick 144.%A W. Joy 145.%A S. Leffler 146.%A R. Fabry 147.%T "A Fast File System for UNIX" 148.%J "ACM Transactions on Computer Systems 2" 149.%N 3 150.%P pp 181-197 151.%D August 1984 152.%O "(reprinted in the BSD System Manager's Manual, SMM:5)" 153.Re 154.Sh HISTORY 155The 156.Nm 157command appeared in 158.Bx 4.2 . 159.Sh BUGS 160This program should work on mounted and active filesystems. 161Because the super-block is not kept in the buffer cache, 162the changes will only take effect if the program 163is run on dismounted filesystems. 164To change the root filesystem, the system must be rebooted 165after the filesystem is tuned. 166.\" Take this out and a Unix Demon will dog your steps from now until 167.\" the time_t's wrap around. 168.Pp 169You can tune a filesystem, but you can't tune a fish. 170