Wie in Ticket 589 berichtet, kann dies aufgrund von Fehlern in den Shell-Init-Skripts passieren.
Wie in Ticket 685 berichtet, kann dies passieren, wenn Sie / usr / bin / mktemp durch eine inkompatible Version ersetzen (zB: GNU mktemp).
Ich habe Probleme mit XQuartz bei Mavericks. Nachdem ich zum Apple-Genie-Support gegangen bin, um meine Batterie zu wechseln (bei dem der Genie-Typ die Stromzufuhr zwang, als ich eine X11-Verbindung geöffnet hatte), habe ich folgenden Absturz, wenn ich versuche, XQuartz zu öffnen:
*** The application X11 could not be opened. *** An error occurred while starting the X11 server: "Cannot establish any listening sockets - Make sure an X server isn't already running" Click Quit to quit X11. Click Report to see more details or send a report to Apple.
Ich habe versucht, eine saubere Installation des XQuartz vorzunehmen, indem ich Folgendes mache:
launchctl unload /Library/LaunchAgents/org.macosforge.xquartz.startx.plist sudo launchctl unload /Library/LaunchDaemons/org.macosforge.xquartz.privileged_startx.plist sudo rm -rf /opt/X11* /Library/Launch*/org.macosforge.xquartz.* /Applications/Utilities/XQuartz.app /etc/*paths.d/*XQuartz sudo pkgutil —forget org.macosforge.xquartz.pkg
Und dann XQuartz neueste Version installiert (im aktuellen Datum ist es diese ). Abmelden, Einloggen, kein Erfolg.
Ich habe auch versucht, /private/tmp/.X*
Dateien, /private/tmp/launch-*
Ordner, die xquartz-Anzeigen enthielten, und auch die .Xauthority
Datei im $HOME
Verzeichnis zu löschen .
Da dies nicht funktionierte, hatte ich Schwierigkeiten, den port xorg-server
X11 zu verwenden, sudo port install xorg-server
nachdem XQuartz deinstalliert wurde. Ich musste es auch aktiv machen launchctl load -w /Library/LaunchAgents/org.macports.startx.plist
( hier gefunden ) und auch verwendet sudo port -f deactivate xinit && sudo port activate xinit
( hier gefunden ).
Leider hat es auch nicht funktioniert (Ich habe auf dem Server einen Fehler erhalten, der besagt, dass er nicht berechtigt war, $ DISPLAY auf meinem lokalen Rechner zu öffnen).
Andere Schritte in Superuser sprechen über das ähnliche Problem:
launchctl load -w
einmal wiederholen, indem sudo
ich auf den Tipp achte, den ich nicht kannte.Ich habe jede mögliche Kombination ausprobiert und erschöpft im Internet nach Möglichkeiten gesucht. Ich bin tot im Wasser, Leute, irgendwelche Ideen?
Wie in Ticket 589 berichtet, kann dies aufgrund von Fehlern in den Shell-Init-Skripts passieren.
Wie in Ticket 685 berichtet, kann dies passieren, wenn Sie / usr / bin / mktemp durch eine inkompatible Version ersetzen (zB: GNU mktemp).
Heute hatte ich Zeit, uns das noch einmal genauer anzusehen, und es ist lustig, dass ich nicht einmal das Original mktemp auf /usr/bin/mktemp
path verfügbar machen musste (Sie sollten dies nicht tun, dies dient nur der Veranschaulichung der vorherigen Diskussion über die mktemp
binär hatte nichts mit dem problem zu tun):
`--> ls /usr/bin/mktemp ls: cannot access /usr/bin/mktemp: No such file or directory
Mein Problem war wahrscheinlich die Installation von port
xquartz zusammen mit dem ursprünglichen xquartz. Ich habe eine vollständige Deinstallation auf beiden Clients durchgeführt:
sudo port uninstall xinit xorg-server
Und für das "Original" xquartz (Infos hier, "Uninstall (Snow Leopard or Later)"):
launchctl unload /Library/LaunchAgents/org.macosforge.xquartz.startx.plist sudo launchctl unload /Library/LaunchDaemons/org.macosforge.xquartz.privileged_startx.plist sudo rm -rf /opt/X11* /Library/Launch*/org.macosforge.xquartz.* /Applications/Utilities/XQuartz.app /etc/*paths.d/*XQuartz sudo pkgutil --forget org.macosforge.xquartz.pkg
Einige davon können fehlschlagen, da die Deinstallation des Ports diese deaktivieren kann. Sie können diese Fehler ignorieren.
Das ist wichtig. Bei meinen vorherigen Versuchen war ich wahrscheinlich nicht dabei, weil ich meinen Account nicht neu starten würde. Dies ist anscheinend erforderlich, um das launchctl zu aktivieren (ich bin hier vielleicht falsch, aber trotzdem ist es wichtig, dass Sie sich abmelden und Melden Sie sich bei Ihrem Konto an, damit die Installationsänderungen wirksam werden.
Installieren Sie in der sauberen Umgebung jetzt XQuartz, melden Sie sich ab, loggen Sie sich ein und es sollte funktionieren. Wenn nicht, werfen Sie einen Blick in die folgenden Debug-Anweisungen von XQuartz und suchen Sie nach "ssh X forwarding debugging":
[1] local $ echo $DISPLAY /tmp/launch-Bh0fLm/:0 [2] local $ grep DISPLAY ~/.*rc ~/.login ~/.*profile ~/.MacOSX/environment.plist 2>/dev/null [3] local $ grep -r DISPLAY /opt/local/etc /sw/etc /etc 2>/dev/null [4] local $ ssh -Y remote Warning: No xauth data; using fake authentication data for X11 forwarding. [5] remote $ echo $DISPLAY localhost:10.0 [6] remote $ grep X11 /etc/ssh/sshd_config ~/.ssh/* X11Forwarding yes X11DisplayOffset 10
Mein Problem begann in der ersten Zeile, in der die DISPLAY
Variable leer war. Ich würde die Befehle 2 und 3 ausführen, und daran gab es nichts zu ändern. Ich war neu da, das Problem war etwas mit dem launchtcl
und hatte nichts mit den Schritten 4 und danach zu tun. Ihr Fall könnte jedoch anders sein. Befolgen Sie diese Anweisungen, um zu prüfen, was Ihr Problem sein könnte.