Home Linux File System Hierachy
Post
Cancel

Linux File System Hierachy

The Linux File Hierarchy Structure or the Filesystem Hierarchy Standard (FHS) defines the directory structure and directory contents in Unix-like operating systems. It is maintained by the Linux Foundation.

  • In the FHS, all files and directories appear under the root directory /, even if they are stored on different physical or virtual devices.
  • Some of these directories only exist on a particular system if certain subsystems, such as the X Window System, are installed.
  • Most of these directories exist in all UNIX operating systems and are generally used in much the same way; however, the descriptions here are those used specifically for the FHS and are not considered authoritative for platforms other than Linux.

Linux Filesystem Hierarchy

/root

  • Every single file and directory starts from the root directory.
  • Only root user has write privilege under this directory.
  • Please note that /root is root user’s home directory, which is not same as /. root

/bin

  • Contains binary executables.
  • Common linux commands you need to use in single-user modes are located under this directory.
  • Commands used by all the users of the system are located here.
  • For example: ps, ls, ping, grep, cp. /bin

/sbin

  • Just like /bin, /sbin also contains binary executables.
  • But, the linux commands located under this directory are used typically by system aministrator, for system maintenance purpose.
  • For example: iptables, reboot, fdisk, ifconfig, swapon /sbin

/etc

  • Contains configuration files required by all programs.
  • This also contains startup and shutdown shell scripts used to start/stop individual programs.
  • For example: /etc/resolv.conf, /etc/logrotate.conf /etc

/dev

  • Contains device files.
  • These include terminal devices, usb, or any device attached to the system.
  • For example: /dev/tty1, /dev/usbmon0 /dev

/proc

  • Contains information about system process.
  • This is a pseudo filesystem contains information about running process. For example: /proc/{pid} directory contains information about the process with that particular pid.
  • This is a virtual filesystem with text information about system resources. For example: /proc/uptime /proc

/var

  • Content of the files that are expected to grow can be found under this directory.
  • This includes — system log files (/var/log); packages and database files (/var/lib); emails (/var/mail); print queues (/var/spool); lock files (/var/lock); temp files needed across reboots (/var/tmp); /var

/tmp

  • Directory that contains temporary files created by system and users.
  • Files under this directory are deleted when system is rebooted. /tmp

/usr

  • Contains binaries, libraries, documentation, and source-code for second level programs.
  • /usr/bin contains binary files for user programs. If you can’t find a user binary under /bin, look under /usr/bin. For example: at, awk, cc, less, scp
  • ` /usr/sbin` contains binary files for system administrators. If you can’t find a system binary under /sbin, look under /usr/sbin. For example: atd, cron, sshd, useradd, userdel
  • /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 apache from source, it goes under /usr/local/apache2
  • /usr/src holds the Linux kernel sources, header-files and documentation. /usr

/home

  • Home directories for all users to store their personal files
  • For examples: /home/john, /home/dylan. /home

/boot

  • Contains boot loader related files
  • Kernel initrd, vmlinux, grub files are located under /boot
  • Kernel initrd, vmlinux, grub files are located under /boot /boot

/lib

  • Contains library files that supports the binaries located under /bin and /sbin
  • Library filenames are either ld* or lib*.so.*
  • For example: ld-2.11.1.so, libncurses.so.5.7 /lib

/opt

  • Contains add-on applications from individual vendors.
  • add-on applications should be installed under either /opt/ or /opt/ sub-directory. /opt

/mnt

  • Temporary mount directory where sysadmins can mount filesystems. /mnt

/media

  • Temporary mount directory for removable devices.
  • For examples, /media/cdrom for CD-ROM; /media/floppy for floppy drives; /media/cdrecorder for CD writer /media

/srv

  • Contains server specific services related data.
  • For example, /srv/cvs contains CVS related data /srv
This post is licensed under CC BY 4.0 by the author.

OverTheWire - bandit Writeup

SQLMap