Linux File Hierarchy Structure

In Linux important aspect is the Linux File Hierarchy Structure. Everything in Linux is either a file or a directory. The Filesystem Hierarchy Standard (FSH) is the way that these files and directories are structured. More importantly, though is how they are structured. Looks intimidating at first glance but when you realize that there is a method to this madness, you will find it’s so much simpler because everything is organized in the proper place and you can find where you want go much easier.

Linux File Hierarchy Structure

Linux Directories

Linux File Hierarchy Structure


– The root directory. This is where your directory structure starts. Everything is housed under the root directory.

  • /bin – Essential user command binaries used for general operations: Copy, show directory, etc. (ls, cp, and cat – we’ll get to these commands soon)
  • /boot – Static files of the boot loader. Files here are necessary for a Linux system to start (Kernel & GTUB information)
  • /dev – Where the device files are located
  • /etc – Configuration files for all programs. Things like an apache web server, users & groups on your system, or printer configuration. Think of this as a control panel for Windows users. We will edit these text files later (These files should remain static and text-based).
  • /home – Home directories for all the users to store personal files (i.e. /home/roman) –Windows equivalent of Documents & Settings.
  • /lib – Essential shared libraries and kernel modules
  • /media – Mount point for removable media
  • /mnt – Temporarily mounted file systems
  • /opt – Add on application software packages – (i.e. Program files for windows users)
  • /sbin – Essential system binaries
  • /tmp – Programs write their temporary files here.
  • /usr – Multi-user utilities & Applications. It contains application source codes, documentation, & config files they use. It’s the largest directory on the system.
  • /var – Variable data on a system. Data will change as the system is running (Log files, backups, cache, etc.)
  • /root – Home directory for root
  • /proc – Virtual directory containing process information (system memory, hardware configuration, devices mounted, etc.)

The directories that I would be most concerned about starting off are /etc, /home, /dev, /mnt. As your skills progress you’ll venture off into other areas, but I started out in /etc 95 percent of the time. There are directories that extend, but we’ll get those later.


So this is Linux File Hierarchy Structure, Everything in Linux is either a file or a directory. All Linux distros have the same file hierarchy structure.

If you have any questions, feel free to leave a comment.

Related Posts:

Leave a Comment