[NCLUG] UNIX file system question

Tim Swanson swanson at CS.ColoState.EDU
Sun Jul 29 18:53:36 MDT 2007


Hi all.

My name's Tim Swanson. I'm a grad student at CSU and just signed up for this 
list. I hope to attend some of the meetings starting in August, and wanted to 
introduce myself. I've got kind of a basic question to start off with.

(I'm running Ubuntu 7.04, if it makes a difference.)


I'm setting up a Java development environment on my machine, and have gone 
about installing all of the usual suspects for Java development: Eclipse, Ant, 
the SDK itself, etc. All of this was done using the package manager. I'm 
perfectly happy to let the OS take care of the details of where and how to 
install packages.

However, I'm also using several Java applications and APIs that are basically 
"extract and use" style installations. (Using the Jena API, for instance, 
basically involves putting its JARs in your classpath.) Because my machine is 
multiple-user (really just myself several times, but with different setups), I 
don't want to put any of this code in user space (/home/username/**). I'd like 
to put it somewhere where it will be shared amongst all users.

I don't want to stick it somewhere that the package manager uses, because I 
don't like the idea of having package-manager managed file space being mixed 
in with manually managed file space (since any uninstalls or upgrades will 
obviously have to be done manually). It just doesn't seem very clean.

So I thought about creating a new directory under /home. I thought about 
creating a new directory under /usr or /usr/local (called "java_apps" or 
something similar). But then I started wondering what the UNIX-y way to do 
this was. So I thought I'd ask the list.

Is there a portion of the standard UNIX file system that is set aside for 
manually installed programs that are meant to be globally accessible?

Also, what is /usr/local for? (In my system there's nothing in it.)

Sorry to use so much space on such a simple question. A part of me says that 
I'm being silly, and that I should just stick it in user space, make it 
globally accessible, and be done with it, but I'm curious more than anything 
else. Any ideas/suggestions? Any pointers to an online description of the 
various components of the UNIX file system?


Thanks,
Tim Swanson





More information about the NCLUG mailing list