`systemd` replaces SysV init and BSD init for managing kernel boot - PID 1 that takes over from bootloader - Tool for managing Linux units - Automatically resolves dependencies for units - Each unit is associated with a simple unit file that includes declarative statements - SysVinit used complicated init scripts - Associated daemons: - `journald` - `localed` - `timedated` - `timesyncd` - `logind` - `hostnamed` - `homed` - `networkd` - `resolved` - `systemd-boot` - `udevd` - can be used for analyzing system issues - `journalctl` to view systemd journal (log) - `systemctl` to manage services - `sysctl` handles settings for kernel modules - priority order for `systemd` config files - `/etc/systemd/system` - `/run/systemd/system` - `/usr/lib/systemd/system` - `systemd-coredump` used to debug app crashes - contains memory info from time of crash - `systemd-analyze` shows times associated with boot process ![[images/Pasted image 20250807193504.png]] - `systemd-analyze blame` shows how long each startup services ![[images/Pasted image 20250717193904.png]] - need baseline to analyze properly