.TH FSTAB 5 .UC .SH NAME fstab \- static information about the file systems .SH SYNOPSIS .B #include .SH DESCRIPTION The file .I /etc/fstab contains descriptive information about the various file systems. .I /etc/fstab is only .I read by programs, and not written; it is the duty of the system administrator to properly create and maintain this file. .PP These programs use .I /etc/fstab: .I mount, .I umount, .I fsck and .I df. The order of records in .I /etc/fstab is important, for .I fsck, .I mount, and .I umount sequentially iterate through .I /etc/fstab doing their thing. .PP The special file name is the .B block special file name, and not the character special file name. If a program needs the character special file name, the program must create it by appending a ``r'' after the last ``/'' in the special file name. .PP If .I fs_type is ``rw'' or ``ro'' then the file system whose name is given in the .I fs_file field is normally mounted read-write or read-only on the specified special file. The .I fs_freq field is used for these file systems by the .IR dump (8) command to determine which file systems need to be dumped (this feature is not currently available on all PDP11s due to size restrictions). The .I fs_passno field is used by the .IR fsck (8) program (with the \-p option) to determine the order in which file system checks are done at reboot time. The root file system should be specified with a .I fs_passno of 1, and other file systems should have larger numbers. File systems within a drive should have distinct numbers, but file systems on different drives can be checked on the same pass to utilize parallelism available in the hardware. .PP If .I fs_type is ``sw'' then the special file is assumed to be used for swapping. The fields other than .I fs_spec and .I fs_type are not used in this case. .PP .I Fs_type may be specified as ``xx'' to cause an entry to be ignored. This is useful to show disk partitions which are currently not used but will be used later. .sp 1 .nf .ta \w'#define 'u +\w'FSTABARG(p) 'u \w'#define 'u+\w'char\ \ 'u+\w'fs_spec[FSNMLG]; 'u #define FSTAB "/etc/fstab" #define FSNMLG 16 #define FSTABFMT "%16s:%16s:%2s:%d:%d\en" #define FSTABARG(p) (p)\->fs_spec, (p)\->fs_file, \e (p)\->fs_type, &(p)\->fs_freq, &(p)\->fs_passno #define FSTABNARGS 5 #define FSTAB_RW "rw" /* read write device */ #define FSTAB_RO "ro" /* read only device */ #define FSTAB_SW "sw" /* swap device */ #define FSTAB_XX "xx" /* ignore totally */ .ta \w'#define 'u +\w'char\ \ 'u +\w'fs_spec[FSNMLG]; 'u struct fstab { char fs_spec[FSNMLG]; /* block special device name */ char fs_file[FSNMLG]; /* file system path prefix */ char fs_type[3]; /* rw,ro,sw or xx */ int fs_freq; /* dump frequency, in days */ int fs_passno; /* pass number on parallel dump */ }; .fi .PP The proper way to read records from .I /etc/fstab is to use the routines getfsent(), getfsspec() or getfsfile(). .SH FILES /etc/fstab .SH SEE ALSO getfsent(3)