web-dev-qa-db-ja.com

ソフトウェアソースファイルを保持するための標準の場所

OpenSSLのように、ソースファイルを保持するためのLinuxの標準的な場所はありますか? OpenSSLのデフォルトバージョン以外のソースからNginxをビルドしています。 OpenSSLをダウンロードして解凍する必要があり、ホームディレクトリで実行しました。さて、Linuxには標準的な場所があるのではないでしょうか/opt

17
user3448600

このようなことを自問するときはいつでも Filesystem Hierarchy Standard (FHS)を確認してください。そこで、次のエントリが見つかります。

usr/src:ソースコード(オプション)

目的

参照目的でのみ、このサブディレクトリにソースコードを配置できます。

したがって、ソースファイルを/usr/srcのサブディレクトリに置くことができます。とは言っても、これはオプションのディレクトリなので、好きな場所に保存できます。ソースコードは、実行可能ファイルにコンパイルした後は関係ないので、システムは、特定の場所でアクセス可能なもののソースを必要としません。

結論:/usr/srcはかなり標準的な場所ですが、必要に応じて自由に選択できます。

21
terdon

/usr/local/srcは、ソースコードを保持し、ビルドするための安全な場所です。 FHS 言う

Directory   Description  
src         Local source code

そしてまた

/ usr/local階層は、システム管理者がソフトウェアをローカルにインストールするときに使用します。システムソフトウェアが更新されたときに上書きされないようにする必要があります。

「ローカルソースコード」の意味は明確ではありませんが、/usr/local/srcとは異なり、システムが/usr/srcに何も配置しようとしないことは明らかです。 。

実際、私は別のファイルシステムを使用しています:

Filesystem                    Size  Used Avail Use% Mounted on
/dev/mapper/data-local_src     79G   46G   30G  61% /usr/local/src

注:少なくともDebianでは、/usr/localに書き込むには、ユーザーをstaffグループに追加する必要があります。

13
Faheem Mitha

「標準」で従来型を意味する場合、ソースコードを解凍してビルドする場所はホームディレクトリです。このようなファイルは一時的なものであることが予想され、完了時に削除されるか、必要に応じて保持されますが、必要に応じて整理されます。あなたのホームディレクトリは、この種のすべてのものと遊ぶためのエリアです。

それらを後で保持したい場合は、参考のために、「 Filesystem Hierarchy Standard "で/usr/srcを推奨します。ただし、これは法律ではなくガイドです。そして、もしあなたがこの習慣に取り掛かったとしても、Linux以外のシステムに挑戦したとしても、それに従うことで問題を引き起こしがちです。たとえば、BSDシステムでは、ベースシステムのソースがそこに保持されており、それらをいじりたくはありません。 Linuxであっても、パッケージマネージャーによって保存されているソースと混ざり合う危険性があります。これは望ましくありません。

全体的に/usr/srcを避けることをお勧めします。何もそこに保管することには明らかな利点はなく、意図した意味を混同した場合の潜在的なリスクもありません。

/usr/srcを使用できます。この場所は妥当なように聞こえ、rpmベースのディストリビューションはこれを使用してsrpmパッケージのコンテンツを格納します。しかし、/opt/usr/local~/srcのような他の場所は良いです

5
Romeo Ninov