J'utilise Trisquel GNU / Linux-Libre fourni avec l' environnement de bureau Gnome3 Flashback .
Je sais que je peux exécuter l'application GUI en tant que root par sudo& gksudomais je veux savoir que comment exécuter les applications GUI en tant que root à l'aide de pkexec?
Lorsque j'essaie d'exécuter gedit(ou toute autre application comme:) d' nautilusici pkexec geditlà, il demande un mot de passe pour l'authentification: -

Après avoir entré le mot de passe, il quitte avec erreur: -
$ pkexec gedit
error: XDG_RUNTIME_DIR not set in the environment.
(gedit:6135): Gtk-WARNING **: cannot open display:
Il semble donc que quelque chose ne va pas avec l'environnement d'affichage.
J'ai aussi essayé DISPLAY=:0 pkexec geditmais ça ne marche pas.
Les informations suivantes sont disponibles auprès de man pkexec: -
L'environnement que PROGRAM exécutera, sera défini sur un environnement minimal connu et sûr afin d'éviter d'injecter du code via LD_LIBRARY_PATH ou des mécanismes similaires. De plus, la variable d'environnement PKEXEC_UID est définie sur l'ID utilisateur du processus appelant pkexec. Par conséquent, pkexec ne vous permettra pas d'exécuter des applications X11 en tant qu'autre utilisateur car les variables d'environnement $ DISPLAY et $ XAUTHORITY ne sont pas définies. Ces deux variables seront conservées si l'annotation org.freedesktop.policykit.exec.allow_gui sur une action est définie sur une valeur non vide; ceci est cependant découragé et ne devrait être utilisé que pour les programmes existants.
Maintenant, je ne sais pas quoi faire pour y parvenir.
Ainsi, aidez-moi à découvrir comment exécuter des applications GUI en tant que root au moyen de pkexec. Ou est-ce possible ou non?
BTW, inspiré par la gparted-pkexeccommande qui fonctionne bien. Comment gpartedutiliser pkexec?