Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
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 | ||
doc:programmation:bash:script:systemd:script-sur-un-vt [08/06/2024 17:19] agp91 [Script de démarrage pour systemd] |
doc:programmation:bash:script:systemd:script-sur-un-vt [11/06/2024 16:52] (Version actuelle) agp91 [Script de démarrage pour systemd] Correction type par Type |
||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
* Niveau requis : {{tag>avisé}} | * Niveau requis : {{tag>avisé}} | ||
* Commentaires : Depuis le passage de INIT à SystemD certaines choses simples sont devenues plus complexes \\ comment j'en suis arrivé là : j'ai voulu afficher sur le tty1 de mes machines virtuelles leur adresse ipv4 au lieu de l'écran de login habituel | * Commentaires : Depuis le passage de INIT à SystemD certaines choses simples sont devenues plus complexes \\ comment j'en suis arrivé là : j'ai voulu afficher sur le tty1 de mes machines virtuelles leur adresse ipv4 au lieu de l'écran de login habituel | ||
- | * Suivi : {{tag>à-tester}} | + | * Suivi : |
* Création par [[user>greenmerlin]] 25/01/2016 | * Création par [[user>greenmerlin]] 25/01/2016 | ||
+ | * Testé par [[user>agp91]] le 08/06/2024 | ||
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=159703| Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=159703| Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
===== Introduction ===== | ===== Introduction ===== | ||
Ligne 51: | Ligne 52: | ||
===== Script de démarrage pour systemd ===== | ===== Script de démarrage pour systemd ===== | ||
- | Il va falloir créer un script de démarrage pour SystemD afin de lancer notre script sur le tty1 | + | Il va falloir créer un script de démarrage pour SystemD (/etc/systemd/system/show_my_ip.service) afin de lancer notre script sur le tty1 |
<note tip>cela correspondait aux scripts présents sous /etc/init.d/ sous INIT</note> | <note tip>cela correspondait aux scripts présents sous /etc/init.d/ sous INIT</note> | ||
<file config /etc/systemd/system/show_my_ip.service> | <file config /etc/systemd/system/show_my_ip.service> | ||
Ligne 58: | Ligne 59: | ||
[Service] | [Service] | ||
- | type=idle | + | Type=idle |
ExecStart=/usr/local/bin/show_my_ip.sh | ExecStart=/usr/local/bin/show_my_ip.sh | ||
StandardOutput=tty | StandardOutput=tty | ||
Ligne 70: | Ligne 71: | ||
* description de l'unit qu'est-ce que ça fait,etc... :<code>Description=Afficher mon ip avec systemd </code> | * description de l'unit qu'est-ce que ça fait,etc... :<code>Description=Afficher mon ip avec systemd </code> | ||
- | * systemd va retarder l'exécution du service jusqu'à ce que tous les autres soient finis :<code>type=idle </code> | + | * systemd va retarder l'exécution du service jusqu'à ce que tous les autres soient finis :<code>Type=idle </code> |
* la ligne de commande à exécuter :<code>ExecStart=/bin/bash /etc/show_my_ip.sh </code> | * la ligne de commande à exécuter :<code>ExecStart=/bin/bash /etc/show_my_ip.sh </code> | ||
* spécifier où va la sortie "standard du script" ou peut l'afficher dans les log, un tty, ou pas l'afficher du tout :<code> StandardOutput=tty</code> | * spécifier où va la sortie "standard du script" ou peut l'afficher dans les log, un tty, ou pas l'afficher du tout :<code> StandardOutput=tty</code> | ||
Ligne 77: | Ligne 78: | ||
* c'est un script que l'usager demande **obligatoire** :<code>WantedBy=multi-user.target</code> | * c'est un script que l'usager demande **obligatoire** :<code>WantedBy=multi-user.target</code> | ||
- | Dernière phase : \\ | + | Dernière phase : J'active au démarrage le nouveau service show_my_ip.service : |
- | je modifie les droits de mon script SystemD puis je l'active au démarrage : | + | <code root>systemctl enable show_my_ip.service</code> |
- | <code root>systemctl enable show_my_ip</code> | + | |
Et voilà ! un petit reboot et à la place de l’écran de login habituel sur le tty1 vous verrez l'exécution de votre script | Et voilà ! un petit reboot et à la place de l’écran de login habituel sur le tty1 vous verrez l'exécution de votre script | ||
===== Résultat ===== | ===== Résultat ===== |