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
libcspi.3(3)						 Introduction to Library Functions					      libcspi.3(3)

NAME
at-spi, libcspi - Assistive Technology Service Provider Interface, and AT-SPI C Bindings DESCRIPTION
at-spi is the Assistive Technology Service Provider Interface, which provides a set of client-side APIs for use by assistive technologies. Assistive Technologies are augmentative or adaptive technologies that make the desktop user interface accessible to persons with disabili- ties. These APIs for assistive technology developers are available in two forms. at-spi is defined by CORBA IDL in the following files: /usr/share/gnome/idl/at-spi-1.0/Accessibility.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Accessible.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Action.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Application.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Component.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Desktop.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_EditableText.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Event.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Hyperlink.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Hypertext.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Image.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Registry.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Relation.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Role.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Selection.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_State.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_StreamableContent.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Table.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Text.idl /usr/share/gnome/idl/at-spi-1.0/Accessibility_Value.idl An AT-SPI client can use any programming language for which general CORBA language bindings are available (for example, Java, C, C++) and may use any CORBA 2.2-compliant ORB. The client bindings are generated from the above IDL by a language-specific IDL compiler which is usu- ally bundled with ORBs. The GNOME 2 environment includes an efficient ORB with C bindings (ORBit2). libcspi AT-SPI clients may also use the C language bindings that are defined in libcspi and documented in the developer documentation. To access the developer documentation, you must install the developer version of the package. Such clients may also link to libcspi, which provides CORBA server-side implementations of the Accessibility::EventLister interfaces which are used for AT-SPI event notification support. FILES
The following files are used by this application: /usr/lib/libcspi.so AT-SPI C Binding shared library /usr/share/gtk-doc/html Location of developer documentation ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWgnome-a11y-libs | +-----------------------------+-----------------------------+ |Interface stability |External | +-----------------------------+-----------------------------+ SEE ALSO
libatk-1.0(3) NOTES
Written by Brian Cameron, Sun Microsystems Inc., 2003, 2004. SunOS 5.10 31 Aug 2004 libcspi.3(3)
All times are GMT -4. The time now is 05:59 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy