Bonjour,
Je sais que le sujet a été traité en long en large et en travers, sur tout l'internet, mais voilà je n'y arrive pas..
Je souhaite avoir au lancement de l'interface graphique un script lancé (me permettant de couper le fonctionnement d'une de mes carte graphique)

Le script est le suivant :
cd /home/MOI/acpi_call/;
sudo insmod acpi_call.ko;
./test_off.sh;
J'ai créé un disable-ati.desktop que j'ai placé dans ~/.config/autostart avec comme ceci:
[Desktop Entry]
Type=Application
Exec=/home/MOI/.scripts/disable-ati.sh
Hidden=false
X-GNOME-Autostart-enabled=true
Name[en_US]=ati-disable
Name=ati-disable

la commande insmod nécessite d'être exécutée en mode root, j'ai donc mis dans mon /etc/sudoers

dans les alias :
## Commande pour lancer le script ATI
Cmnd_Alias ATI=/home/MOI/.scripts/disable-ati.sh
et en dessous de root ALL=(ALL):
MOI   ALL=(ALL)       NOPASSWD:ATI
cela ne fonctionne pas.. j'ai cherché à donner les droits root pour le script entier pour éviter de donner ces droits pour la commande en général, par souci de sécurité mais cela semble ne pas fonctionner, j'ai donc essayé en donnant les droits à mon user sur cette commande
ALL MOI=(ALL) NOPASSWD:/sbin/insmod
Mais à mon grand regret cela n'a toujours pas fonctionné..

J'ai essayé de mettre ensuite simplement le lancement de mon script dans /etc/rc.local (même s'il n'est pas lancé à chaque démarrage de session visiblement) et ici aussi il ne fonctionne pas..
edit:en supprimant le "sudo" de mon script cela fonctionne correctement 🙂

Une idée ?

Merci
Cela me semble bien complexe alors qu'il existe le fichier /etc/rc5.d/S99rc-local qui est fait pour cela.
Il executera la commande à la fin de l'initialisation du mode 5 soit le mode graphique.

Après j'ai pas testé mais je pense que ça marchera.

Au passage pour un script qui s'effectue sans qu'on sache forcément où on est je préfére écrire le chemin de l'executable "en dur", par exemple : /home/MOI/acpi_call/test_off.sh plutôt que ./test_off.sh
merci je vais regarder 😉
alors en fait le /etc/rc.local semble être linké au /etc/rc5.d/S99rc-local car ma commande y était déjà présente, cela fonctionne maintenant, j'ai simplement supprimé le "sudo" devant insmod que j'avais oublié, c'était ça à mon avis.. Merci en tout cas
D'une façon générale le lancement du système est effectué par root, et cela comprend notamment tous les services et scripts dans les répertoires rcX.d, ainsi que rc.local. Inutile donc d'utiliser sudo.
en effet, merci pour ces précisions, je suis un peu dégoûté d'avoir fait tout cela pour ça, cela m'aura au moins rafraîchi la mémoire pour l'utilisation de sudoers.. dommage que cela n'ai pas marché..