Commande SSH via script

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
e111111
Messages : 225
Inscription : 11 déc. 2018, 19:44

Commande SSH via script

Message par e111111 »

Bonjour à tous,

j'utilise depuis quelques années une vielle tablette Samsung android comme tablette murale pour DZ, avec un script trouvé ici pour récupérer l'état batterie et mettre la charge en marche si besoin.

Problème, au bout de quelques temps la tablette fini par se planter et je suis obligé de la rebooter manuellement.

En la rebootant régulièrement, je me suis apperçu que cela va beaucoup mieux, j'ai donc décidé de la rebooter automatiquement toutes les semaines.

J'ai réussi à le faire par Putty, la commande fonctionne donc bien, mais je n'arrive pas à trouver la syntaxe pour l'utiliser dans un script type LUA, DZVENTS ou SH...

Quelqu'un à-t-il la solution ?

Voici la ligne de commande :

Code : Tout sélectionner

ssh -p 2222 192.168.1.73 'su -c "reboot"'
Merci d'avance pour votre aide
Domoticz V4.10 sur Synology DS216j (DSM 6.3), clef Z-Wave Sigma
Chrominator
Messages : 1042
Inscription : 19 déc. 2015, 07:29
Localisation : France

Re: Commande SSH via script

Message par Chrominator »

Tu peux utiliser la crontab de ton système si ça existe.

Tu mets ta ligne de commande dans un script shell, et tu paramètre la crontab en conséquence.

Des outils pour t'y aider :
https://www.linuxtricks.fr/wiki/cron-et ... -de-taches
https://crontab.guru/

Je vois du Synology dans ta signature, comme je ne connais pas je laisse à d'autres le soin de t'expliquer quoi faire.
Un bon frein vaut mieux que deux sparadraps.

Ubuntu 24.04.3 LTS - Domoticz 2025.1 (build 16782)
Pentium G3220T 2.6GHz - 4Go DDR3
RFXtrx433 USB Ver Pro1/1043
Z-Stick GEN5 Version: 1.6-1136-g07ea22bb
Rtl433 RTL-SDR receiver
RFLink Gateway
Zigbee SLZB-06
fcBourgogne
Messages : 172
Inscription : 31 mars 2020, 14:22

Re: Commande SSH via script

Message par fcBourgogne »

Bonjour,
Peut être avec ceci si le mot de passe n'est pas demandé:

Code : Tout sélectionner

os.execute('ssh -p 2222 192.168.1.73 "sudo reboot"')
A+
Raspberry PI5+ 1WIRE + I2C +ESP8266 +esp32
lost
Messages : 1511
Inscription : 12 nov. 2016, 11:01

Re: Commande SSH via script

Message par lost »

Il y a possibilité dans le fichier de config de sudo, /etc/sudoers, de configurer pour rendre certaines commandes (attention au choix/sécurité, mais un reboot au pire ca n'intéressera pas grand monde) accessibles sans mdp.

Code : Tout sélectionner

man sudoers
Pour le mode d'emploi.
e111111
Messages : 225
Inscription : 11 déc. 2018, 19:44

Re: Commande SSH via script

Message par e111111 »

Merci à tous,
pour le cron, j'avais essayé sur le syno, mais ça marche une fois, et plus ensuite ...

La ligne avec os.execute j'avais déjà essayé, avec différentes syntaxes.

@ Lost, je n'ai pas saisi ton propos, ma commande par SSH passe sans mot de passe, la ligne entrée telle quelle dans Putty reboot bien la tablette, je n'arrive juste pas à trouver la bonne formule à employer dans bash ou LUA.

J'ai essayé tellement de trucs que j'en ai même réussi à faire rebooter le Syno avec mes âneries :lol:
Domoticz V4.10 sur Synology DS216j (DSM 6.3), clef Z-Wave Sigma
fcBourgogne
Messages : 172
Inscription : 31 mars 2020, 14:22

Re: Commande SSH via script

Message par fcBourgogne »

Bonjour,

tu dis:
ma commande par SSH passe sans mot de passe, la ligne entrée telle quelle dans Putty reboot bien la tablette
Pour que Putty communique avec ta tablette, tu es bien passé par l'authentification avant d'envoyer des lignes de commande???

Donc SSH requiert des authentifications, et comme @Lost te l'a suggéré recherche avec "sudoers" ou "ssh-keygen".
A+
Raspberry PI5+ 1WIRE + I2C +ESP8266 +esp32
e111111
Messages : 225
Inscription : 11 déc. 2018, 19:44

Re: Commande SSH via script

Message par e111111 »

Bonjour,
merci pour ta réponse, je me suis mal exprimé, j'authentifie ma session Putty sur le nas, et une fois connecté sur le nas, j'envoie la commande à la tablette sans password.
Domoticz V4.10 sur Synology DS216j (DSM 6.3), clef Z-Wave Sigma
e111111
Messages : 225
Inscription : 11 déc. 2018, 19:44

Re: Commande SSH via script

Message par e111111 »

Bon, cela fonctionne,

en fait par moments la tablette se met "hors réseau" je ne sais pas trop pourquoi, cela me générait des erreurs lors de l'acquisition du niveau batterie, mais pas forcément genantes car cette requête est envoyée toutes les heures;
par contre pour le reboot qui n'est envoyé qu'une fois par semaine, c'est plus problématique, du coup j'ai réemployé le test batterie pour savoir si j'ai un résultat correct, si non, j’envoie une commande on/off à la tablette puis ensuite le reboot, et là cela semble fonctionner correctement.

A voir dans le temps ...
Domoticz V4.10 sur Synology DS216j (DSM 6.3), clef Z-Wave Sigma
Répondre