logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 25-01-2016 16:04:57

greenmerlin
Membre
Lieu : 127.0.0.1
Distrib. : Archlinux/TinycoreLinux(CorePure 64-6.4.1)/Jessie
Noyau : 4.2.2-1 / 4.4
(G)UI : wmaker
Inscription : 23-01-2016

[WIKI]comment lancer un script avec systemd sur un tty

Bonjour à tous,

un petit Tuto pour expliquer comment lancer un script avec systemd sur un tty

script-tty-systemd

Soyez indulgent c'est mon premier sur DF big_smile
toutes remarques (constructive et intelligente ) sont les bienvenues

Concernant la Mise en page : HELPPPPPPP

A bientôt

Edit à toto :
Mis le lien du wiki à la place de celui du chantier d'où il gisait misérable, oublié de tous... big_smile

" La plus importante et la plus négligée de toutes les conversations, c'est l'entretien avec soi-même. "
Chancelier Oxenstiern.

536920766f7573206172726976657220c3a0206c69726520c3a7612c20632765737420717565206e6f757320706172746167656f6e73206c6573206dc3aa6d65732063656e747265732064e28099696e74c3a972c3aa74732e

Hors ligne

#2 25-01-2016 17:28:08

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : [WIKI]comment lancer un script avec systemd sur un tty

Très bonne idée et très bonne initiative smile
Je trouve qu'il serait mieux d'écrire une commande par ligne plutôt que de les
séparées par un « ; ». Sur un exemple au lieu de :


systemctl disable getty@tty1.service;systemctl enable getty@tty2.service
 


Il est plus clair d'écrire :


systemctl disable getty@tty1.service
 


Puis :


systemctl enable getty@tty2.service
 



PS :
J'ai mis deux « boites code » pour les débutants qui débutent comme demander par « toto » big_smile

Hors ligne

#3 25-01-2016 19:03:06

anonyme
Invité

Re : [WIKI]comment lancer un script avec systemd sur un tty

enicar a écrit :

Très bonne idée et très bonne initiative smile



je confirme tongue 

ps: avec un complément pour systemd-network et comment mettre en place proprement iptable  cool

#4 25-01-2016 19:47:13

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : [WIKI]comment lancer un script avec systemd sur un tty

Voilà, j'ai changé ce détail dont je parlais dans le post #2 wink

Hors ligne

#5 25-01-2016 19:57:11

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : [WIKI]comment lancer un script avec systemd sur un tty

J'ai refait le découpage des sections wink

Hors ligne

#6 25-01-2016 20:00:06

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : [WIKI]comment lancer un script avec systemd sur un tty

Ajout d'un lien vers cette page pour les retours smile

Hors ligne

#7 25-01-2016 20:39:27

Severian
Membre
Distrib. : Debian GNU/Linux 9.4 (stretch)
Noyau : Linux 4.14.0-0.bpo.3-amd64
(G)UI : Openbox 3.6.1-4
Inscription : 13-12-2014

Re : [WIKI]comment lancer un script avec systemd sur un tty

le prochain projet
remplacer ligthdm / gdm / kdm /et-autre-dm par systemd pour démarrer une session graphique utilisateur smile

enfin si j'arrive à finir le wiki networkd tongue

Hors ligne

#8 25-01-2016 20:42:14

greenmerlin
Membre
Lieu : 127.0.0.1
Distrib. : Archlinux/TinycoreLinux(CorePure 64-6.4.1)/Jessie
Noyau : 4.2.2-1 / 4.4
(G)UI : wmaker
Inscription : 23-01-2016

Re : [WIKI]comment lancer un script avec systemd sur un tty

ps: avec un complément pour systemd-network et comment mettre en place proprement iptable  cool


Pourquoi la mais le sujet peut devenir profond avec la couche wifi

Merci, a vous tous ! comme je vous le disait la mise en page c'est pas mon truc tongue


" La plus importante et la plus négligée de toutes les conversations, c'est l'entretien avec soi-même. "
Chancelier Oxenstiern.

536920766f7573206172726976657220c3a0206c69726520c3a7612c20632765737420717565206e6f757320706172746167656f6e73206c6573206dc3aa6d65732063656e747265732064e28099696e74c3a972c3aa74732e

Hors ligne

#9 25-01-2016 20:44:52

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : [WIKI]comment lancer un script avec systemd sur un tty

Quelques tatouillages… le shebang du script show_my_ip.sh et une correction dans le .service
qui lance le script.

Hors ligne

#10 25-01-2016 20:48:41

Severian
Membre
Distrib. : Debian GNU/Linux 9.4 (stretch)
Noyau : Linux 4.14.0-0.bpo.3-amd64
(G)UI : Openbox 3.6.1-4
Inscription : 13-12-2014

Re : [WIKI]comment lancer un script avec systemd sur un tty

si tu veux participer au wiki systemd-networkd, ne te gène surtout pas, pour l'instant je bloque un peu de mon coté (en plus je suis sur pc fixe, je ne connais pas du tout le coté wifi) smile

Hors ligne

#11 25-01-2016 20:55:09

