web-dev-qa-db-ja.com

Debianでの/ lib / init / rwの使用は何ですか?

Debian 5(Lenny)をインストールしたところ、/ lib/init/rwがRAM Disk(tmpfs)として報告されていることに気付きました。Fedoraの経験しかなかったので興味があります。そのディレクトリはDebianでどのような機能を果たしますか?ユーザーが作成したシェルスクリプトでキャッシュに使用できますか、それとも立ち入り禁止でOSのみが使用できますか?ありがとうございます。

4
GeneQ

他の人が指摘しているように(これは彼らの返信に対するコメントでしたが、コメントボックスに収まらないほど長くなりました)、これは、他のファイルシステムが読み取り専用であるかどうかにかかわらず、通常はブートプロセス中に一部のinitscriptによって使用されますまだマウントされています。

ファイルシステムは、起動が完了した後もマウントされたままになります。これは、ファイルシステムに書き込むinitscriptが他の時間に実行される可能性があるためです(手動でサービスを再起動するか、ランレベルを切り替える場合)。デバイス/ファイルシステム/lib/initがオンになっていることが読み取り専用になった場合に備えて、強制的にアンマウントしないでください。実際にデータを保存していないときは、感知できるほどのリソースを消費しないため、パフォーマンスの問題はありません。

スクリプトが十分にテストされていて、initscriptが必要なときにそこに書き込めないように完全に埋められないことが保証されている場合は、独自のスクリプトに使用しても害はありません。 、この目的のために独自のtmpfsマウントを作成する方が安全です(理論的には、好きなだけマウントでき、実際にデータを保存するときにのみメモリを消費します)または単に/tmpを使用して、ディスク上ではなくtmpfsファイルシステムとしてマウントします。

一時データにtmpfsファイルシステムを使用する場合、これはメモリを消費し、最初からメモリが不足しているとスワッピングが発生する可能性があることに注意してください。これが、私が通常/tmpの代わりに別のマウントを使用する理由です(多くのプロセスがデータを配置する場所であるため、スクリプトだけの場合よりも長期的に多くのメモリを使用する可能性が高くなります)。ほとんどの場合、十分なメモリの「スペア」がある場合、これは問題ではありません。 freetopおよび同様のツールの出力では、tmpfsファイルシステムに保持されているデータによって使用されるメモリは通常「キャッシュ」カウントにカウントされます Linuxの場合)を参照してください、freeコマンドによって報告される「buffers」と「cache」の違いは何ですか? 詳細については。

編集:追加するのを忘れました... Debianが標準スクリプト用に作成したものを使用する代わりに、独自のtmpfsベースのマウントを作成するもう1つの理由は、スクリプトをディストリビューション固有のプロパティにあまり依存させないことです。 、つまり、スクリプトを他の構成に移行する場合は、もう少し変更する必要があります。

10
David Spillett

これは、/ sbin/initの実行時に書き込み可能な名前空間を必要とするinitscriptによって使用されます。その時点で、ルートパーティションは読み取り専用である可能性が高いことを忘れないでください。

アンダース

4
chankster

どうやらそれは起動時にinitscriptsによって使用されます このリンク を参照してください

2
Maxwell