タイトルに書かれているように、initスクリプトはpidファイルをどこに書けばいいですか?/ var / runの代わりに選択する必要のある標準パスはありますか?
/ tmpは、/ tmpを保存する場所として適していますか、それとも欠点がありますか?
タイトルに書かれているように、initスクリプトはpidファイルをどこに書けばいいですか?/ var / runの代わりに選択する必要のある標準パスはありますか?
/ tmpは、/ tmpを保存する場所として適していますか、それとも欠点がありますか?
回答:
要するに、どこにでも保存できます(たとえば、/tmp
または/var/tmp
)/var/run
が、推奨される標準です。
/var/run
は、ファイルシステム階層標準です:
このディレクトリには、システムが起動されてからのシステムを説明するシステム情報データが含まれています。このディレクトリの下のファイルは、ブートプロセスの開始時にクリア(必要に応じて削除または切り捨て)する必要があります。プログラムには/ var / runのサブディレクトリがあります。これは、複数のランタイムファイルを使用するプログラムに推奨されます。[脚注37]
そして、望ましい機能は、ほとんどのディストリビューションが自動的にクリーンアップすることです(/tmp
一部のディストリビューションでブート時にクリーンアップされない場合とは異なります)。これにより、古いpidファイルが回避されます。
pidfilesの通常の場所は/ var / runです。ほとんどのユニックスは、ブート時にこのディレクトリを消去します。Ubuntuでは、これは/ var / run-in-memory filesystem(tmpfs)によって実現されます。
それを保存する場所はあなたの選択ですが、私は標準で行きます。
にアクセスできない場合/var/run
は、ユーザーのホームディレクトリにpidファイルを保存する必要があります~/.my_app.pid
。