According to the Filesystem Hierarchy Standard, /opt
is for “the installation of add-on application software packages”. /usr/local
is “for use by the system administrator when installing software locally”.
opt and usr/local are designed to contain non operating system files. /opt
is a directory where to install unbundled packages, each in its own subdirectory, whereas /usr/local is designed to contain all make files. In addition /usr directory is designed to share files between all linux instances.