Lorsque j'exécute un logiciel à l'aide de la commande Sudo
, il affiche une erreur telle que
cannot connect to X server
Par exemple si j'exécute la commande suivante:
$ Sudo gedit /etc/profile
J'obtiens un ordre suivant
(gedit:6758): WARNING **: Command line `dbus-launch --autolaunch=84b871d735f31ffe014dc9ba00000009 --binary-syntax --close-stderr'
exited with non-zero exit status 1:
Autolaunch error: X11 initialization failed.
Cannot open display:
Run 'gedit --help' to see a full list of available command line options.
Ou si j'exécute super-boot-manager
j'obtiens l'erreur suivante
buc: cannot connect to X server
S'il vous plaît aider.
Vous devez autoriser l'utilisateur root à accéder au serveur X:
xhost local:root
Et pointez la commande vers la droite DISPLAY
name__:
Sudo DISPLAY=$DISPLAY gedit /etc/profile
Enfin, le problème est résolu. Je viens d'ajouter la ligne:
Valeurs par défaut env_keep = "DISPLAY XAUTHORITY"
à la fin de visudo
.
Pour ce faire, vous devez courir
Sudo visudo
il ouvrira le fichier puis ajoutera la ligne ci-dessus à la fin.
Merci à tous, spécialement @Thor pour son aide précieuse
Compléter la réponse de @ Thor:
Exécutez xhost local:root
avant Sudo gedit
. Pour rendre ce permanent, ajoutez la ligne
xhost local:root
dans le fichier ~/.xinitrc 1. Créez le fichier s'il n'existe pas.