7.9. Utilisation et configuration de Systemd

7.9.1. Configuration basique

Le fichier /etc/systemd/system.conf contient un ensemble d'options pour contrôler les opérations de base de systemd. Le fichier par défaut a toutes ses entrées commentées indiquant les paramètres par défaut. Ce fichier est l'endroit où le niveau de journalisation (log) peut être modifié ainsi que les paramètres de base de journalisation. Voir la page de manuel de systemd-system.conf(5) pour plus de détails à propos de chaque option de configuration.

7.9.2. Désactiver l'effacement de l'écran durant le démarrage

Le comportement normal de systemd est d'effacer l'écran à la fin de la séquence de démarrage. Si désiré, ce comportement peut être changé en exécutant la commande suivante :

mkdir -pv /etc/systemd/system/getty@tty1.service.d

cat > /etc/systemd/system/getty@tty1.service.d/noclear.conf << EOF
[Service]
TTYVTDisallocate=no
EOF

Les messages de démarrage peuvent toujours être examinés en utilisant la commande journalctl -b en tant qu'utilisateur root.

7.9.3. Désactiver tmpfs pour /tmp

Par défaut, /tmp est créé comme un tmpfs. Si cela n'est pas désiré, il est possible de l'en empêcher de la manière suivante :

ln -sfv /dev/null /etc/systemd/system/tmp.mount

Ce n'est pas nécessaire si il existe une partition séparée pour /tmp spécifiée dans /etc/fstab.

7.9.4. Configurer la création et la suppression automatique de fichiers

Il existe de nombreux services pour créer ou supprimer des fichiers ou des dossiers :

  • systemd-tmpfiles-clean.service

  • systemd-tmpfiles-setup-dev.service

  • systemd-tmpfiles-setup.service

L'emplacement système des fichiers de configuration est /usr/lib/tmpfiles.d/*.conf. Les fichiers locaux de configuration sont dans /etc/tmpfiles.d. Les fichiers dans /etc/tmpfiles.d prévallent sur les fichiers du même nom dans /usr/lib/tmpfiles.d. Voir la page de manuel tmpfiles.d(5) pour plus de détails sur le format de fichier.

7.9.5. Redéfinition des comportements par défaut des services

Le contenu d'un service de systemd peut être redéfini en créant un dossier et un fichier de configuration dans /etc/systemd/system. Par exemple :

mkdir -pv /etc/systemd/system/foobar.service.d

cat > /etc/systemd/system/foobar.service.d/foobar.conf << EOF
[Service]
Restart=always
RestartSec=30
EOF

Voir la page de manuel systemd.unit(5) pour plus d'informations. Après la création du fichier de configuration, exécutez systemctl daemon-reload et systemctl restart foobar pour activer les changements à un service.

7.9.6. Débogage de la séquence de démarrage

Il existe différentes commandes qui peuvent être utilisée pour faciliter le débogage du processus de démarrage de systemd. Voici quelques exemples :

  • systemctl list-units -t service [--all]

  • systemctl list-units -t target [--all]

  • systemctl show -p Wants multi-user.target

  • systemctl status sshd.service