Sponsored Content
Operating Systems Linux Fedora Clueless re Java: /opt vs. /usr/local Post 302879786 by bakunin on Sunday 15th of December 2013 10:16:04 AM
Old 12-15-2013
The debate about "/opt" versus "/usr/local" boils down to the following:

In Unix the layout of the filesystem is more or less fixed. Every file, executable or not, should have its designated place where it has to go. This only as an afore.

The Linux initiative came up with an attempt to further codify this already long-used "best practice" and published the "Filesystem Hierarchy Standard".

I won't comment on the other parts of the document, just the part dealing with "/usr/local" and "/opt":

"/opt" is where all application should go. For every application there should be a subdirectory with its name (and optionally manufacturer) and in that a directory with its version. The "foo" application of the "bar" company in version 1.23 would go to "/opt/bar/foo/1.23", for instance. The executables for this software should be in "/opt/bar/foo/1.23/bin" with optional links to "/opt/bin" to avoid a convoluted PATH.

"/usr/local" is the place for all the OS extensions the administrator wants to have at this particular system. As "/usr" (short for "Unix Software Resources") is under the sole discretion of the OS provider this is the only place that should be modifyable by the SysAdmin. Still, this should be limited to OS-relevant utilities, not for applications in their own right. You might place a third-party "ssh"-client there or "gzip", but not, for instance, "MySQL".

Having said that: if you put java into "/usr/local" or into "/opt" is a question of if you see it as an application in its own right or merely a system tool. There is no "correct" answer to that, just your sensible decision about what best describes its usage on your system.

I hope this helps.

bakunin
 

10 More Discussions You Might Find Interesting

1. Programming

/usr/bin/ld: warning: libgfortran.so.1, needed by /opt/openmpi/lib/libmpi_f90.so, may

hello, i get these warnings on make(ing) /usr/bin/ld: warning: libgfortran.so.1, needed by /opt/openmpi/lib/libmpi_f90.so, may conflict with libgfortran.so.3 /usr/bin/ld: warning: libgfortran.so.1, needed by /usr/lib/gcc/x86_64-redhat-linux6E/4.3.2/../../../liblapack.a, may conflict with... (1 Reply)
Discussion started by: sreekar
1 Replies

2. BSD

configure /usr/local/etc/be-agent.cfg

hi Howto configure Ralus at /usr/local/etc/be-agent.cfg on freeBSD 7.0 for Backup Exec 9.1? I've tried the following: # cat /usr/local/etc/be-agent.cfg name bsd.domain export / as root export /usr as usr export /var as var export /tmp as tmp force_address 10.10.1.50 tell... (0 Replies)
Discussion started by: ccc
0 Replies

3. Solaris

Questions about /usr/local/bin & scripts.

Hi gentlemen. For what intended is the directory /usr/local/bin? In this directory are some script. I don't understand how these scripts being in this directory are started. Each time after registration of the user occurs start of these scripts. These scripts start applications. (7 Replies)
Discussion started by: wolfgang
7 Replies

4. UNIX for Dummies Questions & Answers

/usr/local/lib is not searched by ld-linux.so by default?

it seems that /usr/local/lib is not searched by ld-linux.so by default in fedora14. If so, why some software put its lib files in /usr/local/lib? eg: glib and gtk+. (6 Replies)
Discussion started by: vistastar
6 Replies

5. UNIX for Dummies Questions & Answers

Difference between /opt and /usr/local.

Hello Gurus, Can any one explain me the difference between /opt and /usr/local. When should we use them. Can we link with any directory in windows I mean similarity between unix and windows. (7 Replies)
Discussion started by: rama krishna
7 Replies

6. AIX

/usr/local/bin/cvs: Not found

I can able to access /usr/local/bin/cvs in the terminal (AIX 6.1 Box). but i am getting the "/usr/local/bin/cvs: Not found " when i call it from the script. please some one assist me what maybe problem (6 Replies)
Discussion started by: hifirockz
6 Replies

7. OS X (Apple)

sudo chown -R `whoami` /usr/local

