xref: /freebsd/share/man/man5/fstab.5 (revision 1e413cf93298b5b97441a21d9a50fdcd0ee9945e)
1.\" Copyright (c) 1980, 1989, 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.\"     @(#)fstab.5	8.1 (Berkeley) 6/5/93
33.\" $FreeBSD$
34.\"
35.Dd June 5, 1993
36.Dt FSTAB 5
37.Os
38.Sh NAME
39.Nm fstab
40.Nd static information about the file systems
41.Sh SYNOPSIS
42.In fstab.h
43.Sh DESCRIPTION
44The file
45.Nm
46contains descriptive information about the various file
47systems.
48.Nm
49is only read by programs, and not written;
50it is the duty of the system administrator to properly create
51and maintain this file.
52Each file system is described on a separate line;
53fields on each line are separated by tabs or spaces.
54The order of records in
55.Nm
56is important because
57.Xr fsck 8 ,
58.Xr mount 8 ,
59and
60.Xr umount 8
61sequentially iterate through
62.Nm
63doing their thing.
64.Pp
65The first field,
66.Pq Fa fs_spec ,
67describes the block special device or
68remote file system to be mounted.
69For file systems of type
70.Em ufs ,
71the special file name is the block special file name,
72and not the character special file name.
73If a program needs the character special file name,
74the program must create it by appending a ``r'' after the
75last ``/'' in the special file name.
76.Pp
77The second field,
78.Pq Fa fs_file ,
79describes the mount point for the file system.
80For swap partitions, this field should be specified as ``none''.
81.Pp
82The third field,
83.Pq Fa fs_vfstype ,
84describes the type of the file system.
85The system can support various file system types.
86Only the root, /usr, and /tmp file systems need be statically
87compiled into the kernel;
88everything else will be automatically loaded at mount
89time.
90(Exception: the UFS family - FFS and LFS cannot
91currently be demand-loaded.)
92Some people still prefer to statically
93compile other file systems as well.
94.Pp
95The fourth field,
96.Pq Fa fs_mntops ,
97describes the mount options associated with the file system.
98It is formatted as a comma separated list of options.
99It contains at least the type of mount (see
100.Fa fs_type
101below) plus any additional options
102appropriate to the file system type.
103See the options flag
104.Pq Fl o
105in the
106.Xr mount 8
107page and the file system specific page, such as
108.Xr mount_nfs 8 ,
109for additional options that may be specified.
110.Pp
111If the options ``userquota'' and/or ``groupquota'' are specified,
112the file system is automatically processed by the
113.Xr quotacheck 8
114command, and user and/or group disk quotas are enabled with
115.Xr quotaon 8 .
116By default,
117file system quotas are maintained in files named
118.Pa quota.user
119and
120.Pa quota.group
121which are located at the root of the associated file system.
122These defaults may be overridden by putting an equal sign
123and an alternative absolute pathname following the quota option.
124Thus, if the user quota file for
125.Pa /tmp
126is stored in
127.Pa /var/quotas/tmp.user ,
128this location can be specified as:
129.Bd -literal -offset indent
130userquota=/var/quotas/tmp.user
131.Ed
132.Pp
133If the option ``noauto'' is specified, the file system will not be automatically
134mounted at system startup.
135Note that, for network file systems
136of third party types
137(i.e., types supported by additional software
138not included in the base system)
139to be automatically mounted at system startup,
140the
141.Va extra_netfs_types
142.Xr rc.conf 5
143variable must be used to extend the
144.Xr rc 8
145startup script's list of network file system types.
146.Pp
147The type of the mount is extracted from the
148.Fa fs_mntops
149field and stored separately in the
150.Fa fs_type
151field (it is not deleted from the
152.Fa fs_mntops
153field).
154If
155.Fa fs_type
156is ``rw'' or ``ro'' then the file system whose name is given in the
157.Fa fs_file
158field is normally mounted read-write or read-only on the
159specified special file.
160If
161.Fa fs_type
162is ``sw'' then the special file is made available as a piece of swap
163space by the
164.Xr swapon 8
165command at the end of the system reboot procedure.
166The fields other than
167.Fa fs_spec
168and
169.Fa fs_type
170are unused.
171If
172.Fa fs_type
173is specified as ``xx'' the entry is ignored.
174This is useful to show disk partitions which are currently unused.
175.Pp
176The fifth field,
177.Pq Fa fs_freq ,
178is used for these file systems by the
179.Xr dump 8
180command to determine which file systems need to be dumped.
181If the fifth field is not present, a value of zero is returned and
182.Nm dump
183will assume that the file system does not need to be dumped.
184.Pp
185The sixth field,
186.Pq Fa fs_passno ,
187is used by the
188.Xr fsck 8
189and
190.Xr quotacheck 8
191programs to determine the order in which file system checks are done
192at reboot time.
193The root file system should be specified with a
194.Fa fs_passno
195of 1, and other file systems should have a
196.Fa fs_passno
197of 2.
198File systems within a drive will be checked sequentially,
199but file systems on different drives will be checked at the
200same time to utilize parallelism available in the hardware.
201If the sixth field is not present or is zero,
202a value of zero is returned and
203.Xr fsck 8
204and
205.Xr quotacheck 8
206will assume that the file system does not need to be checked.
207.Bd -literal
208#define	FSTAB_RW	"rw"	/* read/write device */
209#define	FSTAB_RQ	"rq"	/* read/write with quotas */
210#define	FSTAB_RO	"ro"	/* read-only device */
211#define	FSTAB_SW	"sw"	/* swap device */
212#define	FSTAB_XX	"xx"	/* ignore totally */
213
214struct fstab {
215	char	*fs_spec;	/* block special device name */
216	char	*fs_file;	/* file system path prefix */
217	char	*fs_vfstype;	/* File system type, ufs, nfs */
218	char	*fs_mntops;	/* Mount options ala -o */
219	char	*fs_type;	/* FSTAB_* from fs_mntops */
220	int	fs_freq;	/* dump frequency, in days */
221	int	fs_passno;	/* pass number on parallel fsck */
222};
223.Ed
224.Pp
225The proper way to read records from
226.Pa fstab
227is to use the routines
228.Xr getfsent 3 ,
229.Xr getfsspec 3 ,
230.Xr getfstype 3 ,
231and
232.Xr getfsfile 3 .
233.Sh FILES
234.Bl -tag -width /etc/fstab -compact
235.It Pa /etc/fstab
236The file
237.Nm
238resides in
239.Pa /etc .
240.El
241.Sh SEE ALSO
242.Xr getfsent 3 ,
243.Xr getvfsbyname 3 ,
244.Xr dump 8 ,
245.Xr fsck 8 ,
246.Xr mount 8 ,
247.Xr quotacheck 8 ,
248.Xr quotaon 8 ,
249.Xr swapon 8 ,
250.Xr umount 8
251.Sh HISTORY
252The
253.Nm
254file format appeared in
255.Bx 4.0 .
256