Comment exécuter un programme GUI en tant qu'utilisateur différent (Debian)?

10

En utilisant un terminal, je peux changer l'utilisateur en cours d'exécution avec suet sudo- mais comment puis-je le faire en cliquant sur une icône / un raccourci sur le bureau / menu Démarrer?

Si je dois être root pour exécuter, on me demandera de toute façon, mais certains programmes, par exemple Krusader, NetBeanss'exécutent parfois sans accès root, mais vous ne pouvez pas accomplir ce que vous voulez.

Sous Windows, je clique simplement sur Maj et clique droit dessus et je suis invité à entrer mon utilisateur et son mot de passe. Je suppose qu'il existe également un moyen simple de le faire dans Debian. (En dehors des solutions de contournement comme la création de scripts tels que sudo xyz.)

Merci d'avance!

ipped
la source

Réponses:

6

Tout d'abord, n'utilisez pas sudoou ne sumodifiez pas les utilisateurs pour exécuter un processus graphique, ou vous risquez d'avoir des problèmes en fin de compte (le ~/.ICEauthoritychangement de propriétaire est un problème notable). À la place, créez un raccourci qui utilise la commande suivante:

gksu -u [user] command

gksu lance une invite graphique pour le mot de passe de l'utilisateur et, en entrant le mot de passe correct, lancez l'application comme spécifié par l'utilisateur.

Chris Down
la source
1
Qu'est-ce qui gksufait différemment sudopour que cela fonctionne mieux?
Joachim Breitner
2

ma propre solution implique ssh. quand je veux courir <command>sous un autre utilisateur <login>, je fais ceci:

ssh -CY <login>@0 <command>

oui, j'ai besoin d'un serveur ssh en place et je dois saisir l'autre mot de passe utilisateur ou avoir ma propre clé publique ~<login>/.ssh/authorized_keys2. et je ne peux pas fermer le terminal à partir duquel j'ai donné la commande.

mariotomo
la source