Sysadmins and anyone else writing administrative scripts should be intimately familiar with the following system directories.
/binBinaries (executables). Basic system programs and utilities (such as bash).
/usr/bin[148]More system binaries.
/usr/local/binMiscellaneous binaries local to the particular machine.
/sbinSystem binaries. Basic system administrative programs and utilities (such as fsck).
/usr/sbinMore system administrative programs and utilities.
/etcEt cetera. Systemwide configuration scripts.
Of particular interest are the
/etc/fstab(filesystem table),/etc/mtab(mounted filesystem table), and the/etc/inittabfiles./etc/rc.dBoot scripts, on Red Hat and derivative distributions of Linux.
/usr/share/docDocumentation for installed packages.
/usr/manThe systemwide manpages.
/devDevice directory. Entries (but not mount points) for physical and virtual devices. See Chapter 29,
/devand/proc./procProcess directory. Contains information and statistics about running processes and kernel parameters. See Chapter 29,
/devand/proc./sysSystemwide device directory. Contains information and statistics about device and device names. This is newly added to Linux with the 2.6.X kernels.
/mntMount. Directory for mounting hard drive partitions, such as
/mnt/dos, and physical devices. In newer Linux distros, the/mediadirectory has taken over as the preferred mount point for I/O devices./mediaIn newer Linux distros, the preferred mount point for I/O devices, such as CD/DVD drives or USB flash drives.
/varVariable (changeable) system files. This is a catchall “scratchpad” directory for data generated while a Linux/UNIX machine is running.
/var/logSystemwide log files.
/var/spool/mailUser mail spool.
/libSystemwide library files.
/usr/libMore systemwide library files.
/tmpSystem temporary files.
/bootSystem boot directory. The kernel, module links, system map, and boot manager reside here.
Warning
Altering files in this directory may result in an unbootable system.
[148] Some early UNIX systems had a fast, small-capacity fixed
disk (containing /,
the root partition), and a second drive which
was larger, but slower (containing /usr and other
partitions). The most frequently used programs and
utilities therefore resided on the small-but-fast
drive, in /bin,
and the others on the slower drive, in /usr/bin.
This likewise accounts for the split between
/sbin and
/usr/sbin,
/lib and /usr/lib, etc.