====== Quelques commandes utiles avec systemd ====== [[https://www.freedesktop.org/wiki/Software/systemd/|systemd]] est un système d'initialisation pour le noyau linux ((La plupart des distributions Linux l'ont adopté.)). Il faut être **root** ou utiliser la commande ''sudo'' pour effectuer les manipulations. ===== Comment changer de « runlevel » ===== Pendant longtemps on parlait de init 3 (démarrage sans interface graphique, le serveur d'affichage X.org n'était dans ce cas, pas actif), et init 5 (mode « graphique »). Désormais on parle plutôt de //target// (ou cible). Pour connaître sa cible par défaut : systemctl get-default Si la commande ci-dessus donne comme résultat, **graphical.target**. Cela veut dire qu' il s'agit d'une session graphique. Pour passer à une autre cible (en console) : systemctl set-default multi-user.target L'utilisation de l'option **set-default** change de manière **__permanente__** le type de session (graphique ou non). Pour basculer temporairement de l'une à l'autre, il faut plutôt utiliser l'option **isolate** systemctl isolate multi-user.target ===== Activer / désactiver un démon (ou service) ===== Pour savoir si un service est actif : systemctl status nom.service Pour activer un service : systemctl start nom.service Si le démon est déjà actif, mais que l'on a modifié la configuration, pour le relancer il faut taper cette commande : systemctl restart nom.service Pour arrêter un service : systemctl stop nom.service ==== Activer / désactiver au boot ==== Les commandes ci-dessus activent (ou désactivent) un démon dans la session en cours, mais si on veut démarrer (ou stopper) ces services automatiquement au //boot//, on utilise une autre option. Pour rendre actif au démarrage un démon : systemctl enable nom.service À l'inverse pour ne plus le rendre actif : systemctl disable nom.service Parfois, un service ne peut pas être arrêté. Soit il dépend d'un autre démon, soit le résultat de la commande ''systemctl status'' renvoie **degraded**. Pour connaître la liste des services qui sont en échecs (**degraded**) : systemctl --failed On peut vouloir « masquer » un service (il n'apparaîtra pas dans la liste des démons actifs). systemctl mask nom.service ===== Réduire les logs ===== Si vous constatez que votre système prend de l'embonpoint, la consultation du répertoire ''/var/log/journal/'' est une première étape ((Votre gestionnaire de paquets peut également garder en « cache » les paquets pour des « //rollbacks// » en cas de problème.)). journalctl --disk-usage Avant de faire du nettoyage, on doit enregistrer tout ce qui est situé dans ''/run/log/journal/'', c'est à dire tout ce qui est en cours d'exécution. journalctl --flush Si on veut supprimer tout ce qui est plus âgé de plus de deux jours : journalctl --vacuum-time=2days On peut également spécifier une taille en particulier, option **--vacuum-size**. ===== Changer le nom de l'ordinateur ===== Pour changer le nom de l'ordinateur sans modifier les fichiers de configuration, on peut utiliser l'utilitaire ''hostnamectl''. Pour connaître le nom qui est déjà définie : hostnamectl status Pour modifier le nom de ce dernier : hostnamectl set-hostname ... ===== Ajuster le fuseau horaire ===== La commande ''timedatectl status'' permet de connaître la date, l'heure, le fuseau horaire, etc. Pour modifier le fuseau horaire (dans le cas d'un utilisateur français) : timedatectl set-timezone Europe/Paris ''timedatectl list-timezones'' liste les différents fuseaux horaires. ===== Changer l'heure ===== timedatectl set-time 15:38:52 L'option **set-time** modifie l'heure, il faut préciser HH:MM:SS (où HH → heure, MM → minute, et SS → seconde). ===== Changer la disposition (layout) du clavier ===== Pour connaître l'agencement actuelle : localectl status Généralement on a quelque chose qui ressemble aux données ci-dessous System Locale: LANG=fr_FR.UTF-8 VC Keymap: (unset) X11 Layout: fr X11 Model: pc105 X11 Variant: latin9 Le plus souvent, on souhaite passer de **latin9** à **oss**((Avec ce type d'agencement certains caractères spéciaux sont facilement accessibles avec la touche ''AltGr'')). localectl set-x11-keymap fr pc105 oss Pour que le nouvel agencement du clavier soit pris en compte, il faut redémarrer le gestionnaire d'affichage, Xorg ou Wayland (éteindre puis rallumer l'ordinateur est suffisant). Pour connaître la liste des différentes « variantes » ''localectl list-x11-keymap-variants''. La commande ci-dessous montre les différents paramètres, que l'on peut passer à l'option **set-x11-keymap** localectl set-x11-keymap layout [model [variant [options]]] Quand un paramètre est placé entre crochet, cela veut dire qu'il est optionnel. On retrouve ces différents paramètres dans le fichier ''/etc/vconsole.conf''. Il existe l'option **set-keymap** pour modifier l'agencement du clavier quand on est sans interface graphique, mais bien souvent elle n'est pas fonctionnelle. localectl set-keymap fr-oss === Particularité de la touche capslock === Quand le clavier ne dispose pas d'un pavé numérique, les chiffres s'obtiennent avec la touche ''Shift'' (droite ou gauche). On peut les rendre accessibles avec la touche //capslock// (souvent c'est celle avec un cadenas). localectl set-x11-keymap fr pc105 oss caps:shiftlock