/etc isnt called /conf or configuration because it contains examples, scripts and other small stuff as well, which is etcetera.
/var is for variable data like logs and pid files, not meant to be changed by the user directly
/opt sucks and is for losers who dont know about /usr/local or how to install stuff in ~
The Linux way makes much more sense than Windows or MacOSX way. binaries are in bin libraries are in lib, whats not to like?
It did mean "user" originally. Home directories were usually put there.
However, the root filesystem was typically very small. So very early on in UNIXs evolution things that were large and not needed during system boot ended up finding homes in /usr, simply because it was where the bulk of the disk space was. So you got /usr/bin, /usr/dict, ...
Eventually /usr got so full of non-user content, UNIX-based OSes started putting home directories somewhere else entirely (i.e. /home on linux for example) Because the user to home directory mapping was just held in /etc/passwd, it was much easier to move the users than everything else. Later, the "Unix System Resources" backronym was coined.
So mintplant is right: /usr is very much a historic wart on the UNIX filesystem layout.
I disagree. /opt is for systemwide installations of monolithic software by dumb companies that can't fit their software into the standard layout. In the Linux FHS /usr/local/ is supposed to be for non distribution installed software that nonetheless uses the standard layout with /usr/local/{lib,bin,doc} etc. In /opt you usually have something like /opt/somesoftware/ and some non-standard hierarchy underneath.
You are actually fully agreeing with what was said !
Um, good luck with your packages where you relied on the OS. Let's not talk about stdlibc++.
Hint: if you really want your stuff to work for a long time, depend on the kernel and nothing else.
/opt is really where: /opt/importantstuff goes. The stuff where they bundled the libc because Debian changes too fast. Freaky stuff. Telco stuff...
One would certainly never dream of keeping entire web sites in there!
Now when you have web applications they can be in /srv as well and the database is usually wrongly put in /var (looking at you mysql) but what you gonna do when you need a system user, just like a users stuff is supposed to be in home so put your database there /home/postgresql/its_datas here, as anyway you need to run the db as its own user.
Makes sense no?
Doesn't it stand for 'Extended ToolChest' ?
It could be called misc as well in my opinion.
They both use UNIX architecture...
http://lists.busybox.net/pipermail/busybox/2010-December/074...