Bei der Fehlermeldung "Can't open display: …" sind zwei Dinge zu beachten: (1) muß eine gültige Authorisierung zur Benutzung des verantwortlichen X-Servers vorliegen und (2) muß ein gültiges display angegeben werden.
Der Schlüssel für den Zugriff auf den X-Server liegt in der Datei .Xauthority des Benutzers, der den Server startet.
Der Standardweg (für dauerhafte Zugriffserlaubnis) ist die Extraktion des Zugriffsschlüssels aus der .Xauthority-Datei und das Hinzufügen zur eigenen:
xauth extract schluessel_datei $DISPLAY
;
xauth merge schluessel_datei
.
(Der Benutzer root könnte auch die gesamte .Xauthority-Datei übernehmen, und in seinem Heimatverzeichnis ablegen, wenn es nur einen weiteren Benutzer auf dem System gibt, dessen X-server er sich bedienen möchte.)
Außerdem muß das "display" angegeben werden (da ein
X-Server mehrere solcher displays (und
screens) verwalten kann), z.B. durch Setzen der
Umgebungsvariable in des entsprechenden Bernutzers shell
(von der aus die Anwendung gestartet werden soll) mit:export
DISPLAY=:0.0
Für bash-Benutzer kann diese
Anweisung dauerhaft in der ~/bashrc-Datei hinterlegt
werden – so wird die Umgebungsvariable automatisch beim Starten von
bash gesetzt.
Achtung: Eine schnellere Variante, die als "böse", weil veraltet und gefährlich, gilt, ist:
xhost +local
.