Ajout modèle unité systemd
This commit is contained in:
parent
42ed0dce42
commit
0444a862de
|
@ -170,6 +170,7 @@ Redémarrer le serveur :
|
|||
|
||||
<https://www.freedesktop.org/software/systemd/man/systemd.service.html>
|
||||
|
||||
|
||||
### Modifier une unité
|
||||
|
||||
~~~
|
||||
|
@ -178,7 +179,7 @@ Redémarrer le serveur :
|
|||
# systemctl daemon-reload
|
||||
~~~
|
||||
|
||||
Exemple avec ssh.service sous Debian 8 :
|
||||
Exemple avec `ssh.service` sous Debian 8 :
|
||||
|
||||
~~~
|
||||
[Unit]
|
||||
|
@ -205,6 +206,7 @@ Alias=sshd.service
|
|||
> ExecStart=/bin/sh -c '/path/to/program >> /path/to/log'
|
||||
> ```
|
||||
|
||||
|
||||
### Modifier partiellement une unité
|
||||
|
||||
Au lieu de tout ré-écrire, on peut surcharger une partie de l'unité en créant un fichier dans `/etc/systemd/system/NOM_UNITÉ.service.d/` qui précisera les modifications à faire. Exemple avec l'unité de _varnish_ on crée le fichier `/etc/systemd/system/varnish.service.d/override.conf` :
|
||||
|
@ -231,7 +233,7 @@ On pourra ensuite lister l'unité complète vue par _systemd_ :
|
|||
# systemctl cat varnish
|
||||
~~~
|
||||
|
||||
A noter que cela fonctionne aussi pour les services qui n'ont pas d'unité systemd mais encore une unité sysvinit dans /etc/init.d/, on pourra par exemple mettre en place un redémarrage automatique d'un service :
|
||||
A noter que cela fonctionne aussi pour les services qui n'ont pas d'unité systemd mais encore une unité sysvinit dans `/etc/init.d/`, on pourra par exemple mettre en place un redémarrage automatique d'un service :
|
||||
|
||||
~~~
|
||||
[Service]
|
||||
|
@ -240,9 +242,48 @@ Restart=always
|
|||
RemainAfterExit=no
|
||||
~~~
|
||||
|
||||
## Utiliser les templates d'unités
|
||||
|
||||
On peut créer/utiliser des templates d'unités. Cela permet de gérer à la volée des instances de services.
|
||||
### Créer une unité systemd
|
||||
|
||||
Modèle simple :
|
||||
|
||||
~~~
|
||||
# /etc/systemd/system/<unit_name>.service
|
||||
|
||||
[Unit]
|
||||
Description=<Unit description>
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
|
||||
ExecStart=<Start command>
|
||||
#ExecStop=<Stop command>
|
||||
#Restart=on-failure
|
||||
|
||||
Type=simple
|
||||
# If main process exits after being run.
|
||||
#Type=oneshot
|
||||
#RemainAfterExit=yes
|
||||
|
||||
#User=<user>
|
||||
#Group=<group>
|
||||
#UMask=027
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
~~~
|
||||
|
||||
Puis :
|
||||
|
||||
~~~
|
||||
systemctl daemon-reload
|
||||
systemctl enable --now <unit_name>
|
||||
~~~
|
||||
|
||||
|
||||
### Créer et utiliser un template d'unité
|
||||
|
||||
On peut créer et utiliser des template d'unité. Cela permet de gérer à la volée des instances de services.
|
||||
|
||||
Par exemple pour _redis_ via `/etc/systemd/system/redis@.service`.
|
||||
|
||||
|
|
Loading…
Reference in a new issue