FHS behind the scene principles
by salmanahmed from LinuxQuestions.org on (#5A65Y)
Hi
I am using Linux for a while now. After going through File Hierarchy Structure (FHS), it becomes clear that there are some guiding principles which work behind the scene. However, there are a lot of confusions in my mind regarding this FHS. For instance,
Code:1. /lib contains libraries, then why /var/lib also has libraries?
2. Why some applications install in /opt?
3. Why some media like USB is now mounting in /run/media, in contrast to past (in /media)?
4. Why /bin and /sbin are now obsolete and just a symbolic link to /usr/bin?
5. Why we can find similar application directories in /usr/share, /usr/local and other places?
6. How /usr/local/lib is different from /usr/lib?
There are few examples.You can see that these are more of a philosophical questions which focus on the reasons (why) behind this FHS. So, I want to learn about these behind the scene principles which are being utilized when a programmer develops a software, or when a package is distributed in FHS. From where I can find this detailed FHS guiding principles? Is there any book/guide about that?


I am using Linux for a while now. After going through File Hierarchy Structure (FHS), it becomes clear that there are some guiding principles which work behind the scene. However, there are a lot of confusions in my mind regarding this FHS. For instance,
Code:1. /lib contains libraries, then why /var/lib also has libraries?
2. Why some applications install in /opt?
3. Why some media like USB is now mounting in /run/media, in contrast to past (in /media)?
4. Why /bin and /sbin are now obsolete and just a symbolic link to /usr/bin?
5. Why we can find similar application directories in /usr/share, /usr/local and other places?
6. How /usr/local/lib is different from /usr/lib?
There are few examples.You can see that these are more of a philosophical questions which focus on the reasons (why) behind this FHS. So, I want to learn about these behind the scene principles which are being utilized when a programmer develops a software, or when a package is distributed in FHS. From where I can find this detailed FHS guiding principles? Is there any book/guide about that?