Debian – Why did the package get installed to /opt

debiandirectory-structurefhslinux

A while back I installed couchdb from source on my debian machine. It seemed to install okay and everything worked.

A few weeks later I wanted to upgrade and installed from a .deb using dpkg. Everything now seems to have been installed under /opt. It all seems to work fine, but I don't really understand why it's all been installed under /opt. It doesn't feel as "smooth" as when things were installed directly into /usr/local/bin and /etc and /var/log. It's more cumbersome to configure than when I previously just edited the configuration files that were installed under /etc/couchdb

Would someone mind explaining to me why installation to /opt is "a good thing" and why this is a better way of doing things than the previous installation which was from the source?

I know this is a rather vague question but I'm only competent with Linux not an expert and don't understand the thinking behind installing to /opt

Best Answer

The Filesystem Hierarchy Standard gives these definitions:

  • /opt : Add-on application software packages
  • /usr/local : Local hierarchy (for use by the system administrator when installing software locally)

The way I read that:

  • Standard system applications should go in /bin and /usr/bin (implied)
  • Third-party packages should go in /opt
  • Something should only be installed into /usr/local if the system administrator wants it to

By extension, if the sysadmin installs something using dpkg or rpm, it should not go into /usr/local by default.

So it's arguably doing the right thing.

Related Question