2023年12月21日に『systemdの思想と機能 linuxを支えるシステム管理のためのソフトウェアスイート』が出版されました。
目次の俯瞰
systemdの思想と機能 Linuxを支えるシステム管理のためのソフトウェアスイート 第1章 systemdとは 1.1 systemdとは 1.2 なぜsystemdは広い領域を扱うのか 1.3 サービス管理にみるsystemdの特徴 1.4 systemdの資料とドキュメント 第2章 unitとunit file 2.1 unitとは 2.2 unitが持つ情報 2.3 unit fileとは 2.4 unit fileが配置されるディレクトリ 2.5 unit fileのドロップイン 2.6 unit fileの編集 2.7 unit fileの確認 2.8 unit fileの検証 2.9 unit fileとunitの関係 2.10 unitの状態をもとに戻す 第3章 unitの状態,unit間の依存関係,target unit 3.1 unitの状態 3.2 Job 3.3 unitの依存関係 3.4 トランザクション 3.5 Jobの実行 3.6 現在の依存関係の確認 3.7 target unit 第4章 プロセス実行環境の用意 4.1 systemdはプロセスの実行環境を用意する 4.2 systemd-runでsystemdが用意する環境を試す 4.3 serviceのsandboxing 4.4 nohup代わりにsystemd-runを使う 4.5 systemdによる環境設定を使わずにunitを作る 第5章 service unit 5.1 service unitの役割 5.2 service unitへの操作 5.3 起動/終了のおおまかな流れ 5.4 serviceのTypeとactiveになるタイミング 5.5 サービスの終了 5.6 プロセスの監視と再起動 5.7 起動/終了時の実行フロー 5.8 起動用と確認用のservice unitに分離する 5.9 トラブルシュート集 第6章 timer/path/socket unit 6.1 イベントを契機にserviceをactiveにするunit 6.2 timer unit 6.3 path unit 6.4 socket unit 第7章 generatorとmount/automount/swap unit 7.1 generatorとそれにまつわるunit 7.2 generator 7.3 mount unit 7.4 automount unit 7.5 swap unit 7.6 systemd-mountコマンド 第8章 control group,slice unit,scope unit 8.1 systemdとcontrol group 8.2 control groupとは 8.3 cgroup V2の有効化 8.4 unitとcgroupの対応関係 8.5 slice unit 8.6 scope unit 8.7 関連ディレクティブ 8.8 cgroup管理用のツール 8.9 UResourced 第9章 udev,device unit 9.1 udevとは 9.2 udevでのデバイス 9.3 なぜudevが必要なのか? 9.4 ハードウェアイベント発生からdevice unit作成まで 9.5 uevent 9.6 ルールファイル 9.7 hwdb 9.8 NICの命名 第10章 systemd-journald 10.1 systemd-journaldとは 10.2 systemd-journaldへのログ記録 10.3 journalに保存される情報 10.4 journalctlによる検索と整形 10.5 複雑な検索の例 10.6 journalのファイル配置とローテート 10.7 journalは長期間保存には向かない 10.8 systemd-journaldの起動タイミング 10.9 syslogとの連携 10.10 ログの制限,unitごとの設定 10.11 アプリケーションからのログ出力 第11章 core dump管理 11.1 core dump管理 11.2 core dumpとは 11.3 Linuxカーネルによるcore dump出力 11.4 core dump管理の必要性 11.5 systemd-coredump 11.6 systemd-coredumpの有効化 11.7 coredumpctlコマンド 11.8 デバッグ作業での利用 11.9 コンテナ内プロセスのcore dump 11.10 systemd-coredumpの無効化 第12章 systemd-logind,pam_systemd 12.1 セッションを管理するsystemd-logind,pam_systemd 12.2 Virtual Consoleとハードウェア管理 12.3 マルチシート 12.4 systemd-logindの役割 12.5 セッションの作成 12.6 セッションへの操作 12.7 sleep/shutdown管理 12.8 セッションの終了 第13章 systemd-tmpfiles,systemd-sysusers 13.1 ファイルの自動作成/削除,アカウントの自動作成 13.2 systemd-tmpfilesコマンド 13.3 systemd-tmpfilesの用途 13.4 systemd-tmpfilesのservice 13.5 systemd-tmpfilesの設定 13.6 systemd-tmpfilesでできないこと 13.7 systemd-sysusersコマンド 13.8 systemd-sysusersの設定 13.9 systemd-sysusersのオーバーライド 第14章 D-Busとpolkit 14.1 D-Busとpolkit 14.2 D-Busとは 14.3 busctl 14.4 polkit 14.5 CockpitからのD-Bus利用 第15章 systemd-resolved 15.1 名前解決サービスsystemd-resolved 15.2 systemd-resolvedの概要 15.3 systemd-resolvedを利用しない場合 15.4 systemd-resolvedを利用する場合 15.5 DNS設定変更を行うアプリケーション 15.6 systemd-resolvedの名前解決設定 15.7 Synthetic records 15.8 名前解決の優先順位づけ 第16章 systemdのその他の機能 16.1 ここまでに扱ったトピック 16.2 systemd-networkd 16.3 その他の機能