Une toute nouvelle installation de Debian 6.0.3 sous Gnome 2.30.2. Dans un terminal root, chaque fois que j'essaye d'ouvrir quelque chose lié à Gnome, j'obtiens cette erreur:
unable to open display ":0.0"
Parfois, cela est préfixé par:
No protocol specified
J'ai ajouté mon nom d'hôte à xhost
, et mis xhost +[myhostname]
dans les racines bashrc
, mais cela échoue lorsque j'ouvre le terminal racine. Aidez-moi?
EDIT: La seule façon de faire en sorte que cela fonctionne consiste à désactiver complètement le contrôle d'accès, mais je sais qu'il doit y avoir une meilleure solution.
Réponses:
"
No protocol specified
" signifie généralement que l'accès à l'écran X11 vous a été refusé. Il y a plusieurs façons de faire ce que vous voulez:Pointez
$XAUTHORITY
sur votre fichier Xauthority. Parfois, il se trouve~/.Xauthority
dans votre répertoire personnel; avec GNOME, il s’agit d’un fichier temporaire situé au cœur de/var
. Les méthodes suivantes fonctionneront dans les deux cas:Il vous suffit de copier la variable d’environnement sur votre terminal racine à l’aide de
echo $XAUTHORITY
etexport XAUTHORITY=...
.Faites
su
une copie de Xauthority en ajoutantpam_xauth
à sa configuration PAM.Utilisez
sudo -s
-le et configurez-le pour avoir "XAUTHORITY
" dans sonenv_keep
option.Utilisez
gksu gnome-terminal
pour lancer un terminal root.Ajoutez
root
aux utilisateurs autorisés, en exécutant àxhost +si:localuser:root
partir d'un terminal normal. Cela rendra Xauthority inutile.N'ajoutez pas le nom d'hôte de l'ordinateur à
xhost
, car ceci n'est pas fiable (problèmes de rDNS), ne fonctionnera pas avec les connexions locales (uniquement TCP) et n'est pas sécurisé (permet à tout utilisateur de se connecter à votre écran).la source