Próbuję uruchomić aplikację (ParaView) w trybie klient-serwer, a jej renderowanie grafiki odbywa się na zdalnym (serwerze) końcu. Używam SSH jako sposobu na połączenie się z serwerem, ale nie chcę używać X-forwardingu, ponieważ spowalnia proces renderowania.
Jednak za każdym razem, gdy próbuję otworzyć aplikację na ekranie serwera, pojawia się komunikat o błędzie:
Invalid MIT-MAGIC-COOKIE-1 keyError: cannot open display ':0'
Przeprowadziłem szeroko zakrojone badania w tej sprawie i już wypróbowałem następującą sugerowaną procedurę bezskutecznie:
- Użyłem „listy xauth”, aby uzyskać wartość MIT-MAGIC-COOKIE-1 dla wyświetlacza mojego lokalnego hosta.
- Zalogowany do zdalnego hosta przez ssh.
- Użyto „export DISPLAY =: 0” na zdalnym hoście.
- Na hoście zdalnym użyto opcji „xauth add”, aby zastąpić wartość pliku cookie wyświetlanego na hoście zdalnym wartością pliku lokalnego.
Jestem przekonany, że jest to poprawna procedura, ale po prostu nie przesyłam odpowiednich plików cookie do odpowiednich ekranów.
Ponownie chciałbym móc używać ssh do otwierania aplikacji na wyświetlaczu komputera zdalnego. Idealnie byłoby, gdyby cały proces był wykonywany za pomocą xauth zamiast xhost i po raz kolejny nie muszę korzystać z X-forwarding. Czego mi brakuje lub robię źle?
Odpowiedzi:
Wartość, której używasz,
DISPLAY
jest niepoprawna: jeśli nie chcesz używać przekazywania SSH X,DISPLAY
musisz wskazać adres IP swojego serwera X (pulpit, na którym chcesz wyświetlać programy). Na pilocie uruchomzastępując
desktop
lokalną nazwę hosta lub adres IP. Może być również konieczna zmiana konfiguracji serwera X, aby umożliwić zdalne połączenia IP.źródło
Próbować
przed uruchomieniem.
źródło
Ten działał dla mnie. Więc zostawiam tę odpowiedź tutaj.
źródło
Dla mnie błąd był następujący:
Grałem z .Xauthority, ale nic nie ukrywałem, tylko ukryłem część „MIT cookie”, a nie błąd xcb_connection. Ostatecznie działało to tylko przy użyciu @PSN answer (
export DISPLAY=:1.0
).fwiw, jestem na debianie 9.
źródło