le message est clair: www-data n' a pas accès à /dev/mem essayez en tant que root.zeverybest a écrit : Le message error.log de /var/log/apache2 me donne ceci :
Traceback (most recent call last):
File"/var/www/brouillon/monfichier.py, line3 in <module>
import RPi.GPIO as GPIO
RPi.GPIO.setupExecution : No acces to /dev/mem. Try running as root
Pourtant, j'ai donné tous les droit a monfichier.py et l'ai associé a www-data
[resolu]Lancer un script Python en PHP
Modérateurs : Francois, Manfraid
-
- Raspinaute
- Messages : 248
- Enregistré le : mar. 7 oct. 2014 09:46
- Localisation : Morsang / Orge - Essonne
- Contact :
Re: Lancer un script Python en PHP
DS712+ 2x Western Digital WD10EADS-00L 1000 GB (SHR) - Firmware: DSM 6.1.6-15266
Raspberry - RFXTRX433 - Aeon Labs ZStick V2 - Domoticz
FreeBox v6
https://meteo.folcke.net
https://wiki.folcke.net
Raspberry - RFXTRX433 - Aeon Labs ZStick V2 - Domoticz
FreeBox v6
https://meteo.folcke.net
https://wiki.folcke.net
-
- Raspinaute
- Messages : 136
- Enregistré le : sam. 18 oct. 2014 19:09
Re: Lancer un script Python en PHP
Absloumentvague nerd a écrit :Nous sommes plusieurs à vous avoir recommander de tester en utilisant des noms de fichiers absolus, c'est à dire en indiquant le répertoire complet du fichier. Par exemple /home/pi/script.sh.
Avez-vous essayé ? J'ai raté quelque chose ?
Cdt.
monfichier.py se trouve dans : /var/www/brouillon et j'ai essayé cette syntaxe : python /var/www/brouillon/monfichier.py
J'ai d’ailleurs essayé avec ou sans le chemin complet
-
- Raspinaute
- Messages : 136
- Enregistré le : sam. 18 oct. 2014 19:09
Re: Lancer un script Python en PHP
Comment puis je essayer en ROOT depuis mon interface PHP?mike913 a écrit :le message est clair: www-data n' a pas accès à /dev/mem essayez en tant que root.zeverybest a écrit : Le message error.log de /var/log/apache2 me donne ceci :
Traceback (most recent call last):
File"/var/www/brouillon/monfichier.py, line3 in <module>
import RPi.GPIO as GPIO
RPi.GPIO.setupExecution : No acces to /dev/mem. Try running as root
Pourtant, j'ai donné tous les droit a monfichier.py et l'ai associé a www-data
En console sur le raspberry, cela fonctionne avec sudo devant ma ligne, mais en mettant sudo dans la ligne de mon system() en php j'ai le message : sudo : no tty present and no askpass program specified dans le error.log
-
- Raspinaute
- Messages : 248
- Enregistré le : mar. 7 oct. 2014 09:46
- Localisation : Morsang / Orge - Essonne
- Contact :
Re: Lancer un script Python en PHP
Il faut ajouter www-data au groupe propriétaire du device.
J' avais le même problème avec ttyUSB0 qui appartient au groupe dialout, et donc pour y avoir accès à partir d' apache:
J' avais le même problème avec ttyUSB0 qui appartient au groupe dialout, et donc pour y avoir accès à partir d' apache:
mais dans ton cas je ne sais pas le groupe propriétaire de /dev/memsudo usermod -a -G dialout www-data
DS712+ 2x Western Digital WD10EADS-00L 1000 GB (SHR) - Firmware: DSM 6.1.6-15266
Raspberry - RFXTRX433 - Aeon Labs ZStick V2 - Domoticz
FreeBox v6
https://meteo.folcke.net
https://wiki.folcke.net
Raspberry - RFXTRX433 - Aeon Labs ZStick V2 - Domoticz
FreeBox v6
https://meteo.folcke.net
https://wiki.folcke.net
-
- Raspinaute
- Messages : 136
- Enregistré le : sam. 18 oct. 2014 19:09
Re: Lancer un script Python en PHP
c'est ROOT qui est propriétaire du fichier /dev/memmike913 a écrit :Il faut ajouter www-data au groupe propriétaire du device.
J' avais le même problème avec ttyUSB0 qui appartient au groupe dialout, et donc pour y avoir accès à partir d' apache:mais dans ton cas je ne sais pas le groupe propriétaire de /dev/memsudo usermod -a -G dialout www-data
-
- Raspinaute
- Messages : 248
- Enregistré le : mar. 7 oct. 2014 09:46
- Localisation : Morsang / Orge - Essonne
- Contact :
Re: Lancer un script Python en PHP
Root est le propriétaire mais il y a aussi un groupe, et c'est le groupe quil faut connaitre.
DS712+ 2x Western Digital WD10EADS-00L 1000 GB (SHR) - Firmware: DSM 6.1.6-15266
Raspberry - RFXTRX433 - Aeon Labs ZStick V2 - Domoticz
FreeBox v6
https://meteo.folcke.net
https://wiki.folcke.net
Raspberry - RFXTRX433 - Aeon Labs ZStick V2 - Domoticz
FreeBox v6
https://meteo.folcke.net
https://wiki.folcke.net
-
- Raspinaute
- Messages : 136
- Enregistré le : sam. 18 oct. 2014 19:09
Re: Lancer un script Python en PHP
kmemmike913 a écrit :Root est le propriétaire mais il y a aussi un groupe, et c'est le groupe quil faut connaitre.
-
- Administrateur
- Messages : 3266
- Enregistré le : mer. 17 sept. 2014 18:12
- Localisation : Seine et Marne
Re: Lancer un script Python en PHP
Bonjour,
De mémoire, il faut bien lancer le script Python via la commande sudo depuis la ligne d'exécution PHP.
Mais pour ce faire, il faut ajouter dans le sudoers l'autorisation à www-data de lancer cette commande avec sudo.
De mémoire, il faut bien lancer le script Python via la commande sudo depuis la ligne d'exécution PHP.
Mais pour ce faire, il faut ajouter dans le sudoers l'autorisation à www-data de lancer cette commande avec sudo.
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.
-
- Raspinaute
- Messages : 136
- Enregistré le : sam. 18 oct. 2014 19:09
Re: Lancer un script Python en PHP
en ajoutant ça?
www-data ALL=(ALL) NOPASSWD:ALL
c'est bien ça?
www-data ALL=(ALL) NOPASSWD:ALL
c'est bien ça?
-
- Raspinaute
- Messages : 136
- Enregistré le : sam. 18 oct. 2014 19:09
Re: Lancer un script Python en PHP
Genial
ça fonctionne
100000 Merci
ça fonctionne
100000 Merci