systemctlで操作するユニット群
一般的にサービスユニット周りを触りますが、他にもソケットユニットやバスユニットなどがあるのでそのあたりの整理です。
サービスユニット
一番よくみるユニットで、 .serviceという拡張子でシステムサービスを指します。
Webサーバーやsshdといった頻繁にアクセスされるデーモンを開始するために使用されるものです。
# systemctl list-units --type=service
で該当のサービスを見れます。
ソケットユニット
こちらは拡張子が.socketでsystemd の監視対象となるプロセス間通信ソケットです。
クライアント側からソケットに接続があればsystemdがデーモンを起動する流れなのが上との違い。
主に使用頻度の低いサービスをオンデマンドで起動する場合に使用されるとのこと。
以下で確認できます。
systemctl list-units --type=socket --all
パスユニット
これは一番聞かないですよね。.pathという拡張子で特定のファイルシステムの変更が発生するまでサービスをアクティブ化させない時に利用します。主に印刷システムなどのスプールディレクトリを使用するサービスに使用されるんだとか。
ちなみにこのディレクトリは一時的にデータを書き出すまさにプールのような役割として利用します。
終わりに
拡張子なんて意識せずに利用していますがこのあたりのすみわけも頭の片隅に入れておきます。
$ systemctl status hoge