Dwa hosty, oba z systemem RHEL6.2. Jeden (hostA) ma zainstalowany X, a drugi (hostB) nie. Zainstalowanie X na drugim hoście nie jest opcją. Uruchomienie „echo $ DISPLAY” na hoście A zwraca „: 10.0”.
Na hoście A mam: - xhost +
Na hoście B mam: - eksportuj DISPLAY = hostA: 10,0
Uruchamianie „ps -ef | grep nolisten 'na hostA pokazuje: me 2400 2398 3 10:47? 00:00:01 Xvnc: 10 -geometria 1680x1050 -głębokość 24 -rfbauth /home/me/.vnc/sesman_me_passwd -bs -ac -nolisten tcp -localhost -dpi 96
Jak usunąć „-nolisten tcp -localhost” usunąć Xvnc?
Postępowałem zgodnie z zaleceniami Karmic Koala (Ubuntu): włączaj zdalnych klientów X przez TCP bez powodzenia.
Zakładam, że chcesz mieć program działający na hoście B, aby wyświetlać swój interfejs użytkownika na hoście A, który najwyraźniej działa na Xvnc (co ponownie oznacza, że zobaczysz rzeczywisty interfejs użytkownika na kliencie vnc, być może działającym gdzie indziej).
Można użyć ssh X11 forwarding na liniach co ewwhite nie zauważył . Jednak musisz połączyć się z hosta A (który działa w X) do hosta B (który uruchamia aplikację, która wymaga X).
ssh -Y user@hostB
Innymi słowy, uruchom komendę na hoście A, a na nowo podłączonej sesji ssh uruchom aplikację.Ponadto nie sądzę, abyś musiał włączyć nasłuchiwanie TCP, jeśli używasz przekazywania ssh X11. Demon ssh na hoście B używałby gniazda unix do rozmowy z X działającym lokalnie.
źródło