Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
creer_un_service_avec_systemd [Le 11/09/2018, 14:46] 109.26.134.132 correction d'nu FIXME d'après la doc, la balise After n'arrête pas un service si la condition change dans le temps |
creer_un_service_avec_systemd [Le 15/03/2020, 23:14] 88.124.106.35 |
||
---|---|---|---|
Ligne 62: | Ligne 62: | ||
====Exemple de service de type "simple"==== | ====Exemple de service de type "simple"==== | ||
- | Un exemple est le service deluged qui permet de lancer le service correspondant à la version deamon du client bit-torrent [[:deluge]]. | + | Un exemple est le service deluged qui permet de lancer le service correspondant à la version daemon du client bit-torrent [[:deluge]]. |
<file txt /etc/systemd/system/deluged.service> | <file txt /etc/systemd/system/deluged.service> | ||
Ligne 124: | Ligne 124: | ||
</code> | </code> | ||
==== Exemple de service cyclique. ==== | ==== Exemple de service cyclique. ==== | ||
- | Création du fichier de gestion => /etc/systemd/system/MAJ0.timer | + | Création du fichier de timer |
<file sh /etc/systemd/system/MAJ0.timer> | <file sh /etc/systemd/system/MAJ0.timer> | ||
[Unit] | [Unit] | ||
- | Description=effectue une mise à jour de l'ordinateur quinze minutes après le démarrage de la machine et itère toutes les trente minutes. | + | Description=Lance une mise à jour de l'ordinateur quinze minutes après le démarrage de la machine et itère toutes les trente minutes. |
[Timer] | [Timer] | ||
OnBootSec=15minutes | OnBootSec=15minutes | ||
# le service démarrera 15 minutes après le démarrage de la machine | # le service démarrera 15 minutes après le démarrage de la machine | ||
OnUnitActiveSec=30minutes | OnUnitActiveSec=30minutes | ||
+ | Persistent=true | ||
# le service démarrera toutes les trente minutes après la dernière activation du timer | # le service démarrera toutes les trente minutes après la dernière activation du timer | ||
### voir toutes les possibilités de choix dans ce document http://man7.org/linux/man-pages/man7/systemd.time.7.html | ### voir toutes les possibilités de choix dans ce document http://man7.org/linux/man-pages/man7/systemd.time.7.html | ||
[Install] | [Install] | ||
WantedBy=timers.target | WantedBy=timers.target | ||
+ | </file> | ||
+ | Création du fichier de service | ||
+ | <file sh /etc/systemd/system/MAJ0.service> | ||
+ | [Unit] | ||
+ | Description=Service de mise a jour | ||
+ | After=network.target | ||
+ | |||
[Service] | [Service] | ||
- | User=XXXXXXXXX # à renseigner ? root par défaut. | + | ExecStart=apt-get update && apt-get upgrade |
- | Group=users | + | Type=oneshot |
- | ExecStart=/etc/init.d/MAJ0</file> | + | </file> |
- | Création du fichier contenant ce qu'il faut faire dans cet exemple | + | |
- | <file bash /etc/init.d/MAJ0> | + | |
- | #! /bin/sh | + | |
- | date >/var/log/MAJ0.log | + | |
- | echo "Faire les mises à jour" >>/var/log/MAJ0.log | + | |
- | sudo apt install tototo >>/var/log/MAJ0.log | + | |
- | sudo apt autoremove | + | |
- | echo "Pas encore trouvé pour informer l'utilisateur de la proposition d'épuration. Donc rien n'est épuré" >>/var/log/MAJ0.log | + | |
- | exit 0 </file> | + | |
Avec les commandes de gestion associées | Avec les commandes de gestion associées | ||
- | <code>sudo systemctl start MAJ0.timer | + | <code>sudo systemctl enable MAJ0.timer |
+ | sudo systemctl start MAJ0.timer | ||
sudo systemctl status MAJ0.timer | sudo systemctl status MAJ0.timer | ||
- | sudo systemctl stop MAJ0.timer | + | </code> |
- | sudo systemctl daemon-reload | + | |
- | sudo systemctl enable MAJ0.timer </code> | + | |
====Exemple de service avancé avec la base graphe neo4j==== | ====Exemple de service avancé avec la base graphe neo4j==== | ||
Ligne 221: | Ligne 219: | ||
ExecReload=/usr/bin/neo4j restart | ExecReload=/usr/bin/neo4j restart | ||
- | #Ne doit pas considérer que le service est actif lorsque le processus neo4j c'est terminé normalement. | + | #Ne doit pas considérer que le service est actif lorsque le processus neo4j s'est terminé normalement. |
RemainAfterExit=no | RemainAfterExit=no | ||
Ligne 263: | Ligne 261: | ||
* [[http://doc.fedora-fr.org/wiki/Systemd|Fedora et systemd]] notamment pour la partie [[#Type de service systemd]] | * [[http://doc.fedora-fr.org/wiki/Systemd|Fedora et systemd]] notamment pour la partie [[#Type de service systemd]] | ||
* [[https://docs.syncthing.net/users/autostart.html#using-systemd|Documentation de Syncthing]] Créer un service systemd pour lancer Syncthing au démarrage (en anglais) | * [[https://docs.syncthing.net/users/autostart.html#using-systemd|Documentation de Syncthing]] Créer un service systemd pour lancer Syncthing au démarrage (en anglais) | ||
- | * [[http://dev.deluge-torrent.org/wiki/UserGuide/Service/systemd|Documentation de Deluge]] Créer un service systemd pour lancer Deluge au démarrage (en anglais) | + | * [[https://deluge.readthedocs.io/en/latest/how-to/systemd-service.html|Documentation de Deluge]] Créer un service systemd pour lancer Deluge au démarrage (en anglais) |
---- | ---- | ||
//Contributeurs: [[:utilisateurs:zarmu]]// | //Contributeurs: [[:utilisateurs:zarmu]]// |