The fstab (for file systems table) file is commonly found on Unix and Unix-like systems and is part of the system configuration. The fstab file typically lists all used disks and disk partitions, and indicates how they are to be used or otherwise integrated into the overall system's file system.
Traditionally, the fstab was only read by programs, and not written. However, more modern system administration tools can automatically build and edit fstab, or act as graphical editors for it. It is the duty of the system administrator to properly create and maintain this file.
The file may have other names on a given Unix variant; for example, it is /etc/vfstab on Solaris.
The following is an example of a fstab file on a Red Hat Linux system:
LABEL=/ / ext3 defaults 1 1 none /dev/pts devpts gid=5,mode=620 0 0 none /proc proc defaults 0 0 none /dev/shm tmpfs defaults 0 0
- device name mount point fs-type options dump-freq pass-num
/dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro 0 0 /dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0
- my removable media
/dev/hda1 /mnt/WinXP ntfs ro,defaults 0 0
- my NTFS Windows XP partition
/dev/hda6 swap swap defaults 0 0
/dev/hda7 /mnt/shared vfat umask=000 0 0
- my files partition shared by windows and linux
(kudzu is an option specific to Red Hat and Fedora Core)
The first column indicates the device name or other means of locating the partition or data source. The second column indicates where the data is to be attached to the filesystem. The third column indicates the filesystem type, or algorithm to use to interpret the filesystem. The fourth column gives options, including if the filesystem should be mounted at boot. The fifth column adjusts the archiving schedule for the partition (used by dump). The sixth column indicates the order in which the fsck utility will scan the partitions for errors when the computer powers on. A value of zero in either of the last 2 columns disables the corresponding feature (http://www.humbug.org.au/talks/fstab/fstab_structure.html).
To get more information about the fstab file you can read the man page about it.
The Kfstab graphical configuration utility is available for KDE for editing fstab.
The options common to all filesystems are:
sync / async All I/O to the file system should be done (a)synchronously. auto The filesystem can be mounted automatically (at bootup, or when mount is passed the -a option). This is really unnecessary as this is the default action of mount -a anyway. noauto The filesystem will NOT be automatically mounted at startup, or when mount passed -a. You must explicitly mount the filesystem. dev / nodev Permit any user to mount the filesyste. This automatically implies noexec, exec / noexec Permit/Prevent the execution of binaries from the filesystem. suid / nosuid Permit/Block the operation of suid, and sgid bits. ro Mount read-only. rw Mount read-write. user Permit any user to mount the filesystem. This automatically implies noexec, nosuid,nodev unless overridden. nouser Only permit root to mount the filesystem. This is also a default setting. defaults Use default settings. Equivalent to rw,suid,dev,exec,auto,nouser,async.
There are numerous options for the specific filesystems supported by mount. However these are some of the more useful, for the full list check out the man page for `mount`.