xauth erstellt keine .Xauthority-Datei

28

Wenn ich in ein kopfloses Linux Mint 17-System einsetze, erstellt es kein Update / keine .Xauthority-Datei.

Außerdem xauthbekomme ich beim Laufen die Antwort:

marty@N40L ~ $ xauth
xauth:  file /home/marty/.Xauthority does not exist
Using authority file /home/marty/.Xauthority
xauth>exit
marty@N40L ~ $ xauth
xauth:  file /home/marty/.Xauthority does not exist
Using authority file /home/marty/.Xauthority
xauth>

Die Datei wird nicht erstellt.

BEARBEITEN:

Wenn ich den Monitor anschließe und mich dann lokal anmelde, wird die Datei erstellt, aber wenn ich versuche, einen Eintrag hinzuzufügen (weil mein SSH dies nicht für mich tut):

marty@N40L ~ $ xauth list
N40L/unix:0  MIT-MAGIC-COOKIE-1  34eee3b15cdb281021502d40dfba1cf2
localhost.localdomain/unix:0  MIT-MAGIC-COOKIE-1  34eee3b15cdb281021502d40dfba1cf2
marty@N40L ~ $ ls -d .X*
-rw------- 1 marty marty 115 Sep  3 12:03 .Xauthority
marty@N40L ~ $ xauth generate $DISPLAY .
PuTTY X11 proxy: wrong authorisation protocol attemptedxauth: (argv):1:  unable to open display "localhost:10.0".

Übrigens netstat --listenzeigt a, dass der Port lauscht:

tcp 0 0 localhost:6010 *:* LISTEN

AGH, mehr Infos. Ich habe mich auf dem Server von der X-Sitzung abgemeldet und jetzt ist die .Xauthority-Datei verschwunden. Es scheint, dass die Datei NUR dort ist, wenn sie lokal angemeldet ist. Kann mir jemand sagen, warum oder wie ich das beheben kann?

NEUE ENTWICKLUNG:

Ich habe auf dem System einen neuen Benutzer namens "test" erstellt. Ich habe mich dann eingeloggt und ohne irgendwelche anderen Befehle lief xeyes. Welches hat funktioniert! Es ist also NUR der Benutzer "marty", der nicht weiterleiten kann. Wie kopiere ich die Einstellungen von Test zu Marty?

wkdmarty
quelle
Hast du ihm gesagt, dass er die Datei erstellen soll? ssh -XAktiviert die X11-Weiterleitung.
Grawity
Ja, ich verwende Putty unter Windows, Setup für die Weiterleitung (funktioniert beim Herstellen einer Verbindung mit einem anderen Mint-Server). Da die Datei jedoch nicht erstellt wurde, dachte ich, ich würde sie manuell hinzufügen, xauth erstellt sie auch nicht manuell.
wkdmarty
Local Xwindows erstellt die .Xauthority-Datei, Putty SSH-Sitzung jedoch nicht. Obwohl es zeigt, dass es auf die Verbindung lauscht.
wkdmarty

Antworten:

34

Nur um zu berichten, ich hatte ein ähnliches Problem. Aber in meinem Fall folge ich einfach diesen Schritten :

Befolgen Sie diese Schritte, um eine $HOME/.XauthorityDatei zu erstellen .

Melden Sie sich als Benutzer an und bestätigen Sie, dass Sie sich im Basisverzeichnis des Benutzers befinden.

# Rename the existing .Xauthority file by running the following command
mv .Xauthority old.Xauthority 

# xauth with complain unless ~/.Xauthority exists
touch ~/.Xauthority

# only this one key is needed for X11 over SSH 
xauth generate :0 . trusted 

# generate our own key, xauth requires 128 bit hex encoding
xauth add ${HOST}:0 . $(xxd -l 16 -p /dev/urandom)

# To view a listing of the .Xauthority file, enter the following 
xauth list 

Danach gibt es .Xauthorityseitdem keine Probleme mehr mit der Datei.

Dank und Dank an Srinivasan .

