web-dev-qa-db-fra.com

Impossible d'ouvrir Gedit en tant que root

Quand j'exécute Sudo gedit /path/to/some/random/file j'obtiens l'erreur suivante

** (gedit:6262): WARNING **: Command line `dbus-launch --autolaunch=7f8731869e1c690b8205727e0000000a --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.  

Utiliser gksudo n'aide pas non plus ce qui retourne

Cannot open display: 
Run 'gedit --help' to see a full list of available command line options.  

Toute aide les gars. J'ai besoin de cette capacité pour ouvrir des fichiers dans Gedit en tant que root.
J'ai trouvé cette question avec la même erreur mais aucune solution Impossible de lancer gedit avec Sudo


EDIT
J'ai trouvé cet article dans Forums Ubunt .
Voici les instructions:

  1. echo $ DISPLAY # vous aurez besoin de cette valeur 3 lignes ci-dessous
  2. Sudo -i # ou "su -" sur les slackwares plus anciens
  3. xauth merge ~ alien/.Xauthority # utilisez votre propre nom d'utilisateur ici au lieu de "alien"
  4. export DISPLAY =: 0.0 # utilisez la valeur de DISPLAY que vous avez vue 3 lignes auparavant

En venant à la commande n ° 3, j'ai eu cette erreur
xauth: file /root/.Xauthority does not exist

Peut-être que cette nouvelle information peut nous éclairer davantage.

13
Parto

Enfin avoir trouvé une réponse. De cette question Impossible de se connecter à X Server lors de l'exécution de l'application avec Sudo et surtout cette question Erreur lors de la tentative d'exécution d'une application avec Sudo ou gksudo .

J'ai ajouté la ligne Defaults env_keep+="DISPLAY" à la fin du fichier visudo à /etc/sudoers.

Oui, mon Sudo gedit est de retour!

EDIT

Vous avez à nouveau la même erreur pendant un moment.

A fait quelques recherches, en particulier cette réponse https://askubuntu.com/a/137584/163331 et réalisé que je devais ajouter plus d'options au fichier visudo. Au lieu de Defaults env_keep+="DISPLAY", j'ai utilisé cette ligne:

Defaults env_keep="XAUTHORIZATION XAUTHORITY TZ PS2 PS1 PATH LS_COLORS KRB5CCNAME HOSTNAME HOME DISPLAY COLORS"
12
Parto

L'exécution d'applications d'interface graphique en tant qu'utilisateur root peut entraîner une corruption des fichiers, en particulier si l'application d'interface graphique est un éditeur de texte. De plus, gksu et gksudo ne fonctionnent pas pour démarrer des applications graphiques en tant que root dans Wayland sous Ubuntu 17.10: Pourquoi gksu/gksudo ne fonctionne-t-il pas avec Wayland? et le paquetage gksu a été supprimé de la Les référentiels Ubuntu par défaut dans Ubuntu 18.04 et versions ultérieures.

Nautilus Admin ( nautilus-admin ) est une simple extension Python pour le gestionnaire de fichiers Nautilus qui ajoute des actions administratives à droite. menu de clic:

  • Ouvrir en tant qu'administrateur: ouvre un dossier dans une nouvelle fenêtre Nautilus s'exécutant avec des privilèges d'administrateur (root).
  • Editer en tant qu'administrateur: ouvre un fichier dans une fenêtre Gedit s'exécutant avec des privilèges d'administrateur (root).

Pour installer Nautilus Admin dans toutes les versions actuellement prises en charge d’Ubuntu, ouvrez le terminal et tapez:

Sudo apt install nautilus-admin  

Bien qu'il existe des commandes pour exécuter des applications graphiques en tant que root, il est vivement recommandé d'utiliser l'éditeur de texte nano, qui est normalement exécuté à partir du terminal, pour l'édition de fichiers en tant que root. L'éditeur de texte nano est inclus dans l'installation par défaut d'Ubuntu.

Nano est très facile à utiliser. Les instructions d'utilisation de l'éditeur nano se trouvent toujours au bas de chaque page. Les deux seuls raccourcis clavier nano que vous devez connaître concernent WriteOut et Exit. Appuyez sur la combinaison de clavier Ctrl+O et après cette presse Enter enregistrer le fichier en cours d’édition. Appuyez sur la combinaison de clavier Ctrl+X sortir nano.

Si vous prenez l'habitude d'éditer les fichiers en tant qu'utilisateur root correctement, vous réduirez le risque de commettre des erreurs qui peuvent prendre beaucoup de temps à corriger.

9
karel

Dans Ubuntu 17.10, au moins, vous pouvez le faire:

gedit admin:///path/to/some/random/file

Vous serez invité à entrer votre mot de passe, puis le fichier sera ouvert pour modification en tant que root.

3
Gunnar Hjalmarsson

Pour gedit, essayez ceci:

Sudo -H env DISPLAY=:0 gedit
2
kiri

J'ai juste eu le même problème. J'utilise Debian Jessie et pour démarrer gedit en tant que root, cette ligne fonctionnait enfin:

Sudo -H gedit
0
Paul Free

J'essaie de résumer toutes les informations dans les autres réponses sur cette page:

Wayland:

La seule option consiste à utiliser nanoou vi/vim

Xorg:

essaye ça

Sudo -H env DISPLAY=:0 gedit

si cela fonctionne, cela signifie probablement que vous devez ajouter une option aux fichiers de configuration de Sudo.

Sudo visudo

Essayez d'ajouter cette ligne à la fin

Defaults env_keep="XAUTHORIZATION XAUTHORITY TZ PS2 PS1 PATH LS_COLORS KRB5CCNAME HOSTNAME HOME DISPLAY COLORS"`
0
Postadelmaga