Согласно TLDP , это /opt
может быть хорошим местом для такого рода программного обеспечения. Я сам использовал его для хранения некоторых инструментов, связанных с принтером, и «динамической» версии Skype (как сказал kba, «поддержка терминала» может быть достигнута путем соответствующей установки PATH
переменной).
В более общем смысле, я склонен использовать /opt
для «установки» проприетарное программное обеспечение, упакованное как исполняемый файл, но это, вероятно, только я. Кроме того, я склонен просто избегать такого рода программного обеспечения, поскольку у меня обычно нет уверенности в том, что он собирается делать после запуска.
Другая причина, по которой я выбрал, /opt
заключается в том, что он обычно предназначен для стороннего независимого кода, который не зависит ни от какого файла за пределами своего /opt/'package'
каталога (и других opt
каталогов, таких как /etc/opt
).
Ни при каких обстоятельствах другие файлы пакетов не должны существовать вне иерархий / opt, / var / opt и / etc / opt, за исключением тех файлов пакетов, которые должны находиться в определенных местах в дереве файловой системы, чтобы функционировать должным образом. [...] Как правило, все данные, необходимые для поддержки пакета в системе, должны присутствовать в / opt / 'package', включая файлы, предназначенные для копирования в / etc / opt / 'package' и / var / opt / ' package ', а также зарезервированные каталоги в / opt.
Одним из преимуществ выпуска исходного кода является то, что люди могут настраивать процесс компиляции, предоставляя собственные пути к библиотекам / заголовкам в зависимости от особенностей своей системы. Когда разработчик решает выпустить код как исполняемый файл, это преимущество теряется. ИМХО, на этом этапе разработчику больше не разрешается предполагать, что зависимости его / ее программы будут доступны (именно поэтому все должно быть упаковано вместе с исполняемым файлом).
Любой устанавливаемый здесь пакет должен размещать свои статические файлы (например, дополнительные шрифты, картинки, файлы базы данных) в отдельном дереве каталогов / opt / 'package' или / opt / 'provider' (аналогично тому, как Windows будет устанавливаться). новое программное обеспечение в собственном дереве каталогов C: \ Windows \ Progam Files \ «Имя программы»), где «пакет» - это имя, которое описывает пакет программного обеспечения, а «поставщик» - это зарегистрированное имя провайдера LANANA.
Для получения дополнительной информации, я бы также предложил прочитать этот другой вопрос U & L , который касается различий между /opt
и /usr/local
. Я бы лично избегал /usr/local
в этом случае, особенно если я не тот, кто создал программу, которую я устанавливаю.