On Thu, Aug 21, 2014 at 4:15 AM, Toralf Lund toralf.lund@pgs.com wrote:
What is formally correct about putting executables in some obscure place under /var?
I'm not quite sure what you mean by that. For the alternatives setup I have links on /usr/bin or whatever pointing to other links on /etc/alternatives, which in turn point to the real files - where direct links from /usr/bin would of course be simpler. Perhaps you were talking about something else, or are the locations different on CentOS 7 (I'm using version 6.)
So what do you have to execute when you want to run a jvm that is not the current system default in alternatives? And why does anyone think that is a formally correct place?
What I was referring to is that I believe it's considered as incorrect to put "dynamic" data on /usr these days. I'm not sure there is a separate specification saying so, or if it's just taken to be implied by the FHS (http://www.pathname.com/fhs/pub/fhs-2.3.html).
Committee decisions are normally bad enough, but changing them all the time makes them even worse - but I suppose they have to do something to justify their existence. /usr had a well defined role from the beginning of unix - and that was to not hold anything needed for booting. /sbin and /usr/sbin are just weird, as though users don't need to run common commands like ifconfig. /var for the java executables?? /opt might have made sense.