
編集: 時代遅れというのは、悪い/不必要という意味ではありません (/proc
混乱していることには同意します)。モジュール性は良いことであり、私はそれが大好きです。つまり、システムの情報であり、( に) 保持され、/sys
どこか別の場所で見つけられるということです。
/sys
とについてはあまり情報を見つけることができませんでした/proc
。両方のコンテンツがファイルシステム階層標準(それらの見た目や構築方法はカーネルのバージョンに依存するため)
/システムしない独自のman
ページもあります。/proc
独自のマニュアルページがある、そしてそれはかなり多くの説明を持っていますが、それでも、そこには記載されていない フォルダーとファイルがいくつかあります (たとえば、/acpi
および)。はかなり新しいですよね? そして、それが存在する前は、 が提供するすべての情報はの一部でしたよね?consoles
/sys
/sys
/proc
質問:
これはまだ当てはまるのでしょうか? すべての情報フォームは、のいずれかの形式で/sys
見つかりますか? これはユーザーフレンドリーなデザインの単なる拡張機能なので、 のドキュメントは時代遅れになりますよね? または、には他の形式では存在しないシステム情報がありますか?/proc
/sys
/sys
/proc
/sys
こうなるとLinux 初心者に説明してくれる場所はどこでしょうか?
答え1
/sys
時代遅れではなく、むしろ/sys
新しいものであり/proc
、将来的にも成長していくでしょう。
/proc
(およびprocfs
) は Linux より数年前から存在しています。実行中のプロセス構造へのアクセスのみを目的として設計されており、特にデバッガや類似のツールを対象としています。Solaris などの現在の SVR4 ベースの OS では、この目的に限定されています。一方、Linux procfs の実装者は、プロセスに関係のないカーネル構造へのアクセスにも procfs を使用するのが良いアイデアだと考え、プロセス情報に誘導する数値ディレクトリと、カーネル統計、テーブル、その他のデータにアクセスできるテキスト ファイルとディレクトリを混在させています。このアプローチは AIX に移植され、Linux ソフトウェアの移植を容易にするために BSD で部分的にエミュレートされています。
このアプローチが混乱を招くことが明らかになったため、/sys
より優れた設計で が作成され、/proc
エントリの一部がそこに移動されました。残念ながら、多くのツールが/proc/something
ハードコードされているため、最もよく使用されるディレクトリ エントリは/proc
そのまま残ります。
/proc
またはのいずれかの下にある特定のパスの特定のファイルにどのような情報が含まれているかを知る方法については、/sys
お気づきのとおり、ドキュメント (ある場合) を見つけるのは簡単ではありません。幸い、カーネルはオープン ソースなので、最後の手段はそのコードを確認することです。