私が使用しているLinuxとは異なり、FreeBSDでは通常、インストールされて/usr/local
いるディレクトリが使用されていないときにもたくさん入力されます。どのポート。実際、デフォルト以外のシェル(BashとZ-Shell)はそこ(/usr/local/bin
)に配置されます。
/usr/local
Linuxでは、カスタムスクリプトやソフトウェアをツリーに置き、配布ソフトウェアから明確に分離することをお勧めします(たとえば、これらの/usr/local
「修正」を削除して簡単に「無効にする」$PATH
)。
その理由は何ですか? FreeBSDをLinuxのように動作させる方法があるかどうか疑わしいので、すべてのユーザーがアクセスできるカスタムソフトウェアとファイルをインストールするベストプラクティスは何ですか?
ベストアンサー1
/usr/local
Linuxでは、分散ソフトウェアとは明確に区別できるように、ツリーにカスタマイズされたスクリプトまたはソフトウェアを配置することをお勧めします。
それはFreeBSDで得られるものとまったく同じです。。 ZシェルやBourne AgainシェルなどのシェルFreeBSDの一部ではありません。第三者によって追加されます。オペレーティングシステムは時々「base」というスラングと呼ばれます。通常、BSDの世界では、「基本」の上に第三者が追加したものはありません/usr
。/usr/local
BSDの世界では(OpenBSDなどの他のBSDオペレーティングシステムでも同様です)、オペレーティングシステム自体はおよび/
にあり、/usr
OS以外の項目はにあります/usr/local
。誰かがアドオンなしでオペレーティングシステムの機能だけを望むなら、自分が/usr/local
何をしているのか考えないのです。
わずかに異なる点で、TrueOS ServerやTrueOS DesktopなどのFreeBSD派生製品は、FreeBSDの上に追加することがオペレーティングシステムの一部ではないことを謙虚に考えています。したがって、/usr/local
オペレーティングシステム以外のエントリですぐに使用できるTrueOSエントリがたくさんあります。たとえば、ここでPCDM(TrueOSディスプレイマネージャ)を見つけることができます。
一方、/usr/local
どこみんなオペレーティングシステムの一部ではないカスタムソフトウェアは削除されます。
この部門がどれほど強力であるかを示すために:
rc
OS以外のアイテムのMewburnスクリプト/usr/local/etc/rc.d/
はに追加されません/etc/rc.d/
。ここで見つけることができます/usr/local/etc/rc.d/nginx
。- 非オペレーティングシステム構成ファイル
/usr/local/etc/
は/etc/
。ここで見つけることができます/usr/local/etc/cups
。 /usr/share/man
オペレーティングシステムのマニュアルと非オペレーティングシステム/usr/local/man
のマニュアルの位置に違いがあります。
パッケージマネージャ自体も(まだ)オペレーティングシステム自体の一部ではありません。 「ブートストラップ」パッケージマネージャがあります。これには設定ファイルが含まれており、それ自体がアドインである実際のパッケージマネージャをpkg-static
インストールします。pkg
/usr/local/etc/pkg
Linuxの「配布」世界で行わなければならない概念的な飛躍は、「配布者」が提供する混乱したパッケージからパッケージを選択してオペレーティングシステムを構築しないことです。完全なオペレーティングシステムは一貫したデバイス(インストールプログラムによってインストールされますfreebsd-update
。あなた自身開発者でもシステム管理者でも、サードパーティのエントリを提供すると、ポートやパッケージを実行したり、/usr/local
何らかの方法で直接配置したりできます。
一方、カスタマイズされたソフトウェアははいオペレーティングシステムの一部は、オペレーティングシステムがある場所に移動します/
。オペレーティングシステム全体のソースコードとビルドシステムは、この自給自足システムの一部として提供されています/usr
。/usr/src
そこでローカルの変更を行い、必要に応じてSubversion(FreeBSD)とgit(TrueOS)を使用して他の人と共有し、「ユーザーゾーン」を個別にまたは全体のOS(両方)を再構築できます。「シェル」と「コア」)その時から。
興味深い注意事項
それでもシステムに独自の構造を作成する場合は、オペレーティングシステムのマニュアル自体に応じて、オペレーティングシステムのマニュアルページのhier
代わりにローカルのマニュアルページを提供する必要があります。 ☺
追加読書
- 」第4章アプリケーションのインストール:パッケージとポート」。 FreeBSDマニュアル。 2016. FreeBSD文書化プロジェクト。
- FreeBSD ポーターマニュアル。 2016. FreeBSD文書化プロジェクト。
hier
。 §7。 FreeBSDマニュアル。- 」Linuxユーザー向けのTrueOS」。 TrueOSユーザーガイド。 2016.
- https://unix.stackexchange.com/a/332441/5132