systemd : documentation
Quelques commandes de base de systemctl
Démarrage d’un service.
root@debian~#: systemctl start sshd.service
Arrêt d’un service.
root@debian~#: systemctl stop sshd.service
Redémarrage d’un service.
root@debian~#: systemctl restart sshd.service
Rechargement d’un service pour que ce dernier prenne en considération les modifications apportées à son fichier de configuration sans redémarrage du service.
root@debian~#: systemctl reload sshd.service
Status d’un service.
root@debian~#: systemctl status sshd.service
sortie
● sshd.service - OpenSSH server daemon Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-03-14 12:35:59 CET; 9s ago Docs: man:sshd(8) man:sshd_config(5) Main PID: 9297 (sshd) CGroup: /system.slice/sshd.service └─9297 /usr/sbin/sshd -D Mar 14 12:35:59 formation9 systemd[1]: Starting OpenSSH server daemon... Mar 14 12:35:59 formation9 sshd[9297]: Server listening on 0.0.0.0 port 22. Mar 14 12:35:59 formation9 sshd[9297]: Server listening on :: port 22. Mar 14 12:35:59 formation9 systemd[1]: Started OpenSSH server daemon.
Savoir si le service démarre au boot.
root@debian~#: systemctl is-enabled sshd.service
sortie
enabled
Faire démarer un service au boot.
root@debian~#: systemctl enable sshd.service
sortie
Created symlink from /etc/systemd/system/multi-user.target.wants/sshd.service to /usr/lib/systemd/system/sshd.service.
: la commande retourne quelque chose seulement si le service était à l’était disabled au préalable.
Ne plus démarer un service au boot.
root@debian~#: systemctl disable sshd.service
sortie
Removed symlink /etc/systemd/system/multi-user.target.wants/sshd.service.
Vérifier si le service est actuellement en route.
root@debian~#: systemctl is-active sshd.service
sortie
active
Vérifier si le service n’a pas eu de problème au démarrage.
root@debian~#: systemctl is-failed sshd.service
Vérifier si un ou plusieurs services n’ont pas eu de problème au démarrage.
root@debian~#: systemctl --failed --type=service
sortie
0 loaded units listed. Pass --all to see loaded but inactive units, too. To show all installed unit files use 'systemctl list-unit-files'.
Voir le contenu d’un fichier unit.
root@debian~#: systemctl cat sshd.service
sortie
# /usr/lib/systemd/system/sshd.service [Unit] Description=OpenSSH server daemon Documentation=man:sshd(8) man:sshd_config(5) After=network.target sshd-keygen.service Wants=sshd-keygen.service [Service] Type=notify EnvironmentFile=/etc/sysconfig/sshd ExecStart=/usr/sbin/sshd -D $OPTIONS ExecReload=/bin/kill -HUP $MAINPID KillMode=process Restart=on-failure RestartSec=42s [Install] WantedBy=multi-user.target
Empêcher le démarrage d’un service
root@debian~#: systemctl mask sshd.service
sortie
Created symlink from /etc/systemd/system/sshd.service to /dev/null.
Autoriser le démarrage d’un service.
root@debian~#: systemctl unmask sshd.service
sortie
Removed symlink /etc/systemd/system/sshd.service.
: systemctl mask […]
et systemctl unmask […]
ne sont pas des alternatives à systemctl enable […]
et systemctl disable […]
.
Envoyer un signal d’arrêt à tous les processus du service.
root@debian~#: systemctl kill sshd.service
Après avoir ajouté un fichier unit if faut recharger le processus systemd pour qu’il tente de référencer ce fichier et qu’il revienne à l’utilisation des copies système. Cela est également vrai pour la suppression d’un fichier unit où l’utilisateur demande à systemd de ne plus référencer ce fichier.
root@debian~#: systemctl daemon-reload
Diagnostique : connaître le temps de chargement des services.
root@debian~#: systemd-analyze blame
sortie
6.548s lvm2-monitor.service 6.134s NetworkManager-wait-online.service 5.497s systemd-udev-settle.service 5.475s dev-sda3.device 5.328s plymouth-quit-wait.service 4.321s kdump.service 3.496s mnt-donnees.mount 2.624s vboxdrv.service 2.326s postfix.service 1.653s systemd-fsck@dev-disk-by\x2duuid-e0dee67e\x2ded39\x2d4881\x2d 1.479s systemd-fsck@dev-disk-by\x2duuid-96fde087\x2d324c\x2d40b3\x2d 1.374s systemd-udevd.service 1.200s auditd.service 1.131s NetworkManager.service […]
Quelque commande pour le server X
Connaître le mode de démarage par défaut (graphique ou console).
root@debian~#: systemctl get-default
sortie
graphical.target
Passer en mode utilisateur unique (mode console).
root@debian~#: systemctl set-default multi-user.target
Passer en mode muliti-utilisateur (mode graphique).
root@debian~#: systemctl set-default graphical.target
Arrêt du server X.
root@debian~#: systemctl isolate-multi-user
Démarrage du server X.
root@debian~#: systemctl isolate-graphical
Changer les programmes par défaut
Changer l’éditeur par défaut.
root@debian~#: update-alternatives --config editor
sortie
There are 3 choices for the alternative editor (providing /usr/bin/editor). Selection Path Priority Status ------------------------------------------------------------ 0 /bin/nano 40 auto mode 1 /bin/nano 40 manual mode * 2 /usr/bin/vim.basic 30 manual mode 3 /usr/bin/vim.tiny 15 manual mode Pressto keep the current choice[*], or type selection number:
Changer le manuel par défaut.
root@debian~#: update-alternatives --config pager
Les fichiers unit
Les différentes extention des fichiers units :
*.service : extension d’un service système.
*.mount : extension pour un système de fichiers.
*.automount : extension pour un système de fichiers monté à la demande.
*.timer : extension de fichier unit permetant de lancer un processus à une date donnée.
*.swap : extension pour les partitions de swap.
*.target : extension qui permet de grouper un ensemble de unit un seul unit (multi-user.target difinissant une cible).
*.socket : extension pour un socket (IP:port) de communication entre processus.
*.busname : extension pour les logiciels de communication inter-processus.
*.path : extension pour l’activation d’un service basée sur la modification de fichiers ou de répertoires.
*.device : extension pour un périphérique (/dev/sdc).
*.slice : extension permettant, entre autre, la gestion des cgroups, une fonctionnalité du noyau Linux pour limiter, compter et isoler l’utilisation des ressources.
*.scope : extension utilisé par systemd lui-même gérant des groupes de processus, généralement, par session utilisateurs.
*.snapshot : extension de fichier unit utilisée pour sauvegarder l’état actuel des services et les restaurer ensuite (avant de passer en veille).
Lister toutes le fichier unit.
root@debian~#: systemctl list-units
sortie
UNIT LOAD ACTIVE SUB DESCRIPTION proc-sys-fs-binfmt_misc.automount loaded active waiting Arbitrary Executable File Formats File System Automount Point sys-devices-pci0000:00-0000:00:02.0-backlight-acpi_video0.device loaded active plugged /sys/devices/pci0000:00/0000:00:02.0/backlight/acpi_video0 sys-devices-pci0000:00-0000:00:03.0-sound-card0.device loaded active plugged Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller sys-devices-pci0000:00-0000:00:1b.0-sound-card1.device loaded active plugged 8 Series/C220 Series Chipset High Definition Audio Controller sys-devices-pci0000:00-0000:00:1c.3-0000:02:00.0-net-p2p1.device loaded active plugged RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller sys-devices-pci0000:00-0000:00:1f.2-ata1-host0-target0:0:0-0:0:0:0-block-sda-sda1.device loaded active plugged ST500DM002-1BD142 1 sys-devices-pci0000:00-0000:00:1f.2-ata1-host0-target0:0:0-0:0:0:0-block-sda-sda2.device loaded active plugged ST500DM002-1BD142 boot sys-devices-pci0000:00-0000:00:1f.2-ata1-host0-target0:0:0-0:0:0:0-block-sda-sda3.device loaded active plugged ST500DM002-1BD142 linux sys-devices-pci0000:00-0000:00:1f.2-ata1-host0-target0:0:0-0:0:0:0-block-sda-sda4.device loaded active plugged ST500DM002-1BD142 data sys-devices-pci0000:00-0000:00:1f.2-ata1-host0-target0:0:0-0:0:0:0-block-sda.device loaded active plugged ST500DM002-1BD142 […]
by Nicolas SHINEY | March 14, 2018 | No Comments | Système | Tags : systemd