Généralités système Linux

Systemd : 0 Table des matières des articles

Cet article a été mis à jour, vous consultez ici une archive de cet article!
Table des matières

Introduction



Comme vous le savez, systemd est plus qu'un système d'init et de gestion des services !

Voici quelques exemples de configuration possibles avec systemd !

Le réseau avec systemd-networkd



Pour faire fonctionner le réseau avec systemd, nous aurons besoin de :
systemd-networkd.service => Le service réseau
systemd-resolved.service => Le service de résolution de nom

A noter que systemd-resolved peut être utilisé sans systemd-networkd.
Si on utilise systemd-networkd, il faut évidemment désactiver le service NetworkManager (ou autre gestionnaire réseau) !

Toutes les configuration réseau se trouvent dans /etc/systemd/network/.

Comme toute commande systemd, elle finit par ctl, et nous utiliserons networkctl.

Pour lister les interfaces, on peut donc utiliser :

Code BASH :
networkctl list


Lorsque aucune interface n'est paramétrée, on a une sortie de ce style :

Code BASH :
# networkctl list
IDX LINK   TYPE     OPERATIONAL SETUP
  1 lo     loopback carrier     unmanaged
  2 enp0s3 ether    routable    unmanaged


Sur la machine concernée, l'interface réseau s'appelle enp0s3.

Je vais créer le fichier /etc/systemd/network/enp0s3-ethernet.network

Exemple avec une configuration DHCP :

Code BASH :
[Match]
Name=enp0s3
[Network]
DHCP=ipv4


Exemple avec une configuration statique :

Code BASH :
[Match]
Name=enp0s3
[Network]
Address=192.168.21.240/24
Gateway=192.168.21.254
DNS=1.1.1.1  


Après chaque modification, on doit redémarrer le service :

Code BASH :
systemctl restart systemd-networkd


La commande networkctl list nous produit ceci une fois l'interface configurée :

Code BASH :
# networkctl list
IDX LINK   TYPE     OPERATIONAL SETUP
  1 lo     loopback carrier     unmanaged
  2 enp0s3 ether    routable    configuring



Voici quelques exemples de Valeurs possibles pour chacune des sections des fichiers .network :
Code :
[Match]
Name=Nom de l'interface
MACAddress=Adresse MAC de l'interface
[Link]
MACAddress=Changer l'adresse MAC
MTUBytes=Changer la valeur du MTU
[Network]
DHCP=ipv4 ou ipv6 (si non indiqué, vaut false)
Address=IP fixe (si DHCP non actif)
Gateway=IP du routeur (si DHCP non actif)
DNS=IP du DNS 


Le NTP avec systemd-timesyncd



Le service ntp de systemd s'appelle systemd-timesyncd.service

La configuration se fait dans /etc/systemd/timesyncd.conf

La commande permettant de gérer NTP s'appelle ... timedatectl !

Pour indiquer le serveur de temps, c'est dans la section [Time], et il faut définir la valeur NTP (On peut spécifier plusieurs valeurs, séparées par des espaces) :

Code BASH :
[Time]
NTP=fr.pool.ntp.org


D'autres options sont disponibles dans la configuration, mais par défaut, ça fonctionne.

Pour vérifier la configuration :

Code BASH :
timedatectl show-timesync --all


Code BASH :
# timedatectl show-timesync --all
LinkNTPServers=
SystemNTPServers=fr.pool.ntp.org
FallbackNTPServers=0.fedora.pool.ntp.org 1.fedora.pool.ntp.org 2.fedora.pool.ntp.org 3.fedora.pool.ntp.org
ServerName=fr.pool.ntp.org
ServerAddress=(null)
RootDistanceMaxUSec=5s
PollIntervalMinUSec=32s
PollIntervalMaxUSec=34min 8s
PollIntervalUSec=0
Frequency=0


Pour activer le NTP, on exécutera :

Code BASH :
timedatectl set-ntp true


Pour vérifier que NTP est actif, on utilisera

Code BASH :
timedatectl status


Code BASH :
# timedatectl status
               Local time: Wed 2020-02-05 14:18:20 CET
           Universal time: Wed 2020-02-05 13:18:20 UTC
                 RTC time: Wed 2020-02-05 13:18:16
                Time zone: Europe/Paris (CET, +0100)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no


Plus d'infos sur le NTP avec :

Code BASH :
timedatectl timesync-status


Code BASH :
# timedatectl timesync-status
       Server: 149.202.2.105 (fr.pool.ntp.org)
Poll interval: 1min 4s (min: 32s; max 34min 8s)
         Leap: normal
      Version: 4
      Stratum: 2
    Reference: 52468A42
    Precision: 1us (-24)
Root distance: 24.367ms (max: 5s)
       Offset: +283us
        Delay: 26.383ms
       Jitter: 0
 Packet count: 1
    Frequency: -98.024ppm