Lから始まるLinux

6章9話
バイナリログ
6章10話 /runディレクトリ
もくじ
6章11話
systemd-timesyncd
/run ディレクトリ
若木 みどり
お兄ちゃん! そういえば /run には 動作しているサーバプログラムの 情報があるんだよね?
若木 しげる
そうだね! 今回は /run 中を覗いてみよう!
PID ファイル
若木 みどり
拡張子 .pid ファイルが多くて目立つね!
プログラム名.pid
若木 しげる
このファイルはPID ファイルと呼ばれるよ通常のテキストファイルで内容にそのプログラムのPID が書かれているんだ
若木 みどり
どうやって使うものなのかな?
若木 しげる
PID を簡単に取得するために用意されているんだ例えば以下のように使うよ
kill "$(cat /run/crond.pid)"
若木 みどり
crond.pid の内容を表示してcrond の PID を取り出して使っているんだね!
ソケットファイル
若木 みどり
拡張子が .sock.socketファイルもあるみたいだよ!
若木 しげる
これらはソケットファイルと呼ばれるよこのファイルを介してプロセス同士が通信するんだ
若木 しげる
このファイルは今の段階では役割だけ覚えておけば十分だよ!
FIFO ファイル
若木 みどり
上記以外にもまだファイルがあるみたいだね!特に拡張子は付いていないけどなんだろう?
若木 しげる
これらは「FIFO (first-in first-out)ファイル」の場合が多いよ「名前付きパイプ(named pipe)」とも呼ばれるよ
若木 みどり
これも初めて聞くものだね
若木 しげる
パイプをファイル経由で使えるようにするものなんだこのファイルから入力リダイレクトして待機しておくとこのファイルへ書き込みがあったときにその内容が読み込まれるというものだよ
若木 みどり
へぇ…面白い動きをするファイルだね!
若木 しげる
FIFO ファイルは自分で作成することもできるよ使う機会はめったにないけど紹介しておくね
若木 しげる
mkfifoFIFO ファイルを作成するんだ
mkfifo [オプション]... ファイル...
まとめ
若木 みどり
今回は /run にあるファイルを学んだよ!サーバプログラムなど動き続けるプログラムが以下のようなファイルを作ってくれているんだ
ファイル役割
PID ファイル内容に PID が書かれているテキストファイル
ソケットファイルプロセスがソケット通信を行うためのファイル
FIFO ファイル名前付きパイプを扱うファイル
若木 しげる
PID ファイルは例で示したような使われ方をされるよ他は「このような役割なんだ」理解しておけば今は十分だよ!