I was following a tutorial on installing Homebrew and I changed the ownership of /usr/local/ to me. Now McAfee Security won't start This is the exact line I typed: sudo chown -R `whoami` /usr/local Then I tried to fix it with: sudo chown -R root /usr/local I still can't start mcafee. It say... (7 Replies)
Discussion started by: chancho
7 Replies

8. Shell Programming and Scripting

/usr/local/bin/expr function not working

Legends, I am not able to set "expr" function in ksh script. Below is the sample code i used, and output is as "Syntax error" Please help me to come out of it. OUTPUT (9 Replies)
Discussion started by: sdosanjh
9 Replies

9. BSD

FreeBSD: /usr/bin/ld not looking in /usr/local/lib

I'm not sure if this is the default behavior for the ld command, but it does not seem to be looking in /usr/local/lib for shared libraries. I was trying to compile the latest version of Kanatest from svn. The autorgen.sh script seems to exit without too much trouble: $ ./autogen.sh checking... (2 Replies)
Discussion started by: AntumDeluge
2 Replies

10. Red Hat

Process not running: /opt/java15/jdk/bin/java -classpath /opt/apache/apache-ant-1.7.0-mod/lib/ant-la

Have no idea on what the below error message is: Process not running: /opt/java15/jdk/bin/java -classpath /opt/apache/apache-ant-1.7.0-mod/lib/ant-launcher.jar org.apache.tools.ant.launch.Launcher -buildfile build.xml dist. Any help? (3 Replies)
Discussion started by: gull05
3 Replies
libglpk-java(3) 					       libglpk-java overview						   libglpk-java(3)

NAME
libglpk-java - GNU Linear Programming Kit Java Binding DESCRIPTION
The GNU Linear Programming Kit (GLPK) package supplies a solver for large scale linear programming (LP) and mixed integer programming (MIP). The GLPK project is hosted at http://www.gnu.org/software/glpk. It has two mailing lists: - help-glpk@gnu.org and - bug-glpk@gnu.org. To subscribe to one of these lists, please, send an empty mail with a Subject: header line of just "subscribe" to the list. GLPK provides a library written in C and a standalone solver. The source code provided at ftp://gnu.ftp.org/gnu/glpk/ contains the docu- mentation of the library in file doc/glpk.pdf. The Java platform provides the Java Native Interface (JNI) to integrate non-Java language libraries into Java applications. Project GLPK for Java delivers a Java Binding for GLPK. It is hosted at http://glpk-java.sourceforge.net/. To report problems and suggestions concerning GLPK for Java, please, send an email to the author at xypron.glpk@gmx.de. ARCHITECTURE
A GLPK for Java application will consist of the following - the GLPK library - the GLPK for Java JNI library - the GLPK for Java class library - the application code. GLPK LIBRARY
The GLPK library can be compiled from source code. Follow the instructions in file INSTALL provided in the source distribution. Precompiled packages are available in many Linux distributions. The usual installation path for the library is /usr/local/lib/libglpk.so. The library has to be in the search path for binaries. GLPK FOR JAVA JNI LIBRARY
The GLPK for Java JNI library can be compiled from source code. Follow the instructions in file INSTALL provided in the source distribu- tion. The usual installation path for the library is /usr/local/lib/jni/libglpk-java.so. The library has to be in the search path for binaries. Specify the library path upon invocation of the application, e.g. java -Djava.library.path=/usr/local/libjni GLPK FOR JAVA CLASS LIBRARY
The source code to compile the GLPK for Java class library is provided at http://glpk-java.sourceforge.net. The GLPK for Java class library can be compiled from source code. Follow the instructions in file INSTALL provided in the source distribu- tion. The usual installation path for the library is /usr/local/share/java/glpk-java.jar. The library has to be in the CLASSPATH. Specify the classpath upon invocation of the application, e.g. java -classpath /usr/local/share/java/glpk-java.jar;. SEE ALSO
Further documentation and examples can be found in the documentation path, which defaults to /usr/local/share/doc/libglpk-java. version 1.0.18 September 10th, 2011 libglpk-java(3)
All times are GMT -4. The time now is 09:30 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy