/optと/usr/localの違いは何ですか?

/optと/usr/localの違いは何ですか?

~によるとファイルシステム階層標準/opt「追加アプリケーションパッケージのインストール」の内容です。 /usr/local「ローカルでソフトウェアをインストールするときは、システム管理者が使用します。」これらのユースケースは非常に似ているようです。ディストリビューションに含まれていないソフトウェアは、デフォルトでインストールするように構成されていることがよくあり、それをインストールするために選択した特定の韻や理由はあり/usr/localません。/opt

違いはありませんか、どちらも同じことをしますが、歴史的な理由で存在しますか?

ベストアンサー1

/optどちらもオペレーティングシステムの一部ではないファイルを含むように設計されており、/usr/local同じファイルセットを含めることを意図していません。

/usr/localは、管理者によって作成されたファイルがインストールされる場所であり、一般的make./configure; make; make install。アイデアは、オペレーティングシステムに属するファイルとの競合を防ぐことです。それ以外の場合は、ローカルファイル(/usr/bin/fooオペレーティングシステムの一部ではない/usr/local/bin/fooローカル代替ファイル)が上書きまたは上書きされます。

以下のファイルはすべて/usrオペレーティングシステムインスタンス間で共有できますが、Linuxではほとんど実行されません。これは/usr読み取り専用として定義されていますが、/usr/local/binソフトウェアをローカルに正常にインストールするには読み取りと書き込みが必要なため、FHSのやや逆説的な部分です。この問題を克服するために、FHSの主なインスピレーションの源であったSVR4ファイルシステム標準を避けて/usr/local使用することをお勧めします。/opt/local

/usr/localこれはもともとBSDの遺産です。当時/usr/bin、オペレーティングシステムのコマンドのソースコードはにあり/usr/src/bin/usr/src/usr.binローカルで開発されたコマンドのソースコードはにあり/usr/local/src、そのバイナリはにありました/usr/local/bin。 (タールボールの外では)パッケージングの概念はありません。

一方、バンドル/optされていないパッケージ(つまり、オペレーティングシステムの展開の一部ではないが独立したソースから提供されるパッケージ)をインストールするためのディレクトリであり、各パッケージは独自のサブディレクトリにあります。これは、独立したサードパーティ製ソフトウェアディストリビュータによってすでに完全なソフトウェアパッケージとして提供されています。他のものとは異なり、/usr/localこのパッケージはディレクトリの規則に従います(または少なくともそうする必要があります)。たとえば、someappインストールはにあり、/opt/someappそのコマンドの1つはにあり、/opt/someapp/bin/fooその設定ファイルはにあり、対応する/etc/opt/someapp/foo.confログファイルはにあります/var/opt/someapp/logs/foo.access

おすすめ記事