自分のアプリケーションを/usr/localまたは/usr/local/shareに置く必要がありますか?

自分のアプリケーションを/usr/localまたは/usr/local/shareに置く必要がありますか?

「標準」とは何ですか?アプリケーション(バイナリだけでなくディストリビューション全体)を/usr/localまたは/usr/local/shareに配置する必要がありますか?

たとえば、scala または weka には、例、バイナリ、ライブラリなどが含まれます。そうなるだろう

/usr/local/scala-2.9.1 

または

/usr/local/share/scala-2.9.1

私は唯一の管理者なので、これは私にとって大きな問題ではありませんが、私自身のカスタマイズよりも広く利用可能なものを使用することを好みます。

重要:アプリケーションを/usr/local/bin、/usr/local/libなどに分割する必要がある状況について尋ねるものではありません。代わりに、アプリケーション全体に対して1つのホームディレクトリを維持する必要がある状況について尋ねています。

ベストアンサー1

この場合、/ optはより標準的だと思います。ファイルシステム階層標準の関連部分以下の引用。

Distrosは/ optにソフトウェアをインストールできますが、ローカルシステム管理者の許可なしにローカルシステム管理者がインストールしたソフトウェアを変更または削除することはできません。

Ÿ理論的根拠アドオンソフトウェアで/ optを使用することは、UNIXコミュニティでよく確立された慣行です。 System Vアプリケーションバイナリインターフェース[AT&T 1990]はSystem Vインターフェース定義(第3版)に基づいており、ここで定義されているものと非常によく似た/ opt構造を提供します。

iBCS2(Intel Binary Compatibility Standard v.2)も/ optに対して同様の構造を提供します。

通常、/etc/opt/ および /var/opt/ にコピーするファイル、および /opt にあるディレクトリなど、システムでパッケージをサポートするために必要なすべてのデータは /opt/ になければなりません。

ディストリビューションにインストールされているソフトウェアとローカルにインストールされたソフトウェアとの間で競合が発生する可能性があるため、/ optを使用するディストリビューションには少し制限が必要です。特に、一部のバイナリソフトウェアに固定されたパス名がある場合は、さらにそうです。

/opt/ 以下のディレクトリ構造はソフトウェア・パッケージ・プログラムによって決まりますが、パッケージを /opt// にインストールし、/opt/package 指示に似た構造に従うことをお勧めします。この構造から逸脱する有効な理由の1つは、パッケージをサポートするファイルが/opt//libまたは/opt//binにインストールできることです。

おすすめ記事