Have you wondered why certain programs are located under /bin, or /sbin, or /usr/bin, or /usr/sbin? For example,the less command is located under the /usr/bin directory. Why not /bin, or /sbin, or /usr/sbin? What is the different between all these directories?
In this article, I will review the Linux filesystem structures and explain the meaning of individual high-level directories.
| / – Root |
|
Every single file and directory starts from the root directory. |
| /bin – User Binaries |
|
Contains binary executables. For example: ps, ls, ping, grep, cp. |
| /sbin – System Binaries |
|
Just like /bin, /sbin also contains binary executables. For example: iptables, reboot, fdisk, ifconfig, swapon |
| /etc – Configuration Files |
|
Contains configuration files required by all programs. For example: /etc/resolv.conf, /etc/logrotate.conf |
| /dev – Device Files |
|
Contains device files. For example: /dev/tty1, /dev/usbmon0 |
| /proc – Process Information |
|
Contains information about system process. For example: cat /proc/cpuinfo will give detailed information about your CPU |
| /var – Variable Files |
|
var stands for variable files. |
| /tmp – Temporary Files |
|
Directory that contains temporary files created by system and users. |
| /usr – User Programs |
|
Contains binaries, libraries, documentation, and source-code for second level programs. /usr/sbin contains binary files for system administrators. If you can’t find a system binary under /sbin, look under /usr/sbin. /usr/lib contains libraries for /usr/bin and /usr/sbin /usr/local contains users programs that you install from source. For example, when you install |
| /home – Home Directories |
|
Home directories for all users to store their personal files. For example: /home/john, /home/nikita |
| /boot – Boot Loader Files |
|
Contains boot loader related files. For example: initrd.img-2.6.32-24-generic, vmlinuz-2.6.32-24-generic |
| /lib – System Libraries |
|
Contains library files that supports the binaries located under /bin and /sbin For example: ld-2.11.1.so, libncurses.so.5.7 |
| /opt – Optional add-on Applications |
|
opt stands for optional. |
| /mnt – Mount Directory |
|
Temporary mount directory where sysadmins can mount filesystems. |
| /media – Removable Media Devices |
|
Temporary mount directory for removable devices. This can be changes and will differ from distribution to distribution. For examples, /media/cdrom for CD-ROM; /media/floppy for floppy drives; /media/cdrecorder |
| /srv – Service Data |
|
srv stands for service. For example, /srv/cvs contains CVS related data. |