J’ai un script python qui fonctionne parfaitement lorsque je l’exécute avec le compte « pi » (par defaut).
J’ai créé un autre utilisateur nommé « pii », lorsque je vais dans l’arborescence de « pii » elle est vide, il n’y a pas tous les dossiers se trouvant dans « pi » celui par défaut à l’installation.
Lorsque j’exécute mon script avec le compte utilisateur « pii » en tapant python test.py
Voici le message qui s’affiche:
Traceback (most recent call last):
File « test.py », line 10, in
GPIO.setup(16,GPIO.LOW) # Definition du port en sortie
RuntimeError: No access to /dev/mem. Try running as root!
Sur ce même compte si je tape: sudo python test.py
Cela fonctionne parfaitement
Pouvez-vous me dire quelle est la raison pour laquelle lorsque un nouveau compte utilisateur est créé je n’ai pas toute arborescence comme dans le compte par défaut « pi »
Je souhaiterai qu’à partir su compte créé « pii » je puisse exécuter le script python en tapant uniquement cette commande: python test.py
Je pense qu’il s’agit d’un problème de droit, mais je n’arrive pas à trouver, malgré plusieurs tests infructueux.
Pouvez-vous m’aider?
Merci d’avance
ça se crée la première fois que tu te loggues avec. à noter qu’il n aura pas de sudo tant que tu ne l’auras pas rajouter ds /etc/sudoers (en dupliquant /etc/sudoers.d/010_pi-nopasswd en /etc/sudoers.d/010_toto-nopasswd puis en faisant un chmod +w dessus et en changeant ds le fichier pi par ton nouveau user et apres tu supprime les droit d ecriture ( chmod -w … ) pourquoi faire simple quand on peut faire compliqué !
pour le problème de droit il doit falloir ajouter ton utilisateur au groupe kmem et peut être changer les droits ( écriture sur /dev/mem pour le groupe)
la solution du groupe est moins laxiste que de changer les droits utilisateurs de /dev/kmem
pour ces histoires de droit je ne suis jamais sur a 100% mais dans le pire des cas tu peux toujours remettre les droits d origine et virer le user du group
le plus simple se serait de donner a ton utilisateur pii les mêmes droits sur les groups que ceux de pi.
pour faire ça, en se logguant sous pi, ds un terminal tu tapes la commande :
groups
tu auras la liste de tous les groupes auquel appartient pi
il ne te restera plus qu’a faire appartenir pii à ces groups :
sudo adduser pii nom_groupe
ou nom_groupe est un des group issu de la commande groups ( à faire bien sur pour chaque groupe issu de la commande groups)
je ne sais pas si rajouter pii dans le group pi suffirait !!!
j’avais zappé je pensais que le adduser pour la création du user faisait déja ce job ! on en apprend tous les jours ! ,-)
PS : j ai rien trouvé pour une duplication complète de user mais la solution d’ajouter les droits devrait solutionner ton problème.
pour Nabla
RuntimeError: No access to /dev/mem. Try running as root! je me goure peut être mais ce message a l’air de criser sur /dev/mem qui a des droit en lecture/ecriture que pour root et lecture pour kmem d’ou l’idée que c’est le user pii qui a ps les droits nécessaires ! mais ces trucs de droits c’est toujours une galère lol !