Table of Contents
/opt
/opt holds self-contained optional software packages that install outside the normal distribution package manager. Each package gets its own subdirectory, and inside it the layout mirrors the root hierarchy: bin/, lib/, share/, etc/. Nothing in /opt is shared with other packages; a package brings its own private copies of whatever libraries it needs.
/opt/cuda/ NVIDIA CUDA toolkit /opt/cuda/bin/nvcc CUDA compiler /opt/cuda/lib64/ CUDA shared libraries /opt/google/chrome/ Google Chrome browser /opt/android-studio/ Android Studio IDE /opt/company/product/ proprietary in-house software
The rationale is isolation. Software installed by a distribution package manager is allowed to scatter files across /usr/bin, /usr/lib, /usr/share, and /etc. A package installed in /opt is entirely contained in one directory, making it trivial to install, upgrade, and remove by copying or deleting that directory. Adding /opt/package/bin to $PATH is usually all that is required to make it usable.
/opt is the standard location for commercial and proprietary software that ships as a tarball or installer rather than a distribution package. It is also common for software that has strict version requirements and ships its own runtime to avoid conflicts with system libraries.
