systemd

Major Concepts & Key Terminology

  • systemd is responsible for initializing and managing daemons and services
    • initialize daemons and services at various machine states (most commonly power-on but also power-off, user login, user logout, machine crash, kernel panic, etc)
    • manage ongoing services & daemons
      • handle service & daemon dependencies
      • directly control services & daemons
  • initialization system
    • systemd
    • Init V
  • daemon: computer program that runs as a background process
  • service: computer program that responds to requests from other computer programs
  • where system daemon and service files live (existing services and daemons)
  • defining custom daemon or service with a unit file
  • where personal unit files should live:
    • /etc/systemd/user (only a part of the unit cache when certain shell variables are true, like when the user is logged in)
    • $HOME/.config/systemd/user (only a part of the unit cache when certain shell variables are true, like when the user is logged in)
    • can technically live anywhere, they just have to be linked to correctly so systemd can find them on boot
  • systemctl
    • start
    • stop
    • enable
    • disable
    • status
  • journalctl