The directory name "usr" already implies that (normal) user based programs are supposed to be there.
Not since the Dark Ages of Unix history, if it ever was. What do the abbreviations "etc" and "usr" mean?
Now, the /usr
directory is for the administrator to handle. However, almost all content in /usr
is handled by packages, and /usr/local
is where the administrator can install local software, outside of the package management system. Let's consult the Filesystem Hierarchy Standard:
/usr/local : Local hierarchy
Purpose
The /usr/local
hierarchy is for use by the system administrator when
installing software locally. It needs to be safe from being
overwritten when the system software is updated. It may be used for
programs and data that are shareable amongst a group of hosts, but not
found in /usr
.
Locally installed software must be placed within /usr/local
rather
than /usr
unless it is being installed to replace or upgrade software
in /usr
.
For both /usr
and /usr/local
in a modern Linux system, normal users shouldn't have write permissions. On a single-user system, sure, you could give write access to /usr/local
, but you have sudo
privileges anyway (how often do you have to write to these directories?).
/usr
literally stands for. The bottom line is that all (modern) explanations mention that it is about "shareabble, read- only data", and: "should not be written to". – Jacob Vlijm May 02 '16 at 18:24