Messages : 9
Sujets : 1
Inscription : Jan 2017
bonjour comment vous allez, j'avez un souci concernant ma Raspberry Pi, plus particulièrement avec l'outil RaspiSMS.
En effet je veux controler mon Raspberry Pi à distance, c'est à dire en lui envoyant des commandes SMS. Actuellement, je parviens à envoyer ces commandes SMS, et RaspiSMS reconnait ces SMS comme des commandes, ce qui est génial, Mais mon souci en est qu'il exécute pas ces commandes SMS comme je le veux, c'est à dire, y'a aucune réaction de la Raspberry Pi.
Par exemple si j'envoie une commande SMS: [shutdown:][login:*****@example.fr][password:*****] , il n'exécute pas la commande shutdown.
Quelqu'un à une idée pour me faire avancer?
Messages : 81
Sujets : 7
Inscription : Oct 2013
salut,
tu utilises quoi comme login pour passer la commande?
sachant que pi n'a pas les droits sur ce genre de commande... un sudo dans la commande pourrait fonctionner, à tester
Messages : 9
Sujets : 1
Inscription : Jan 2017
Salut Wared,
Au fait ce qu'il a cripté (*****@example.fr), c'est le login. Les étoiles c'est admin.
En effet, le message je l'envoie à partir de mon téléphone. J'ai un script dans lequel j'ai mis shutdown et reboot, de ce fait si je lui envoie un SMS comportant ces deux actions (shutdown ou reboot) il doit les exécuter. Mais malheureusement pas de réponse de la part du Pi.
Merci
Messages : 446
Sujets : 18
Inscription : Aug 2015
oui, mais la commande shutdown doit etre donnée avec sudo
Messages : 9
Sujets : 1
Inscription : Jan 2017
Ok.
Si j'ai bien compris, le sudo doit être dans SMS, (par exemple si je dois envoyer un SMS comme shutdown je dois mettre sudo shutdown),ou bien je dois mettre le sudo dans le script?
Merci de m'éclaircir.
Messages : 910
Sujets : 61
Inscription : Dec 2017
Tu le mets dans le script.
Et bien entendu, ton utilisateur qui exécute le script doit pouvoir exécuter le sudo shutdown sans avoir à entrer le mot de passe.
Je rappelle que la syntaxe précise de shutdown est:
Et que pour le reboot, il vaut mieux utiliser:
Dernier point de détail: lorsqu'on fait un script qui sera lancé par un système automatique (crontab ou gammu, par exemple), les paths utilisateurs ne sont pas chargés (ils se chargent lors d'un login), il faut donc autant que possible utiliser le chemin complet vers l'exécutable.
Ton script devra donc contenir une ligne de la forme:
Code :
/usr/bin/sudo /sbin/shutdown -h now
Messages : 9
Sujets : 1
Inscription : Jan 2017
Génial ça à marcher comme je l'avais souhaité.
Je parviens à envoyer des commandes SMS à mon Pi, et celui ci les exécute très bien.
c'est avec la méthode qu' à proposer Crazycat:
Tu le mets dans le script.
Et bien entendu, ton utilisateur qui exécute le script doit pouvoir exécuter le sudo shutdown sans avoir à entrer le mot de passe.
Je rappelle que la syntaxe précise de shutdown est:
shutdown -h now
Et que pour le reboot, il vaut mieux utiliser:
shutdown -r now
Dernier point de détail: lorsqu'on fait un script qui sera lancé par un système automatique (crontab ou gammu, par exemple), les paths utilisateurs ne sont pas chargés (ils se chargent lors d'un login), il faut donc autant que possible utiliser le chemin complet vers l'exécutable.
Ton script devra donc contenir une ligne de la forme:
/usr/bin/sudo /sbin/shutdown -h now
Vraiment Merci beaucoup à tout le groupe de l'attention que vous avez porté à mes problèmes.
(Modification du message : 12-01-2017, 21:50:49 par
omzozo.)
Messages : 446
Sujets : 18
Inscription : Aug 2015
Messages : 9
Sujets : 1
Inscription : Jan 2017
Bonjour comment vous allez, je pense que tout va bien.
Au fait, concernant toujours la manipulation de mon Raspberry à distance par sms (c'est à dire en utilisant par exemple la commande SMS à savoir shutdown ou reboot), je voulais en lançant le SMS au Raspberry, ce dernier m'envoie un SMS de retour me disant que: si c'est Reboot " Votre Rapberry vient de redémarrer" ou bien si c'est shutdown "Votre Raspberry est éteint".
Est ce que cela est possible?
Vos idées seront les bien venues .
Messages : 910
Sujets : 61
Inscription : Dec 2017
Il faut te tourner vers le rc.d:
http://www.commentcamarche.net/faq/18644...t-d-ubuntu
Note que pour le reboot, c'est dans rc6.d qu'il faut placer le script.
Certains me diront qu'on aurait pu utiliser crontab avec @reboot, mais non car je ne suis pas certain du moment auquel ça s'exécute, et si c'est trop tôt, ça ne marchera pas.
Messages : 9
Sujets : 1
Inscription : Jan 2017
Salut CrazyCat est ce que vous pouvez être plus explicite car j'ai pas bien compris votre réponse.
Jusqu'à présent je ne parviens pas à franchir cette étape c'est à dire, permettre à mon Raspberry de me notifier qu'il vient de redémarrer (si c'est la commande reboot qui est exécutée) ou bien qu'il avait été éteint( si c'est le shutdown qui était lancée).
Au fait ce que je veut faire c'est de lui envoyer un SMS (comportant shutdown ou reboot vu que j'ai déja créé un script pour l'exécution de ces deux commandes), maintenant une fois le SMS est lancé au Raspberry, cet dernier m'envoie un SMS retour me disant qu'il va redémarrer ou bien qu'il va s'éteindre.
Bien-sur ces phrases de notifications "il va redémarrer ou bien qu'il va s'éteindre" seront mises dans le script, mais comment les intégrer pour que le script puisse les prendre en compte.
(Modification du message : 20-01-2017, 11:53:47 par
omzozo.)
Messages : 81
Sujets : 7
Inscription : Oct 2013
alors pouqrquoi dans ton sms ne pas faire appel à un script plutot qu'a une commande
ca te permettras de chainer plusieurs commandes : envoi sms > retour sms "je vais redemarrer" > reboot >retour sms "demarré"
Messages : 910
Sujets : 61
Inscription : Dec 2017
Je vais essayer d'être plus explicite. Les répertoires rcX.d sont des répertoires particuliers du système, qui contiennent des scripts qui sont lancés en fonction des "run-level", ce qui correspond à l'état de la machine.
Pour lancer un script lorsque la RPi reçoit un ordre de reboot, il faut placer ce script dans le répertoire /etc/rc6.d/, 6 étant l'initialisation d'un reboot.
Pour l'arrêt, il faut mettre le script dans /etc/rc0.d/, 0 étant l'ordre d'arrêt.
Pour la fin d'un démarrage, je pense que /etc/rc3.d/ est le plus approprié (système chargé en mode multi-utilisateurs, tous les systèmes sont actifs, dont le réseau et les périphériques).
Tu auras plus d'infos à propos des Run-levels sur
https://fr.wikipedia.org/wiki/Run_level