Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 29/06/2018, à 15:25

Anard

Script au démarrage, j'ai fait une bêtise...

Bonjour,

Je voulais faire un script pour démarrer/arrêter un service au démarrage.

Voici le script en question :

#!/bin/bash

if [ "$#" = 0 ]
then
	echo "Usage $0 "
exit 1
fi

service=$1 
etat=`service ssh status | grep inactive | wc -l` 

if [ $etat = "0" ]
then
	zenity --title="Serveur Musée" --width=250 --timeout=2 --question --text="Le serveur est fonctionnel" --ok-label="OK" --cancel-label="Arrêter"
	
	if [ "$?" -eq 1 ]; then
		service ssh stop
	fi
else
	zenity --title="Serveur Musée" --width=250 --timeout=5 --question --text="Voulez-vous démarrer le serveur ?"

	if [ "$?" -eq 0 ]; then
		service ssh start
	fi
fi
exit 1

La partie sur "service=$1" était en cours d'écriture, c'est pour choisir le service. Pour le moment le script n'agit que sur ssh, il faudra que je modifie la ligne etat=`service ssh status | grep inactive | wc -l`

J'ai testé le script dans un terminal en tapant

anard@Ubuntu-SSD:~$ ./monscript.sh ssh

Il fonctionnait bien.

J'ai voulu le rajouter dans les Applications au démarrage. J'ai donc lancé l'application et à côté de "Commande", ai fait "Parcourir..." pour sélectionner mon script. Il a écrit le chemin entre " et j'ai rajouté mon argument (inutile pour le moment) après le 2d ".
Comme problème probable aussi, il y a des espaces et des accents dans le chemin du script.

Problème : A l'ouverture de session, il la referme maintenant immédiatement, je vois juste le fond d'écran, mais le dock n'a pas le temps d'apparaître.
J'ai ouvert une session sous un autre compte et en root j'ai été voir dans mon /home. J'ai trouvé dans /home/anard/.config/ un dossier "autostart" contenant un fichier "monscript.sh.desktop. J'en ai déduis que c'était ici qu'était placé la config des applications au démarrage et ai déplacé le .desktop en question dans un autre dossier pour tenter de le désactiver.

Malheureusement, je ne peux toujours pas ouvrir de session avec mon compte habituel.
Savez-vous comment je peux réparer ma session, j'ai essayé de modifier le .desktop et de le mettre ailleurs sans résultats ?
Merci.

Dernière modification par Anard (Le 29/06/2018, à 15:31)


"iMack" : GA-H97M-D3H, Intel i5 4460, 16Go DDR3, Intel HD4600, SSD 256+120 / Bootloader Clover - macOS Mojave / Gentoo-Xfce
"Portable" : HP Pavilion DV3500, Intel T6400, 4Go, HDD 500Go / Grub2 - Gentoo-Xfce

Hors ligne

#2 Le 29/06/2018, à 16:28

Anard

Re : Script au démarrage, j'ai fait une bêtise...

PS : Je n'arrive pas non plus à ouvrir de tty, quand je fais Ctrl-Alt-F1, il verrouille la session si une session est ouverte te ne fait rien sur le gestionnaire de sessions.

EDIT : réparé (en partie)
J'ai fait :

essais@Ubuntu-SSD:~$ sudo su
[sudo] Mot de passe de essais : 
root@Ubuntu-SSD:/home/essais# cd /home/anard/.config
root@Ubuntu-SSD:/home/anard/.config# mv autostart autostartold
root@Ubuntu-SSD:/home/anard/.config# mkdir autostart
root@Ubuntu-SSD:/home/anard/.config# cd ../
root@Ubuntu-SSD:/home/anard# rm .Xauthority
root@Ubuntu-SSD:/home/anard# rm .IECauthority
root@Ubuntu-SSD:/home/anard# reboot

Plus qu'à remettre mes applications au démarrage habituelles.
Mais ça ne règle pas mon problème de script pour démarrer/arrêter des services au démarrage wink

