vache de bash (impossible d' éteindre un pc sous linux)
Publié : 03 avr. 2023, 23:11
Bonjour
Je précise en préambule que je connais mal le shell bash
Je souhaite contrôler une machine sous ubuntu à travers domoticz .
Pour la démarrer , pas de problème ,. J ‘utilise wakeonlan
J’ ai écrit un petit script que j’ appelle sous domoticz:
script:///home/pi/domoticz/scripts/sh/wakeupserveur.sh
Cela fonctionne parfaitement
Pour éteindre la machine ubuntu qui nécessite un pass , j’ ai écrit le script shutdown2.sh que j’ exécute sur le pi :
sshpass -p Le_pass_machine_ubuntu ssh nom_user@adresse_Ip ./shutdownubu.sh
shutdownubu,sh est dans la machine linux et me permet de passer en sudo et de lancer shutdown
Je précise que chaque fichier sh est rendu exécutable ( chmod +x)
Si je lance dans le dossier home/pi/domoticz/scripts/sh/ bash shutdown2.sh ou ./shutdown2.sh , la machine s’ éteint parfaitement .
Quand j’ essaie sur Domoticz avec un device :
script:///home/pi/domoticz/scripts/sh/shutdown2.sh
il retourne
Error executing script command (/home/pi/domoticz/scripts/sh/shutdown2.sh). returned: 32512
Si je crée un fichier test,sh qui appelle shutdown2.sh ; idem
J’ ai ajouté un & à la fin du script shutdown2.sh ; il ne retourne plus d’ erreur dans domoticz
mais si je le lance sous console donc avec & final :
il me retourne : ( j’ ai utilisé expect dans le fichier pc)
interact: spawn id exp0 not open
while executing
"interact -o -nobuffer -re $prompt return"
qui indique (si j' ai compris) que expect était fermé
J’ ai essayé également :
os.execute('/home/pi/domoticz/scripts/sh/./test.sh') sans succès (pas d' erreur pas de réaction)
Mes recherches sur le net ne m’ ont guère éclairé .
Si quelqu’un à une idée ..
Merci par avance
Je précise en préambule que je connais mal le shell bash
Je souhaite contrôler une machine sous ubuntu à travers domoticz .
Pour la démarrer , pas de problème ,. J ‘utilise wakeonlan
J’ ai écrit un petit script que j’ appelle sous domoticz:
script:///home/pi/domoticz/scripts/sh/wakeupserveur.sh
Cela fonctionne parfaitement
Pour éteindre la machine ubuntu qui nécessite un pass , j’ ai écrit le script shutdown2.sh que j’ exécute sur le pi :
sshpass -p Le_pass_machine_ubuntu ssh nom_user@adresse_Ip ./shutdownubu.sh
shutdownubu,sh est dans la machine linux et me permet de passer en sudo et de lancer shutdown
Je précise que chaque fichier sh est rendu exécutable ( chmod +x)
Si je lance dans le dossier home/pi/domoticz/scripts/sh/ bash shutdown2.sh ou ./shutdown2.sh , la machine s’ éteint parfaitement .
Quand j’ essaie sur Domoticz avec un device :
script:///home/pi/domoticz/scripts/sh/shutdown2.sh
il retourne
Error executing script command (/home/pi/domoticz/scripts/sh/shutdown2.sh). returned: 32512
Si je crée un fichier test,sh qui appelle shutdown2.sh ; idem
J’ ai ajouté un & à la fin du script shutdown2.sh ; il ne retourne plus d’ erreur dans domoticz
mais si je le lance sous console donc avec & final :
il me retourne : ( j’ ai utilisé expect dans le fichier pc)
interact: spawn id exp0 not open
while executing
"interact -o -nobuffer -re $prompt return"
qui indique (si j' ai compris) que expect était fermé
J’ ai essayé également :
os.execute('/home/pi/domoticz/scripts/sh/./test.sh') sans succès (pas d' erreur pas de réaction)
Mes recherches sur le net ne m’ ont guère éclairé .
Si quelqu’un à une idée ..
Merci par avance