milou
Membre
Lieu : Sur une autre planète....
Distrib. : Jessie - Stretch/Sid
Noyau : 3.16.0-4-amd64
(G)UI : Lxde
Inscription : 12-02-2015

Re : [WIKI]comment lancer un script avec systemd sur un tty

Voilà j'ai fait quelques petites tatouilles au niveau de l'en-tête et de l'ortho smile

J’adorerais changer le monde, mais ils ne veulent pas me fournir le code source
Un vrai geek, c'est un mec qui croit que dans 1km, il y a 1024 mètres
Dans le doute, rebootes. Si tu te tâtes, formates.
1453651422.jpg

Hors ligne

#12 26-01-2016 02:29:41

anonyme
Invité

Re : [WIKI]comment lancer un script avec systemd sur un tty

Comme dit Severian la porte du wiki est ouverte wink , il a fait un truc sympa pour une carte filaire , j 'ai fait quelques test ça tourne bien (d ailleurs j ai une machine avec systemd-networkd qui a 2 cartes réseau et fonctionne bien ) je bloque sur la mise en place du forward (entre eth0 et eth1 ) et completer le tuto.

le wifi idem pour moi , il est interdit chez moi tongue  , dans mon boulot j'ai assez été soumi aux ondes radio sans encore l etre a la maison , je tolere le portable mais trés loin de moi wink
ps: sauf quand j'utilise le portable roll bien sur ....  neutral

#13 29-01-2016 18:38:31

greenmerlin
Membre
Lieu : 127.0.0.1
Distrib. : Archlinux/TinycoreLinux(CorePure 64-6.4.1)/Jessie
Noyau : 4.2.2-1 / 4.4
(G)UI : wmaker
Inscription : 23-01-2016

Re : [WIKI]comment lancer un script avec systemd sur un tty

Voila j'ai mis un beau Screenshots à la fin :-)

" La plus importante et la plus négligée de toutes les conversations, c'est l'entretien avec soi-même. "
Chancelier Oxenstiern.

536920766f7573206172726976657220c3a0206c69726520c3a7612c20632765737420717565206e6f757320706172746167656f6e73206c6573206dc3aa6d65732063656e747265732064e28099696e74c3a972c3aa74732e

Hors ligne

#14 29-01-2016 20:30:55

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [WIKI]comment lancer un script avec systemd sur un tty

Mis l'image du beau screenshot final en apparence. smile

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#15 05-02-2016 09:26:56

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : [WIKI]comment lancer un script avec systemd sur un tty

Placé le tuto dans le wiki là :
script-tty-systemd

J'y ai encore tatouillé l'aspect et corrigé l'ortho.

Merci à tous. cool

PS :
Je reporte le lien post#1.

saque eud dun (patois chtimi : fonce dedans)

Hors ligne

#16 05-02-2016 09:36:16

milou
Membre
Lieu : Sur une autre planète....
Distrib. : Jessie - Stretch/Sid
Noyau : 3.16.0-4-amd64
(G)UI : Lxde
Inscription : 12-02-2015

Re : [WIKI]comment lancer un script avec systemd sur un tty

J'ai mis les touches en conformité wink

J’adorerais changer le monde, mais ils ne veulent pas me fournir le code source
Un vrai geek, c'est un mec qui croit que dans 1km, il y a 1024 mètres
Dans le doute, rebootes. Si tu te tâtes, formates.
1453651422.jpg

Hors ligne

#17 08-06-2024 07:17:10

agp91
Membre
Distrib. : GNU Debian stable
(G)UI : xfce
Inscription : 12-02-2023

Re : [WIKI]comment lancer un script avec systemd sur un tty

Je passais par là, ça avait l'air sympa... Mais non.

Mauvais choix : Un script dans /etc/bin scratchhead.gif

man hier



Le tuto appliqué, le système redémarrer... Ça ne fonctionne pas
Sur tty1 y est affiché les messages que le système à généré durant son démarrage. Pas d'affichage des adresses IP hmm
Sur tty2, il y a bien agetty qui y est exécuté et qui demande un nom d'utilisateur.
Mais plus sur tty3, tty4 et tty5 mad
Tout va bien sur tty6

Fouillons un peu

$ systemctl status show_my_ip.service
× show_my_ip.service - Afficher mon ip avec systemd
     Loaded: loaded (/etc/systemd/system/show_my_ip.service; enabled; preset: enabled)
     Active: failed (Result: exit-code) since Sat 2024-06-08 09:01:43 CEST; 1min 7s ago
   Duration: 1ms
   Main PID: 1609 (code=exited, status=203/EXEC)
        CPU: 872us

juin 08 09:01:43 deb12 systemd[1]: Started show_my_ip.service - Afficher mon ip avec systemd.
juin 08 09:01:43 deb12 systemd[1]: show_my_ip.service: Main process exited, code=exited, status=203/EXEC
juin 08 09:01:43 deb12 systemd[1]: show_my_ip.service: Failed with result 'exit-code'.
juin 08 09:02:05 deb12 systemd[1]: /etc/systemd/system/show_my_ip.service:5: Unknown key name 'type' in section 'Service', ignoring.


