Raspberry Pi 4 perd les droits d'admin (résolu ?)

Bonjour tout le monde,

J’ai beaucoup de RPi4 utilisés dans les bornes Kiosk, avec une image basée sur Bullseye Lite (32bits). J’utilise Python pour les contrôler et ils affichent une application avec Chromium. Un paquet Debian est installé avec quelques droits spéciaux pour l’utilisateur principal (j’ai désactivé le mot de passe de root). J’ai parfois un problème: l’utilisateur principal perd les droits d’admin, le fichier « /etc/sudoers » devient vide et un backup « /etc/sudoers.bak » créé automatiquement. Je peux rien faire avec cet utilisateur, la seule commande marche est « su - ». A partir de là, j’ai essayé de restaurer le fichier « /etc/sudoers » avec son backup mais sans succès, le système dit toujours que l’utilisateur n’est pas trouvé sur sudoers. Je dois donc réinstaller manuellement le paquet Debian avec dpkg (apt-get passe pas, il trouve le paquet mais il dit que ce n’est pas installable) pour restaurer tous les droits nécessaires et le système refonctionne. J’ai trouvé donc la solution mais je voudrais savoir la raison, je ne trouve pas d’informations concernant ce sujet.

Je vous remercie beaucoup pour vos aides!

J’ai trouvé peut-être le problème: le fichier /etc/sudoers est trouvé dans le paquet Debian, du coup pour chaque MAJ de ce paquet le système essaie de remplacer ce dernier (c’est pourquoi il y a le fichier .bak ^^). C’est OK en temps normal mais cela provoque éventuellement un problème car Linux ne veut pas qu’on touche directement ce fichier mais passer par visudo. Et vu qu’on ne change pas les droits chaque fois, inutile de mettre ce fichier dans le paquet. Problème résolu pour moi mais peut-être c’est utile pour les gens qui cherchent ^^

Ton problème semble lier a un comportement que tu fais qui cause le problème. Je ne sais pas quoi tu fais exactement, ton explication n’est pas très précise. Alors j’essai d’interpréter le tout avec tes deux messages.

Si tu ré-install un package de Debian, il va assurément remettre des configurations de base, surtout si tu fait un désinstall/réinstall. Tout les apps marche de ce principe, si les fichiers sont dans le package (et non créé après une exécution).

Avec Raspbian, le OS qu’ont prend pour acquis, si tu ne le défini pas dans ton message, n’as pas besoin de modification du sudo, ni la désactivation du root; faire ces choses peut en effet résulter des problèmes.

Le root sur Raspberry est déjà sécurisé (de mes connaissances) et n’est JAMAIS requis pour utiliser le Raspberry/Raspbian. Seul la commande « sudo » permet de faire ce que le root aurais besoin.

Par chance, le Raspbian vient avec une config pratique du mode sudo, comme le fait de ne pas demander le mot de passe en tout temps, ce qui fait que vos actions passe aussi bien que si vous seriez en « root ».

Alors inutile de modifier ces choses, sauf si ont ajoute un utilisateur qui peut lui aussi agir comme un root via le sudo, et la, c’est seulement le fichier de sudoer à éditer.

Faux… dans mes versions de Debian, car j’y vais directement avec nano en mode sudo. (et Galliumos sur un Chromebook Hacké).

Le package ne semble pas être mis à jours souvent, et dans les fois que je l’ai vu passer, aucun problème, les paramètres sont gardé.

Alors j’en conclu que ton problème semble venir de toi, ou d’une version du OS ayant lui même des problèmes , ou … une carte SD un peut en fin de vie ? (J’ai en tête un mode Read-Only ou un mode de récupération qui marche plus ou moins bien).

SI c’est Ubuntu, de mon point de vu, c’est normal, c’est un OS de m… (Gallium OS est pire, mais pas l’choix pour le Hack) Un OS « stock », c’est le best.

1 « J'aime »

Merci pour ton retour. C’est vrai que le problème est lié à un comportement que je fais, je l’avoue ^^ Pour info c’est du Raspbian (Bullseye Lite 32bits comme j’ai précisé au début). La seule chose que je peux utiliser pour expliquer cette situation, c’est qu’il y a un fichier sudoers dans le paquet Debian et il semble que le problème apparaisse après une MAJ de ce paquet (dans le script postinst de ce paquet, il y a une commande de copie de ce fichier pour remplacer le fichier dans /etc/sudoers). Je suis d’accord que dans la plupart de cas, cela pose pas de problème (vu que les RPi ont pu faire quelques MAJ avant d’être pété, et le fichier est déjà là dès la création de la première version), mais je pense que lors de la copie du fichier sudoers (pendant la MAJ du paquet Debian), s’il y a un autre processus utilisant ce fichier, ça peut poser éventuellement de problème. Je n’ai pas ce problème très souvent sur des centaines RPi4, dans la plupart des cas ils peuvent réaliser la MAJ du paquet sans problème. Après vu que les droits d’utilisateur principal ne changent pas entre les versions, pas de raison de laisser ce fichier dans le paquet (je l’ai mis dans le paquet car qu’on a fait la même chose sur le paquet pour RPi3 qui est en mode lecteur seule). Je vire donc le fichier dans le paquet et j’espère que le problème soit résolu

Théoriquement, oui, mais je ne voi pas qui utiliserais ce fichier, mis a part le système.

Je suis perdu, tu n’as JAMAIS à mettre le fichier dans un package, ni a l’éditer avec les distributions Raspbian, alors n’y touche pas, et pense s’y même pas.


Je tente de comprendre ce que tu fais et tout m’indique que tu fais de quoi qu’y es inutile et qui cause ton problème.

Le fichier Sudoer n’a pas besoin d’être éditer, ni à êtres sauvegardé, car il est généré par le système et par défaut le compte principal est correctement ajouté, sans plus.

Si tu dois ajouter un autre utilisateur, la oui, en effet , tu peux le faire manuellement, mais encore la, les MaJ vont en tenir compte et ne JAMAIS créer de .bak pour une MaJ. La seul raison que le système ferais ça, c’est si tu force une réinstallation du « sudo ». Alors je t’invite a ne plus jouer avec ce fichiers et à ne plus tenter de le mettre à jours (forcé).

1 « J'aime »

Je suis totalement d’accord que le fichier sudoers ne doit pas être dans le package (c’est le système qui a créé le .bak automatiquement quand il voulait remplacer le fichier original), notamment quand il est figé chaque fois, de plus je ne comprends pas pourquoi on l’a mis dans le paquet pour RPi3, j’ai justement copié ça sur mon paquet pour RPi4 sur lequel j’ai travaillé (il y a 1 an, quand j’ai commencé à travailler avec les matériels et Linux). Je sais maintenant que si on veut ajouter ou modifier quelque chose dans les droits, on peut créer un fichier correspondant au paquet dans le répertoire /etc/sudoers.d (je ne savais même pas l’existence de ce répertoire avant de chercher sur ce sujet ^^), c’est le bon comportement. Merci encore pour tes partages, admettons que j’étais un débutant il y a un an, et j’ai maintenant déjà plus d’expériences, de plus j’apprends tous les jours pour améliorer des choses ^^