Filesystem Hierarchy Standard
The contents of the root filesystem must be adequate to boot, restore,
recover, and/or repair the system.
- To boot a system, enough must be present on the root partition to mount
other filesystems. This includes utilities, configuration, boot loader
information, and other essential start-up data. /usr,
/opt, and /var are designed such that they may be
located on other partitions or filesystems.
- To enable recovery and/or repair of a system, those utilities needed by
an experienced maintainer to diagnose and reconstruct a damaged system
must be present on the root filesystem.
- To restore a system, those utilities needed to restore from system
backups (on floppy, tape, etc.) must be present on the root
filesystem.
BEGIN RATIONALE
The primary concern used to balance these considerations, which favor
placing many things on the root filesystem, is the goal of keeping
root as small as reasonably possible. For several reasons, it is
desirable to keep the root filesystem small:
- It is occasionally mounted from very small media.
- The root filesystem contains many system-specific configuration files.
Possible examples include a kernel that is specific to the system, a
specific hostname, etc. This means that the root filesystem isn't
always shareable between networked systems. Keeping it small on servers
in networked systems minimizes the amount of lost space for areas of
unshareable files. It also allows workstations with smaller local hard
drives.
- While you may have the root filesystem on a large partition, and may be
able to fill it to your heart's content, there will be people with
smaller partitions. If you have more files installed, you may find
incompatibilities with other systems using root filesystems on smaller
partitions. If you are a developer then you may be turning your
assumption into a problem for a large number of users.
- Disk errors that corrupt data on the root filesystem are a greater
problem than errors on any other partition. A small root filesystem is
less prone to corruption as the result of a system crash.
Software must never create or require special files or subdirectories
in the root directory. Other locations in the FHS hierarchy provide
more than enough flexibility for any package.
There are several reasons why introducing a new subdirectory of the root
filesystem is prohibited:
- It demands space on a root partition which the system administrator may
want kept small and simple for either performance or security reasons.
- It evades whatever discipline the system administrator may have set up
for distributing standard file hierarchies across mountable volumes.
END RATIONALE
Previous: The Root Filesystem
Next: Requirements
Up: Table of Contents
Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan