
によると、FHS、ディレクトリ/lib
と は/usr/lib
両方ともライブラリ用です (/sbin
それぞれ とユーザー ライブラリで使用されるライブラリ)。
しかし、/var/lib
フォルダーはどうでしょうか? 同じ論理に従うと、このフォルダーには「変数ライブラリ」(奇妙に聞こえます) のようなものが含まれているはずですが、実際には実行中のプログラムによって生成および維持されるデータ、または Wikipedia の記事で定義されているデータが保持されます。
状態情報。プログラムの実行時に変更される永続データ (データベース、パッケージ システムのメタデータなど)。
新たな視点から見ると、データベースデータと提供されたファイル/srv
を/var/lib
答え1
これは、新しい 3.0 バージョンへのコミットで説明されています。
http://bzr.linuxfoundation.org/loggerhead/lsb/devel/fhs-spec/revision/26
具体的には、/srv/
は、提供されるファイルシステム構造化データ用であり、/var/lib/
はローカルで消費されるデータ用です。Apache は、ファイルシステム階層であるため、/srv からサービスを提供します。MySQL は、mysqld のみがアクセスし、ファイルシステム階層ではないため、/var/lib からサービスを提供します。
答え2
として管理者1138すでに述べたように、FHS 3.0 ではこのことについて/srv
以下のセクションで説明しているので、引用します。
https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch03s17.html
データのディレクトリとファイル構造が消費者に公開されていない場合は、 に格納する必要があります
/var/lib
。
この文は、このFHSのバグ。 そこには、トーレフ・フォグ・ヒーン書いている:
ここでの重要な違いは、システム管理者が通常ディレクトリ構造に触れており、それを気にする必要があるかどうかだと思います。
ここで役立つのは、/srv
システム管理者の「ディレクトリ構造に注意する必要がある」。