Linux file system hierarchy - the fun easy way

May 04, 2008
I have been asked by many people to explain the file system hierarchy in Linux because they find the file system in Linux quite different from what they are used to in Windows. To put it simply, it can be visualized as a tree with its roots and all. At the top of the hierarchy is invariably the root path which is represented by '/'. All other directories are created beneath this root path. And each of the sub directories have a specific purpose. For example, '/etc' contain the configuration files, the '/opt' directory is used to install third party software, '/boot' contain the grub files and the Linux kernel and so on.

Today I came across this very beautiful image which explains the Linux file system in lucid detail at

Fig: Linux file system hierarchy


  • My questions is why nobody puts 3rd party software in /opt? I always see people forcing it in /usr/local or somewhere in /usr.

  • Well, it's a nice image, but I don't know that I would call it very beautiful!