Comment lancer une application GUI en tant que root lors de la connexion de l'utilisateur?

12

Je voudrais lancer une application Gnome avec des privilèges root à la connexion.

J'ai essayé d'ajouter un script à lancer en utilisant update-rc.d myscript.sh defaults.

Il semble que l'application se lance, mais elle n'est plus là au moment où le gnome gui arrive.

Comment puis je faire ça?

benlad
la source

Réponses:

12

Exécuter des choses graphiques en tant que root est une mauvaise idée pour la sécurité, mais je suppose que vous le savez et que vous avez épuisé toutes les autres méthodes. Vous devez faire deux choses:

  1. Autorisez votre utilisateur à exécuter la commande via sudosans mot de passe en modifiant /etc/sudoers. Vous pouvez trouver une brève explication ici mais vous cherchez quelque chose comme ceci:

    username ALL=(ALL:ALL) NOPASSWD:/path/to/command 
    

    Remplacez évidemment le usernameet /path/to/commandpar de vraies valeurs, collez-le dedans puis essayez sudo -k /path/to/command(le -ksignifie simplement qu'il vous demandera votre mot de passe s'il ne sait pas mieux - il ne vous demandera pas si votre modification sudoers était correcte).

  2. Lancez automatiquement votre application via les "Applications de démarrage" standard, en appelant sudo /path/to/command

Et c'est tout.

Oli
la source
Si mis le nom d'utilisateur ALL = (ALL: ALL) NOPASSWD: / path / to / command dans / etc / sudoers, sudo échoue avec une erreur d'analyse. ALL = NOPASSWD: / path / to / command semble analyser, mais me demande le mot de passe lorsque j'exécute la commande.
benlad
1
Il semble donc que "username ALL = (ALL) NOPASSWD: / path / to / command" doit être le dernier dans le fichier sudoers et également "username ALL = (ALL: ALL) NOPASSWD: / path / to / command" ne fonctionne pas avec Ubuntu 8.04.
benlad
5

Vous pouvez essayer de créer un lanceur d'application personnalisé ( .desktopfichier) avec gksudo <command>la commande as à exécuter et ajouter ce lanceur aux paramètres de démarrage automatique ( System - Settings - Autostartou Startup). Une autre façon serait de placer le .desktopfichier directement dans ~/.config/autostartou (pour tous les utilisateurs) /etc/xdg/autostart.

tohuwawohu
la source