Path conventions in Linux
Way more information under man hier, but these are the ones i'm are usually stumped by.
And some info from Wikipedia too if that's easier.
https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
-
/bin(and/sbin) were intended for programs that needed to be on a small/partition before the larger/usr, etc. partitions were mounted. These days, it mostly serves as a standard location for key programs like/bin/sh, although the original intent may still be relevant for e.g. installations on small embedded devices. -
/sbin, as distinct from/bin, is for system management programs (not normally used by ordinary users) needed before/usris mounted. -
/usr/binis for distribution-managed normal user programs. -
There is a
/usr/sbinwith the same relationship to/usr/binas/sbinhas to/bin. -
/usr/local/binis for normal user programs not managed by the distribution package manager, e.g. locally compiled packages. You should not install them into/usr/binbecause future distribution upgrades may modify or delete them without warning. -
/usr/local/sbin, as you can probably guess at this point, is to/usr/local/binas/usr/sbinto/usr/bin.