systemd avance et demarrage 25 min de lecture

Units, dependances et overrides

Types d'units systemd

systemd gere differents types d'units :

  • .service — Daemons et processus
  • .socket — Activation par socket
  • .target — Groupes d'units (ex: multi-user.target)
  • .mount — Points de montage
  • .timer — Planification (remplace cron)

Dependances

[Unit]
Description=Mon service custom
After=network.target        # Demarre apres le reseau
Requires=mysql.service      # Necessite mysql (echoue sinon)
Wants=redis.service          # Souhaite redis (continue sans)

Overrides et drop-ins

# Creer un override sans modifier le fichier original
sudo systemctl edit nginx.service
# Cree /etc/systemd/system/nginx.service.d/override.conf

# Override complet
sudo systemctl edit --full nginx.service

# Recharger apres modification
sudo systemctl daemon-reload

Templates (@)

# Un service template : myapp@.service
# Instancie avec : systemctl start myapp@instance1.service
# %i = nom de l'instance dans le fichier unit