Je rencontre des problèmes pour exécuter un fichier sans saisir sudo
avant celui-ci. Je pense que le problème est que les bibliothèques que j'ai utilisées exigent que vous soyez un superutilisateur.impossible d'exécuter le programme sans utiliser sudo
Je travaille sur un programme pour le Raspberry Pi
et jusqu'ici tout a fonctionné très bien. Le programme prend un argument de ligne de commande et le sort sur un écran LCD 2x16 séparé. Donc, si je tape la commande suivante en tant que root ou si je place sudo
devant le programme, le programme fonctionne comme prévu: ./serialTest Hello World
.
Qu'est-ce que je travaille est maintenant obtenir la valeur d'une zone de texte sur une page Web PHP
et de le soumettre au programme comme un argument de ligne de commande en utilisant la fonction exec()
dans PHP
Le problème est que je suis incapable de l'exécuter parce que à moins que je suis root
j'ai essayé exec("sudo ./serialTest" . $textBox);
mais il me dit encore Permission Denied
Après plus lu dans les bibliothèques que je utilise I cam à travers des instructions sur la façon d'exécuter la fonction serialOpen
sans utiliser sudo
ou être root
J'ai ajouté l'utilisateur pi
et www-data
au groupe dialout
j'ai veri fié avec id pi
id www-data
. Le programme dit toujours Permission denied
. Y at-il quelque chose que je pourrais regarder plus loin ou est-ce que je fais quelque chose de mal? J'ai inclus l'extrait de la page qui indique comment le faire fonctionner sans utiliser sudo
ou d'être root
You can use it without sudo if you add yourself into the dialout group. either edit /etc/group, or use the usermod command. (and logout/login again)
-Gordon
avez-vous redémarrer Apache après avoir effectué les changements de groupe? –
Oui J'ai redémarré le Pi – Yamaha32088
dix Je suggère d'utiliser 'strace' pour obtenir une capture de ce qui se passe en arrière-plan. par exemple. 'exec ('strace ./serialtest')'. strace affichera la pile syscall pour tout ce que fait l'application. à un moment donné, vous verrez d'où vient la permission refusée. –