Filesystem Hierarchy Standard - Reference Poster / Cheatsheet [Added dark mode]

callcc@lemmy.world to Selfhosted@lemmy.world – 279 points –

Hey, I've recently designed a Poster about the FHS since I often forget where I should place or find things. Do you have any feedback how to make it better?

Edit: Put up new version

Dark mode

Dark mode

26

You are viewing a single comment

This is really helpful, thank you!

I never understood why the shareable /usr is parent to the non shareable /usr/local. Wouldn't a /usr/shared be way easier especially in the early network days?

If anyone has a link or some insights into this historical nitbit I'd highly appreciate it!

No comment on sensibility, but technically both are equally difficult - mount the parent filesystem, then mount the child filesystem into an empty directory in the parent. Doesn't matter which one is where, it's all abstracted away at this level anyway.

But when I mount a shared /usr on a remote machine it will always have the mount point /usr/local as empty folder - and either have an empty folder or have a mount target that is dependent on a network resource - that's why for me it's so unintuitive.

But then again I started with network stuff way more than a decade after all this got created 🤣

I think the idea at the time was that if /usr is unavailable, you won't be doing much with the system anyway (other than fixing the configuration).

Nevermind, apparently the original meaning had nothing to do with a network (TIL for me), so our discussion is kinda moot. See section 0.24 in this 2.9BSD (1983) installation guide

Locally written commands that aren't distributed are kept in /usr/src/local and their binaries are kept in /usr/local. This allows /usr/bin, /usr/ucb, and /bin to correspond to the distribution tape (and to the manuals that people can buy). People wishing to use /usr/local commands are made aware that they aren't in the base manual.