Contents
- The organization of a Linux root filesystem in terms of directories is well-defined by the Filesystem Hierarchy Standard
- http://www.linuxfoundation.org/collaborate/ workgroups/lsb/fhs
Most Linux systems conform to this specification
- Applications expect this organization
- It makes it easier for developers and users as the filesystem organization is similar in all systems
/bin Basic programs
- /boot Kernel image (only when the kernel is loaded from a filesystem, not common on non-x86 architectures)
- /dev Device files
- /etc System-wide configuration
- /home Directory for the users home directories
- /lib Basic libraries
- /media Mount points for removable media
- /mnt Mount points for static media
- /proc Mount point for the proc virtual filesystem
- /root Home directory of the root user
- /sbin Basic system programs
- /sys Mount point of the sysfs virtual filesystem
- /tmp Temporary files
- /usr
- /usr/bin Non-basic programs
- /usr/lib Non-basic libraries
- /usr/sbin Non-basic system programs
- /var Variable data files. This includes spool directories and files, administrative and logging data, and transient and temporary files
Basic programs are installed in /bin and /sbin and basic libraries in /lib
- All other programs are installed in /usr/bin and /usr/sbin and all other libraries in /usr/lib
- In the past, on Unix systems, /usr was very often mounted over the network, through NFS
- In order to allow the system to boot when the network was down, some binaries and libraries are stored in /bin, /sbin and /lib
- /bin and /sbin contain programs like ls, ifconfig, cp, bash, etc.
- /lib contains the C library and sometimes a few other basic libraries
- All other programs and libraries are in /usr