Linux File System Hierarchy
A file system is a organization of data and meta data on a storage device. In Linux everything under ” / ” , Linux file system is a hierarchically structured tree where every location has its distinct meanings.
/ – root directory
#Every directory under the root directory is on the root partition
#Every single file and directory starts from the root directory
#Only root user has write privilege on this directory
#/root is root user(super user) home directory, which is not same as /.
/bin – User executable commands
#Contains common binaries and commands, shared by the system as well as the system administrator and the other users.
#Essential commands used in single-user modes are located under this directory
/boot – boot loader
#Contains boot loader files
#The start up files and the Kernel initrd, vmlinuz and grub data
/dev – Device files
#Contains all the file of CPU peripheral hardware’s
#These include terminal devices, usb, or any device.
Ex – /dev/console, /dev/tty1
/etc – System configuration files
#Contains Host-specific system configuration
#Contains configuration files required by all programs.
#Start up and shutdown scripts to start/stop host specific individual programs.
Ex – /etc/grub.conf, /etc/resolv.conf, /etc/host.conf ..,
/home – User home directories
#Contains home directories of all common users.
Ex – /home/TTS
/lib – System libraries
#Essential shared libraries and kernel modules
#Supporting library files, includes files or programs located under /bin and /sbin required by the system and the users.
/media – Removable media devices
#Mount points for removable media such as CD-ROMs,Usb devices ..,
/mnt – Mount directory
#Temporary files and folders can be mounted under this directory
/opt – Optional application software packages
#contains add-on and third party software packages.
/proc – Process information
#Contains information about system processes and resources as a virtual file system
#Virtual filesystem documenting kernel and process status as text files, Ex- uptime, meminfo,cpuinfo
/sbin – System binaries
#Programs for use by the system and the system administrator.
Ex – init, mount, iptables, reboot, fdisk …
/srv – Service data
#Data for particular service
Ex – /srv/cvs contains CVS related data
/tmp – Temporary files
#Contains temporary files created by system and the users.
#Files under this directory are deleted when system is rebooted.
/usr – read-only user data
#Contains the majority of user’s utilities and applications,Programs
#libraries, documentation etc. for all user-related programs.
#/usr/bin contains binary files for user programs.
#/usr/sbin contains binary files for system administrators.
#/usr/lib contains libraries for /usr/bin and /usr/sbin
#/usr/local contains users programs that were installed from source
/var – Variable data
#Storage for all variable files and temporary files created by the users
#Content of the files that are expected to grow can be found under this directory only
#This includes system logs /var/logs ,mail log /var/spool/mail ,…