Linux Directory Structure
Note: Files are grouped according to purpose. Ex: commands, data files, documentation.
Parts of a Unix directory tree. See the FSSTND standard (Filesystem standard)
|---root The home directory for the root user
|---home Contains the user's home directories
| |----ftp Users include many services as listed here
|---bin Commands needed during bootup that might be needed by normal users
|---sbin Like bin but commands are not intended for normal users. Commands run by LINUX.
|---proc This filesystem is not on a disk. Exists in the kernels imagination (virtual). This directory
| | Holds information about kernel parameters and system configuration.
| |----1 A directory with info about process number 1. Each process
| has a directory below proc.
|---usr Contains all commands, libraries, man pages, games and static files for normal
| | operation.
| |----bin Almost all user commands. some commands are in /bin or /usr/local/bin.
| |----sbin System admin commands not needed on the root filesystem. e.g., most server
| | programs.
| |----include Header files for the C programming language. Should be below /user/lib for
| | consistency.
| |----lib Unchanging data files for programs and subsystems
| |----local The place for locally installed software and other files.
| |----man Manual pages
| |----info Info documents
| |----doc Documentation for various packages
| |----X11R6 The X windows system files. There is a directory similar to usr below this
| | directory.
| |----X386 Like X11R6 but for X11 release 5
|---boot Files used by the bootstrap loader, LILO. Kernel images are often kept here.
|---lib Shared libraries needed by the programs on the root filesystem
| |----modules Loadable kernel modules, especially those needed to boot the system after
|---dev Device files for devices such as disk drives, serial ports, etc.
|---etc Configuration files specific to the machine.
| |----skel When a home directory is created it is initialized with files from this directory
| |----sysconfig Files that configure the linux system for networking, keyboard, time, and more.
|---var Contains files that change for mail, news, printers log files, man pages, temp files
| |----lib Files that change while the system is running normally
| |----local Variable data for programs installed in /usr/local.
| |----lock Lock files. Used by a program to indicate it is using a particular device or file
| |----log Log files from programs such as login and syslog which logs all logins,
| | logouts, and other system messages.
| |----run Files that contain information about the system that is valid until the system is
| | next booted
| |----spool Directories for mail, printer spools, news and other spooled work.
| |----tmp Temporary files that are large or need to exist for longer than they should in
| | /tmp.
| |----catman A cache for man pages that are formatted on demand
|---mnt Mount points for temporary mounts by the system administrator.
|---tmp Temporary files. Programs running after bootup should use /var/tmp.