Systemd
De Linuxmemo.
(→Statut) |
(→Client NTP) |
||
(28 versions intermédiaires masquées) | |||
Ligne 4 : | Ligne 4 : | ||
systemctl status nom_du_service.service | systemctl status nom_du_service.service | ||
- | Liste des services | + | *Liste des services: |
systemctl list-unit-files --state=enabled | systemctl list-unit-files --state=enabled | ||
systemctl list-unit-files --type service --state enabled,generated | systemctl list-unit-files --type service --state enabled,generated | ||
Ligne 20 : | Ligne 20 : | ||
systemctl enable nom_du_service.service | systemctl enable nom_du_service.service | ||
systemctl disable nom_du_service.service | systemctl disable nom_du_service.service | ||
+ | |||
+ | Unit dependencies and order: | ||
+ | vim /etc/systemd/system/multi-user.target.wants/unit-name.service | ||
+ | AFTER= xxx xxx | ||
+ | |||
== Client NTP== | == Client NTP== | ||
vim /etc/systemd/timesyncd.conf | vim /etc/systemd/timesyncd.conf | ||
Ligne 28 : | Ligne 33 : | ||
systemctl start systemd-timesyncd | systemctl start systemd-timesyncd | ||
systemctl status systemd-timesyncd | systemctl status systemd-timesyncd | ||
+ | |||
+ | Fuseau horaire sur Ubuntu 22.04 LTS: | ||
+ | timedatectl | ||
+ | ls -l /etc/localtime | ||
+ | timedatectl list-timezones | ||
+ | timedatectl set-timezone Europe/Paris | ||
+ | timedatectl set-timezone Indian/Reunion | ||
+ | timedatectl | ||
+ | |||
+ | ==DNS== | ||
+ | systemd-resolve --status | ||
+ | To set "dns-search": | ||
+ | systemd-resolve --set-domain=chez.moi --interface=eno1 | ||
+ | |||
+ | vim /etc/systemd/resolved.conf | ||
+ | |||
+ | ==NetworkManager== | ||
+ | systemctl status NetworkManager | ||
+ | |||
+ | nmtui est l’outil graphique dans un terminal texte | ||
+ | |||
+ | nmcli est l’outil en ligne de commande. | ||
+ | |||
+ | nmcli device shownmcli device show | ||
+ | nmcli connection show | ||
+ | |||
+ | ==Gestion de l'unité== | ||
+ | systemctl list-units --type=service | ||
+ | systemctl list-units --type=service --state=running | ||
+ | systemctl list-units --type=service --state=failed | ||
+ | systemctl --failed | ||
+ | *Configuration | ||
+ | systemctl cat nordvpnd | ||
+ | *Dépendances | ||
+ | systemctl list-dependencies nordvpnd | ||
+ | systemctl list-dependencies nordvpnd --all | ||
+ | systemctl list-dependencies nordvpnd --reverse | ||
+ | systemctl list-dependencies nordvpnd --before | ||
+ | systemctl list-dependencies nordvpnd --after | ||
+ | *Propriétés | ||
+ | systemctl show nordvpnd | ||
+ | systemctl show nordvpnd -p Conflicts | ||
+ | *Masquage (marquer une unité comme étant totalement impossible à démarrer, automatiquement ou manuellement, en la reliant à /dev/null) | ||
+ | systemctl mask nginx.service | ||
+ | systemctl list-unit-files |grep masked | ||
+ | systemctl unmask nginx.service | ||
+ | *Modification | ||
+ | systemctl edit nordvpnd | ||
+ | |||
+ | ==les cibles ou "target" (niveaux d'exécution)== | ||
+ | *Le niveau par defaut | ||
+ | systemctl get-default | ||
+ | *modification (exemple niveau graphique) | ||
+ | systemctl set-default graphical.target | ||
+ | *Lister les target dipo | ||
+ | systemctl list-unit-files --type=target | ||
+ | systemctl list-units --type=target | ||
+ | *Isolation (exemple passage au mode console) | ||
+ | systemctl list-dependencies multi-user.target | ||
+ | systemctl isolate multi-user.target | ||
+ | *Raccourcis pour les cibles spéciales | ||
+ | systemctl isolate rescue.target | ||
+ | systemctl rescue | ||
+ | systemctl halt | ||
+ | systemctl poweroff | ||
+ | systemctl reboot | ||
+ | |||
+ | ==journald/journalctl== | ||
+ | Par défaut configuré pour garder ses journaux en RAM uniquement. | ||
+ | journalctl -u nginx -n 5000 | ||
+ | Affiche les 5000 lignes de logs de nginx dans un pager en commencant par les plus anciennes | ||
+ | |||
+ | journalctl --disk-usage | ||
+ | Affiche l'espace couramment utilisé par les fichiers journaux du système | ||
+ | |||
+ | journalctl --vaccum-size 1G | ||
+ | Nettoie les fichiers journaux pour ne garder qu'un gigaoctet d'utilisé | ||
+ | |||
+ | journalctl -eu nginx | ||
+ | Affiche sous forme de pager les 1000 dernières de logs du service nginx | ||
+ | |||
+ | journalctl -fu nginx | ||
+ | Affiche les toutes dernières lignes de log en continu | ||
+ | |||
+ | journalctl -k -p warning | ||
+ | Affiche seulement les messages d'alerte du kernel. L'option `p` ne fonctionne que si l'application les écrivant est compatible journald car les loglevels ne viennent pas de nul part | ||
+ | |||
+ | journalctl -p 2 | ||
+ | Affiche les évenements critiques propres à toutes les applications gérant les loglevel | ||
+ | |||
+ | journalctl -u nginx --until yesterday | ||
+ | N'affiche pas les messages nginx d'aujourd'hui | ||
+ | |||
+ | journalctl -o json | ||
+ | Affiche le journal système global au format json, pratique pour découvrir toutes les champs (et leur contenu), et ainsi pouvoir scripter une analyse de logs efficace grâce à par exemple un script python | ||
+ | |||
+ | |||
+ | -f permet le flux de logs d’une application à la manière d’un tail -f | ||
+ | journalctl -u nordvpnd -f | ||
+ | |||
+ | ==logind/loginctl== | ||
+ | loginctl list-sessions | ||
+ | loginctl seat-status seatX |
Version actuelle en date du 25 avril 2024 à 11:23
Sommaire |
[modifier] Statut
systemctl is-active nom_du_service.service systemctl status nom_du_service.service
- Liste des services:
systemctl list-unit-files --state=enabled systemctl list-unit-files --type service --state enabled,generated systemctl list-units --type=service systemctl list-units --type=service --state=running systemctl list-units --type=service --state=active
[modifier] Start/stop
systemctl start nom_du_service.service systemctl stop nom_du_service.service systemctl restart nom_du_service.service
[modifier] Configurer
systemctl enable nom_du_service.service systemctl disable nom_du_service.service
Unit dependencies and order:
vim /etc/systemd/system/multi-user.target.wants/unit-name.service AFTER= xxx xxx
[modifier] Client NTP
vim /etc/systemd/timesyncd.conf [Time] NTP=mon.server.ntp systemctl stop systemd-timesyncd systemctl start systemd-timesyncd systemctl status systemd-timesyncd
Fuseau horaire sur Ubuntu 22.04 LTS:
timedatectl ls -l /etc/localtime timedatectl list-timezones timedatectl set-timezone Europe/Paris timedatectl set-timezone Indian/Reunion timedatectl
[modifier] DNS
systemd-resolve --status
To set "dns-search":
systemd-resolve --set-domain=chez.moi --interface=eno1
vim /etc/systemd/resolved.conf
[modifier] NetworkManager
systemctl status NetworkManager
nmtui est l’outil graphique dans un terminal texte
nmcli est l’outil en ligne de commande.
nmcli device shownmcli device show nmcli connection show
[modifier] Gestion de l'unité
systemctl list-units --type=service systemctl list-units --type=service --state=running systemctl list-units --type=service --state=failed systemctl --failed
- Configuration
systemctl cat nordvpnd
- Dépendances
systemctl list-dependencies nordvpnd systemctl list-dependencies nordvpnd --all systemctl list-dependencies nordvpnd --reverse systemctl list-dependencies nordvpnd --before systemctl list-dependencies nordvpnd --after
- Propriétés
systemctl show nordvpnd systemctl show nordvpnd -p Conflicts
- Masquage (marquer une unité comme étant totalement impossible à démarrer, automatiquement ou manuellement, en la reliant à /dev/null)
systemctl mask nginx.service systemctl list-unit-files |grep masked systemctl unmask nginx.service
- Modification
systemctl edit nordvpnd
[modifier] les cibles ou "target" (niveaux d'exécution)
- Le niveau par defaut
systemctl get-default
- modification (exemple niveau graphique)
systemctl set-default graphical.target
- Lister les target dipo
systemctl list-unit-files --type=target systemctl list-units --type=target
- Isolation (exemple passage au mode console)
systemctl list-dependencies multi-user.target systemctl isolate multi-user.target
- Raccourcis pour les cibles spéciales
systemctl isolate rescue.target systemctl rescue systemctl halt systemctl poweroff systemctl reboot
[modifier] journald/journalctl
Par défaut configuré pour garder ses journaux en RAM uniquement.
journalctl -u nginx -n 5000
Affiche les 5000 lignes de logs de nginx dans un pager en commencant par les plus anciennes
journalctl --disk-usage
Affiche l'espace couramment utilisé par les fichiers journaux du système
journalctl --vaccum-size 1G
Nettoie les fichiers journaux pour ne garder qu'un gigaoctet d'utilisé
journalctl -eu nginx
Affiche sous forme de pager les 1000 dernières de logs du service nginx
journalctl -fu nginx
Affiche les toutes dernières lignes de log en continu
journalctl -k -p warning
Affiche seulement les messages d'alerte du kernel. L'option `p` ne fonctionne que si l'application les écrivant est compatible journald car les loglevels ne viennent pas de nul part
journalctl -p 2
Affiche les évenements critiques propres à toutes les applications gérant les loglevel
journalctl -u nginx --until yesterday
N'affiche pas les messages nginx d'aujourd'hui
journalctl -o json
Affiche le journal système global au format json, pratique pour découvrir toutes les champs (et leur contenu), et ainsi pouvoir scripter une analyse de logs efficace grâce à par exemple un script python
-f permet le flux de logs d’une application à la manière d’un tail -f
journalctl -u nordvpnd -f
[modifier] logind/loginctl
loginctl list-sessions loginctl seat-status seatX