zlacker

[return to "Understanding the bin, sbin, usr/bin, usr/sbin split (2010)"]
1. schmuc+3q[view] [source] 2026-01-04 16:33:55
>>csmant+(OP)
This post gets some of the details wrong. /usr/local is for site-local software - e.g. things you compile yourself, i.e in the case of the BSDs the ports collection - things outside the base system. (They may be compiled for you).

Since Linux has no concept of a base system, it's a stand-alone kernel with a hodgepodge of crap around it - this distinction makes no sense on Linux.

/opt is generally for software distros for which you don't have source; only binaries. Like commercial software packages. More common on Real UNIX(R) because most Linux users outside enterprise aren't running commercial software. You're putting your $500k EDA software under /opt.

◧◩
2. immibi+6v[view] [source] 2026-01-04 17:05:15
>>schmuc+3q
I understand /usr/local to be for anything not managed by your distribution but following the standard system layout (e.g. Python that you compiled yourself) while /opt is used for things that are (relatively) self-contained and don't integrate with the system, similar to Program Files on Windows (e.g. a lot of Java software).

Regarding "that's a Linux-ism" - well yeah? Linux is the main OS this is about. FreeBSD can do what it wants, too.

◧◩◪
3. schmuc+Aw[view] [source] 2026-01-04 17:14:27
>>immibi+6v
> anything not managed by your distribution

That's a Linux-ism. Other *nix there is a lot more in /usr/local.

In reality /usr is similar to Windows' System32 directory on most Unicies.

/opt is really the only good place for Java and where I've been putting it for decades (old habits die hard).

[go to top]