Ok

# sed -i 's/type/Type/' /etc/systemd/system/show_my_ip.service
# systemctl daemon-reload
# systemctl start show_my_ip.service


$ systemctl status show_my_ip.service
× show_my_ip.service - Afficher mon ip avec systemd
     Loaded: loaded (/etc/systemd/system/show_my_ip.service; enabled; preset: enabled)
     Active: failed (Result: exit-code) since Sat 2024-06-08 09:14:13 CEST; 1min 23s ago
   Duration: 3ms
    Process: 1659 ExecStart=/etc/bin/show_my_ip.sh (code=exited, status=203/EXEC)
   Main PID: 1659 (code=exited, status=203/EXEC)
        CPU: 849us

juin 08 09:14:13 deb12 systemd[1]: Started show_my_ip.service - Afficher mon ip avec systemd.
juin 08 09:14:13 deb12 (my_ip.sh)[1659]: show_my_ip.service: Failed to execute /etc/bin/show_my_ip.sh: Exec format error
juin 08 09:14:13 deb12 (my_ip.sh)[1659]: show_my_ip.service: Failed at step EXEC spawning /etc/bin/show_my_ip.sh: Exec format error
juin 08 09:14:13 deb12 systemd[1]: show_my_ip.service: Main process exited, code=exited, status=203/EXEC
juin 08 09:14:13 deb12 systemd[1]: show_my_ip.service: Failed with result 'exit-code'.


OK

# sed -i 's@# !/bin/sh@#!/bin/sh@' /etc/bin/show_my_ip.sh
# systemctl start show_my_ip.service


$ systemctl status show_my-ip.service
● show_my_ip.service - Afficher mon ip avec systemd
     Loaded: loaded (/etc/systemd/system/show_my_ip.service; enabled; preset: enabled)
     Active: active (running) since Sat 2024-06-08 09:17:09 CEST; 18s ago
   Main PID: 1675 (show_my_ip.sh)
      Tasks: 2 (limit: 2285)
     Memory: 360.0K
        CPU: 11ms
     CGroup: /system.slice/show_my_ip.service
             ├─1675 /bin/sh /etc/bin/show_my_ip.sh
             └─1685 sleep 10


Ctrl+Alt+F1
zen.gif
Peaufinons

$ systemd-analyze  verify show_my_ip.service
Configuration file /etc/systemd/system/show_my_ip.service is marked executable. Please remove executable permission bits. Proceeding anyway.


Rien de grave, ça fonctionne tout même.
Mais chmod 644 au lieu de  chmod 755 serait mieux.

Par contre je ne vais pas tester sous Gnome ,ni sous Kde, car ces environnements graphiques utilisent tty1.

Dernière modification par agp91 (08-06-2024 11:59:35)


La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.

Hors ligne

#18 08-06-2024 15:39:04

agp91
Membre
Distrib. : GNU Debian stable
(G)UI : xfce
Inscription : 12-02-2023

Re : [WIKI]comment lancer un script avec systemd sur un tty

Page de manuel hier a écrit :

/usr/local
              Emplacement habituel pour les programmes spécifiques à la machine ou au site.

/usr/local/bin
              Programmes exécutables spécifiques au site.


Le choix de l'emplacement du script devrait plutôt être /usr/local/bin/show_my_ip.sh

Pour résoudre le soucis que tty3, tty4 et tty5 ne sont plus disponibles pour une connexion en mode texte.
Il suffit de ne pas modifier le fichier /etc/systemd/logind.conf

J'ai n'est pas encore trouver comment faire pour être compatible avec tous les cas (dont KDE ou Gnome qui utilisent tty1)
Si ce n'est de lancer le script sur une autre console genre tty12, accessible par (Ctrl+)Alt+F12

Il existe une alternative à nouveau service (/etc/systemd/system/show_my_ip.service) pour lancer le script.
Pour tty12, il suffit d'activer son service (getty@tty1.service est activé par défaut)

# systemctl enable getty@tty12.service


Et d'en écraser la config en créant une nouvelle config dans /etc/systemd/system/getty@tty12.service.d/show_my_ip

[Service]
ExecStart=
ExecStart=-/usr/local/bin/show_my_ip.sh
StandardInput=tty
StandardOutput=tty
 

Dernière modification par agp91 (08-06-2024 16:35:08)


La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.

Hors ligne

#19 08-06-2024 16:32:45

agp91
Membre
Distrib. : GNU Debian stable
(G)UI : xfce
Inscription : 12-02-2023

Re : [WIKI]comment lancer un script avec systemd sur un tty

Corrections apportées au wiki :

  • Modification du chemin du script pour /usr/local/bin/show_my_ip.sh

  • Suppression de la modification du fichier /etc/systemd/logind.conf

  • Suppression de la modification des droits du fichier /etc/systemd/sysyte/show_my_ip


Pas de modification sur le choix tty1 pour afficher le retour du script.
C'est toujours le nouveau service créer qui exécute le script.

Dernière modification par agp91 (08-06-2024 16:33:05)


La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.

Hors ligne

Pied de page des forums