Dernière modification par Anard (Le 29/06/2018, à 17:11)


"iMack" : GA-H97M-D3H, Intel i5 4460, 16Go DDR3, Intel HD4600, SSD 256+120 / Bootloader Clover - macOS Mojave / Gentoo-Xfce
"Portable" : HP Pavilion DV3500, Intel T6400, 4Go, HDD 500Go / Grub2 - Gentoo-Xfce

Hors ligne

#3 Le 29/06/2018, à 17:12

Anard

Re : Script au démarrage, j'ai fait une bêtise...

Bien, j'ai pu lancer mon script au démarrage et ça semble fonctionner comme je voulais.

[Desktop Entry]
Type=Application
Exec=/home/anard/Documents/.autostart-service.sh ssh
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[fr_FR]=AutoStart ssh
Name=AutoStart ssh
Comment[fr_FR]=
Comment=

Mon problème venait d'ailleurs :
Je ne peux plus lancer Psensor (qui se lançait au démarrage également). Quand j'essaie, il mouline un moment avant de quitter mais rien n'apparait dans ma barre de menu.
En revanche, il ne semble pas faire planter la session, juste il ne vient plus.

C'est apparemment indicator-multiload qui foutait le bordel. Quand je le lance manuellement, il ne se passe rien et si je le mets dans les applications au démarrage, la session plante.
Je l'ai désinstallé avec

sudo apt autoremove --purge indicator-multiload

et réinstallé sans succès.

Donc ça n'avait rien à voir avec mon script, mais j'aurai aimé récupérer ces deux indicateurs bien pratiques si c'était possible...

Dernière modification par Anard (Le 29/06/2018, à 17:19)


"iMack" : GA-H97M-D3H, Intel i5 4460, 16Go DDR3, Intel HD4600, SSD 256+120 / Bootloader Clover - macOS Mojave / Gentoo-Xfce
"Portable" : HP Pavilion DV3500, Intel T6400, 4Go, HDD 500Go / Grub2 - Gentoo-Xfce

Hors ligne

#4 Le 29/06/2018, à 17:26

bruno

Re : Script au démarrage, j'ai fait une bêtise...

Bonjour,

Je ne comprends pas ce que tu essaies de faire avec ton script.
Le service ssh est lancé automatiquement au démarrage. Quel besoin de le lancer ou de l'arrêter avec un script ?

Et au passage sudo su est une commande stupide, je l'ai déjà expliqué ailleurs. Si tu veux obtenir un shell root il faut faire :

sudo -i

Hors ligne

#5 Le 29/06/2018, à 17:41

Anard

Re : Script au démarrage, j'ai fait une bêtise...

bruno a écrit :

Bonjour,

Je ne comprends pas ce que tu essaies de faire avec ton script.
Le service ssh est lancé automatiquement au démarrage. Quel besoin de le lancer ou de l'arrêter avec un script ?

Je préfère qu'il soit désactivé par défaut (je ne sais plus comment j'ai fait, mais il l'est maintenant) et ça peut être pour d'autres services.
Quand on lance le script (au démarrage ou à un autre moment), l'utilisateur sera informé de l'état du service et il lui sera proposer de le démarrer ou de l'arrêter suivant le cas. Sans passer par la ligne de commande du coup.

Et au passage sudo su est une commande stupide, je l'ai déjà expliqué ailleurs. Si tu veux obtenir un shell root il faut faire :

sudo -i

Ah bon, très bien, j'essaierai de m'en rappeler. J'utlise souvent ça pour naviguer dans les dossiers qui n'appartiennent pas à l'utilisateur courant. Ceci ne fonctionne pas

sudo cd [...]

"iMack" : GA-H97M-D3H, Intel i5 4460, 16Go DDR3, Intel HD4600, SSD 256+120 / Bootloader Clover - macOS Mojave / Gentoo-Xfce
"Portable" : HP Pavilion DV3500, Intel T6400, 4Go, HDD 500Go / Grub2 - Gentoo-Xfce

Hors ligne