Tonne
quelle
1
in meinem Fall, ich hatte sonst eine Umgebungsvariable XAUTHORITY Zeigte irgendwo (ein Flüchtigkeitsfehler), dies [mit prefetch.net/blog/index.php/2011/11/01/... Thread ich in der Lage war , dies zu entdecken und lösen die Error. Mit strace xauthwies es auf den in der Variablen angegebenen falschen Pfad hin. Ich sollte auch hinzufügen, dass ich unter anderem Sperrfehler bekommen habe
Cybex
1
In meinem Fall musste ich nur die Schritte 1 bis 3 ausführen. Die Schritte 4 und 5 haben tatsächlich dazu geführt, dass es nicht funktionierte.
Richard Ayotte
Ich muss xauth generate :0 . trustednach jedem Befehl als useröffnen eine Anzeige machen root. Kann ich es reparieren?
Timo
xhost +hat geholfen, x-apps als zu öffnen root.
Timo
7
Schritt 3 gibt mir den Fehler:xauth: (argv):1: unable to open display ":0".
Simpleuser
4

Nur um ergänzen die hervorragende Tonne ‚s Antwort .

Ich hatte einmal genau das gleiche Problem, weil mein Homeverzeichnis zu 100% voll war. Beim Herstellen einer Verbindung wurde sshein leerer ~/.XauthorityEintrag erstellt, in den kein einzelner Eintrag geschrieben werden konnte (sodass xauth listimmer eine leere Ausgabe erstellt wurde).

Also schlage ich vor, man prüft immer den freien Speicherplatz (zB df -h:) und prüft das xauth generateund xauth addhat ja auch keinen Effekt gehabt ( xauth list).

Bass
quelle
1

Nachdem ich herausgefunden hatte, dass es nicht das System war, indem ich einen Testbenutzer hinzufügte (was x-Weiterleitung "out the box" war), dachte ich, ich würde anfangen, die .bash * -Startdateien zu kopieren, um den "kaputten" Benutzer zu virginisieren.

Keine der Dateien war anders, also habe ich als nächstes das .ssh-Verzeichnis des Benutzers gelöscht. Als ich mich einloggte, stöhnte es über "Server hat unseren Schlüssel abgelehnt", aber ich konnte mich mit Passwort einloggen. Einmal eingeloggt, konnte ich x perfekt weiterleiten.

Ich werde jetzt versuchen, den Schlüssel erneut einzurichten und zu prüfen, ob ich das auch zum Laufen bringen kann. Dann wird es wieder normal sein.

wkdmarty
quelle
1

Durch das Auslagern des .sshVerzeichnisses funktionierte die X-Weiterleitung für mich.

Während des Eliminierungsprozesses fand ich in ~ / .ssh eine Datei mit dem Namen "rc", die Folgendes enthielt:

echo "Wecome to $(hostname), $(whoami)"

Ich habe das nie erschaffen und habe keine Ahnung, woher es kommt. Entfernen sie das Problem behoben, und meine authorized_keys, known_hostsund Schlüsseldateien können alle intakt bleiben.

billq
quelle
1

Öffnen /etc/ssh/sshd_configund kommentieren Sie unter root-Berechtigungen die folgenden Zeilen, wenn sie kommentiert sind:

X11Forwarding ja

X11DisplayOffset 10

X11UseLocalhost ja

Dann abmelden und mit -Xflag in wieder einloggen ssh. Sie müssen die DISPLAYUmgebungsvariable nicht setzen oder entfernen .

Varsh
quelle
0

Ich bin auf dasselbe Problem auf zwei Servern gestoßen, die technisch gesehen Schwesterknoten waren. Schmerzen in meinem Schwanz, da ich nicht herausfinden konnte, was anders war. Es stellte sich heraus, dass das Verzeichnis / home voll war, sodass .Xauthority-Dateien nicht ordnungsgemäß ausgefüllt werden konnten. Sobald ich die Datei (en) gefunden habe, die zu viel Speicherplatz beanspruchen, und sie gelöscht habe, wurden neue .Xauthority-Dateien ordnungsgemäß erstellt.

Linux_User
quelle