]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - share/man/man5/fstab.5
add -n option to suppress clearing the build tree and add -DNO_CLEAN
[FreeBSD/FreeBSD.git] / share / man / man5 / fstab.5
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 February 11, 2008
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
44 The file
45 .Nm
46 contains descriptive information about the various file
47 systems.
48 .Nm
49 is only read by programs, and not written;
50 it is the duty of the system administrator to properly create
51 and maintain this file.
52 Each file system is described on a separate line;
53 fields on each line are separated by tabs or spaces.
54 The order of records in
55 .Nm
56 is important because
57 .Xr fsck 8 ,
58 .Xr mount 8 ,
59 and
60 .Xr umount 8
61 sequentially iterate through
62 .Nm
63 doing their thing.
64 .Pp
65 The first field,
66 .Pq Fa fs_spec ,
67 describes the special device or
68 remote file system to be mounted.
69 .Pp
70 The second field,
71 .Pq Fa fs_file ,
72 describes the mount point for the file system.
73 For swap partitions, this field should be specified as ``none''.
74 .Pp
75 The third field,
76 .Pq Fa fs_vfstype ,
77 describes the type of the file system.
78 The system can support various file system types.
79 Only the root, /usr, and /tmp file systems need be statically
80 compiled into the kernel;
81 everything else will be automatically loaded at mount
82 time.
83 (Exception: the UFS family - FFS and LFS cannot
84 currently be demand-loaded.)
85 Some people still prefer to statically
86 compile other file systems as well.
87 .Pp
88 The fourth field,
89 .Pq Fa fs_mntops ,
90 describes the mount options associated with the file system.
91 It is formatted as a comma separated list of options.
92 It contains at least the type of mount (see
93 .Fa fs_type
94 below) plus any additional options
95 appropriate to the file system type.
96 See the options flag
97 .Pq Fl o
98 in the
99 .Xr mount 8
100 page and the file system specific page, such as
101 .Xr mount_nfs 8 ,
102 for additional options that may be specified.
103 .Pp
104 If the options ``userquota'' and/or ``groupquota'' are specified,
105 the file system is automatically processed by the
106 .Xr quotacheck 8
107 command, and user and/or group disk quotas are enabled with
108 .Xr quotaon 8 .
109 By default,
110 file system quotas are maintained in files named
111 .Pa quota.user
112 and
113 .Pa quota.group
114 which are located at the root of the associated file system.
115 These defaults may be overridden by putting an equal sign
116 and an alternative absolute pathname following the quota option.
117 Thus, if the user quota file for
118 .Pa /tmp
119 is stored in
120 .Pa /var/quotas/tmp.user ,
121 this location can be specified as:
122 .Bd -literal -offset indent
123 userquota=/var/quotas/tmp.user
124 .Ed
125 .Pp
126 If the option ``noauto'' is specified, the file system will not be automatically
127 mounted at system startup.
128 Note that, for network file systems
129 of third party types
130 (i.e., types supported by additional software
131 not included in the base system)
132 to be automatically mounted at system startup,
133 the
134 .Va extra_netfs_types
135 .Xr rc.conf 5
136 variable must be used to extend the
137 .Xr rc 8
138 startup script's list of network file system types.
139 .Pp
140 The type of the mount is extracted from the
141 .Fa fs_mntops
142 field and stored separately in the
143 .Fa fs_type
144 field (it is not deleted from the
145 .Fa fs_mntops
146 field).
147 If
148 .Fa fs_type
149 is ``rw'' or ``ro'' then the file system whose name is given in the
150 .Fa fs_file
151 field is normally mounted read-write or read-only on the
152 specified special file.
153 If
154 .Fa fs_type
155 is ``sw'' then the special file is made available as a piece of swap
156 space by the
157 .Xr swapon 8
158 command at the end of the system reboot procedure.
159 The fields other than
160 .Fa fs_spec
161 and
162 .Fa fs_type
163 are unused.
164 If
165 .Fa fs_type
166 is specified as ``xx'' the entry is ignored.
167 This is useful to show disk partitions which are currently unused.
168 .Pp
169 The fifth field,
170 .Pq Fa fs_freq ,
171 is used for these file systems by the
172 .Xr dump 8
173 command to determine which file systems need to be dumped.
174 If the fifth field is not present, a value of zero is returned and
175 .Nm dump
176 will assume that the file system does not need to be dumped.
177 .Pp
178 The sixth field,
179 .Pq Fa fs_passno ,
180 is used by the
181 .Xr fsck 8
182 and
183 .Xr quotacheck 8
184 programs to determine the order in which file system and quota
185 checks are done at reboot time.
186 The
187 .Fa fs_passno
188 field can be any value between 0 and 
189 .Ql INT_MAX Ns -1 .
190 .Pp
191 The root file system should be specified with a
192 .Fa fs_passno
193 of 1, and other file systems should have a
194 .Fa fs_passno
195 of 2 or greater.
196 A file system with a
197 .Fa fs_passno
198 value of 1 is always checked sequentially and be completed before 
199 another file system is processed, and it will be processed before
200 all file systems with a larger
201 .Fa fs_passno .
202 .Pp
203 For any given value of
204 .Fa fs_passno ,
205 file systems within a drive will be checked sequentially,
206 but file systems on different drives will be checked at the
207 same time to utilize parallelism available in the hardware.
208 Once all file system checks are complete for the current
209 .Fa fs_passno ,
210 the same process will start over for the next
211 .Fa fs_passno .
212 .Pp
213 If the sixth field is not present or is zero,
214 a value of zero is returned and
215 .Xr fsck 8
216 and
217 .Xr quotacheck 8
218 will assume that the file system does not need to be checked.
219 .Pp
220 The
221 .Fa fs_passno
222 field can be used to implement finer control when 
223 the system utilities may determine that the file system resides
224 on a different physical device, when it actually does not, as with a
225 .Xr ccd 4
226 device.
227 All file systems with a lower
228 .Fa fs_passno
229 value will be completed before starting on file systems with a
230 higher
231 .Fa fs_passno
232 value.
233 E.g. all file systems with a
234 .Fa fs_passno
235 of 2 will be completed before any file systems with a
236 .Fa fs_passno
237 of 3 or greater are started.
238 Gaps are allowed between the different
239 .Fa fs_passno
240 values.
241 E.g. file systems listed in
242 .Pa /etc/fstab
243 may have
244 .Fa fs_passno
245 values such as 0, 1, 2, 15, 100, 200, 300, and may appear in any order
246 within
247 .Pa /etc/fstab .
248 .Bd -literal
249 #define FSTAB_RW        "rw"    /* read/write device */
250 #define FSTAB_RQ        "rq"    /* read/write with quotas */
251 #define FSTAB_RO        "ro"    /* read-only device */
252 #define FSTAB_SW        "sw"    /* swap device */
253 #define FSTAB_XX        "xx"    /* ignore totally */
254
255 struct fstab {
256         char    *fs_spec;       /* block special device name */
257         char    *fs_file;       /* file system path prefix */
258         char    *fs_vfstype;    /* File system type, ufs, nfs */
259         char    *fs_mntops;     /* Mount options ala -o */
260         char    *fs_type;       /* FSTAB_* from fs_mntops */
261         int     fs_freq;        /* dump frequency, in days */
262         int     fs_passno;      /* pass number on parallel fsck */
263 };
264 .Ed
265 .Pp
266 The proper way to read records from
267 .Pa fstab
268 is to use the routines
269 .Xr getfsent 3 ,
270 .Xr getfsspec 3 ,
271 .Xr getfstype 3 ,
272 and
273 .Xr getfsfile 3 .
274 .Sh FILES
275 .Bl -tag -width /etc/fstab -compact
276 .It Pa /etc/fstab
277 The file
278 .Nm
279 resides in
280 .Pa /etc .
281 .El
282 .Sh SEE ALSO
283 .Xr getfsent 3 ,
284 .Xr getvfsbyname 3 ,
285 .Xr ccd 4 ,
286 .Xr dump 8 ,
287 .Xr fsck 8 ,
288 .Xr mount 8 ,
289 .Xr quotacheck 8 ,
290 .Xr quotaon 8 ,
291 .Xr swapon 8 ,
292 .Xr umount 8
293 .Sh HISTORY
294 The
295 .Nm
296 file format appeared in
297 .Bx 4.0 .