いつの間にかどのLinuxディストリビューションでも標準で使われるようになったsystemd
。なんとなくsystemctl
を叩いてサービスを立ち上げていたけど、いまいち「なんで必要なの?」とか、「いろいろ機能があるっぽいけど、何ができるの?」といったことをちゃんと勉強しないままここまで来てしまったので、この本でおさらい。
単なる機能紹介ではなく、「なぜsystemdはこんな広範囲な機能を扱うのか?」という機能が作られた背景から説明されているところがいいですね。
この本を読むまでcore dump
まで管理されるようになったことを知りませんでした。
本書を読めば、systemdはサービスが動く環境を用意するために必要な機能を備えていった結果、多数の機能を持つようになった、ということがよく分かります。
プロセスを安全に立ち上げ、維持し、実行状態をモニタリング(監視、ログ)するために必要な一連の機能がすべて揃っていて、ワンストップでsystemdだけで対応することができるところが、その目的だということがよく分かりました
昔は、アプリケーション独自のサービス実行管理は、daemontools
とかでやってましたね。
systemd
のリファレンスとか、実装詳細、コマンドオプションの解説までやるととても終わらないので、全体で200ページ弱の中で駆け足で機能概要と、その必要性が説明されていて、一通り読めばsystemdを使う上でのスタート地点に立てます。その点にフォーカスしているのが本書の良いところ。
サクっと読めます。でもまぁ、それで「systemd、チョットワカル」にはならないところがsystemdの機能の多さなんですけど
特にアプリケーションレイヤーの人は、第10章のjournaldと、第11章のcore dumpあたりを押さえておくと良いと思いました。