Wariant A - Strzelanie do X okien na inny WYŚWIETLACZ:
Dopilnuj, aby Xserver na twoim laptopie zaczął nasłuchiwać połączeń tcp. Niestety X11-Networking jest domyślnie wyłączony w większości dystrybucji. Ponieważ Xserver jest uruchamiany przez menedżera ekranu (gdm, lightdm), należy go tam skonfigurować:
Niezależnie od tego, jakiego menedżera wyświetlania używasz, niektóre pliki konfiguracyjne w / etc / prawdopodobnie będą zawierać odpowiedzialny parametr XServer. Uruchom grep -r 'nolisten tcp' /etc/
na swoim laptopie, aby dowiedzieć się, który plik konfiguracyjny jest odpowiedzialny i usuń część, w której mówi -nolisten tcp
(nie całą linię, tylko ten parametr). Uruchom ponownie X na swoim laptopie.
Twój laptop powinien teraz mieć ekran działający na porcie tcp 6000 (spróbuj uruchomić nmap -p6000 Laptop
na komputerze stacjonarnym, jeśli port jest zgłaszany jako „otwarty”, zaszedłeś tak daleko).
Udostępnij swój wyświetlacz X komputerowi stacjonarnemu. X11 używa mechanizmu uwierzytelniania, aby przyznać dostęp do wyświetlacza. Musisz pozwolić komputerowi stacjonarnemu strzelać z systemu Windows na laptopa. Zwykle poprzez wymianę wyświetlanego pliku cookie.
Na początek wykonaj ten krok z rękami na swoim notebooku. Po otrzymaniu koncepcji DISPLAY
zmiennej i wszystkiego, możesz to zrobić poprzez ssh.
Szybko i brudno: Możesz uruchomić xhost +desktops.computers.ip.address
na swoim laptopie, aby przyznać X dostęp do komputera stacjonarnego. Pamiętaj, że każdy użytkownik komputera przenośnego może korzystać z laptopa X w ten sposób. Pamiętaj, że jest to wystarczające, tj. Do zainstalowania keyloggera na wyświetlaczu twojego laptopa. Tej metody należy używać tylko do testowania.
Prawidłowe i bezpieczne: uruchom xauth extract cookie-file :0
na swoim laptopie, aby wyeksportować tajny klucz dostępu do wyświetlacza do „pliku cookie”. Przenieś plik cookie na komputer stacjonarny. Uruchom xauth merge cookie-file
. Lub w jednym krótkim kroku (z komputera) ssh Laptop xauth extract - :0 |xauth merge -
Uwaga: jeśli Twój laptop i komputer współużytkują katalog domowy, tj. Za pośrednictwem systemu plików NFS, nie musisz wymieniać żadnych danych uwierzytelniających. Baza danych logowania to plik .Xauthority w katalogu domowym i może być współużytkowany przez różne komputery.
Uruchom program: w terminalu na komputerze stacjonarnym export DISPLAY=Your.Laptops.IP.Address:0
uruchom dowolny program X w tym samym terminalu. Powinien pojawić się na wyświetlaczu notebooków.
Wariant B - Korzystanie z SSH z niespodzianką.
SSH realizuje przekazywanie X11 poprzez przekazywanie w lokalnym gnieździe X11 (zwykle w Uniksowej Domenie Domeny) do lokalnego gniazda TCP na zdalnym komputerze, następnie negocjowanie wyświetlanego pliku cookie, a następnie ustawianie środowiska DISPLAY na zdalnym komputerze. W ten sposób cały ruch X11 jest szyfrowany w tunelu ssh. Normalnym przypadkiem użycia jest przekazanie lokalnego wyświetlacza do zdalnego komputera (co oznacza, że zdalne aplikacje mogą wyświetlać x okna lokalnie).
Zaletą używania ssh jest to, że nie trzeba przełączać X-Servera w tryb nasłuchiwania tcp (ponieważ używane jest gniazdo unix). A ssh obsługuje wymianę referencji.
- SSH do laptopa z komputera stacjonarnego (nie musisz jeszcze używać -X).
- Wpisz w zdalnej powłoce,
export DISPLAY=:0
co powoduje, że już uruchomiony ekran twojego notebooka jest dostępny dla powłoki otrzymanej przez ssh. Jeśli uruchomisz teraz dowolne polecenie X, pojawi się ono już na ekranie notebooka, ale nadal będzie działać na laptopie (wypróbuj je, aby było bezpieczne).
- Z tej powłoki ssh z powrotem na komputer stacjonarny, użyj -X tym razem. Masz teraz powłokę na komputerze, z którego pochodzi sesja ssh, ale tym razem z działającym X. Uruchom xeyes lub xcalc, aby ją przetestować.
echo $DISPLAY
pokazuje oznaczenie, Twój laptop X wyświetla teraz na komputerze stacjonarnym. Tj .: 10 lub: 11.
Możesz teraz zminimalizować terminal. Za każdym razem, gdy wprowadzisz export DISPLAY=:10
(zobacz, jaki masz numer) na komputerze stacjonarnym, każdy program uruchamiany później w tej samej powłoce pojawi się na ekranie notebooków.
Ten wariant jest łatwy, ale wolny, ponieważ cały ruch X11 jest przekazywany przez SSH.
Wariant C - Oryginalna koncepcja cienkiego klienta:
Możesz użyć laptopa, aby otworzyć sesję stacjonarną uruchomioną całkowicie na komputerze stacjonarnym.
Skonfiguruj menedżera wyświetlania na pulpicie, aby odpowiadał na transmisje XDMCP. Jak to zrobić, zależy od menedżera ekranu. Niektóre menedżery wyświetlania w ogóle tego nie obsługują, np. Slim. Obsługują go XDM, KDM, WDM, GDM.
Uruchom X-Server na swoim laptopie, który żąda menedżera wyświetlania z pulpitu. Albo zagnieżdżony X: Xephyr :1 -query desktop
lub Xephyr :1 -broadcast
Lub poprzez zamknięcie X-Server notebooka i wejście na terminal systemowysudo Xorg :0 -broadcast
Menedżer wyświetlania dopilnuje, aby poświadczenia były generowane i wymieniane, i wszystko. Gratulacje, teraz powinieneś zobaczyć okno logowania dostarczone przez komputer stacjonarny.
Możesz użyć przekierowania ssh X, aby osiągnąć swój cel. Jeśli jesteś w tej samej podsieci, to szybko się kończy.
Zainstaluj serwer i klient ssh na laptopie i komputerze stacjonarnym
Aby połączyć się z komputerem stacjonarnym, otwórz terminal na laptopie i wpisz następujące polecenie
I możesz uruchomić dowolne oprogramowanie za pomocą terminala, na przykład uruchamiając Firefoksa, po prostu wpisz
firefox
terminal.źródło
x2x
pakiet, możesz użyć jednej klawiatury i myszy na innym komputerze. np .:ssh -X user@host x2x -west -to :0
Przygotowanie
(robisz to tylko raz)
Na swoim komputerze zainstaluj serwer SSH
Z laptopa:
W terminalu masz wszystko, co uruchomisz, będzie na pulpicie, ale wyświetlane na laptopie. Jeśli chcesz zrobić to samo siedząc na pulpicie (i wysłać okna na laptopie), to kontynuuj.
Na terminalu biegniesz
To pokaże ci coś takiego:
Z pulpitu:
Otwórz terminal i uruchom
DISPLAY=:10.0 firefox
To powinno wysłać
firefox
okno na twoim laptopie, ale działającym na pulpicie. Upewnij się, że wprowadzona liczba (np.10.0
) Jest taka sama jak wecho
wynikuźródło
Chcesz użyć kombinacji SSH i screena, aby uzyskać pożądaną sytuację.
Na pulpicie zainstaluj ekran:
Stamtąd rozpocznij nową sesję ekranu:
i otwórz w nim firefox:
Używaj Firefoxa, ile chcesz na pulpicie, a następnie ssh do komputera z laptopa:
Wpisz następujące polecenie, aby zobaczyć, które sesje ekranu są uruchomione:
Zaloguj się do sesji ekranowej (1234 to liczba, którą podał Ci ekran)
Następnie możesz użyć Firefoxa na swoim laptopie i zamknąć terminal na pulpicie.
źródło
ssh -X
pulpicie, uruchom ekran w sesji ssh, odłącz go i pozostaw sesję uruchomioną. Następnie ponownie podłącz sesję ekranową rękami na komputerze i uruchom coś. Jest to podobne do mojej odpowiedzi „SSH z niespodzianką”. Korzystanie z ekranu czyni go bardziej wygodnym.Virtualgl utworzy dodatkowy (w tle) pulpit (styl TightVNC) , do którego można uzyskać dostęp za pośrednictwem klienta VNC turbo . Będzie działać jako umowa typu zdalnego pulpitu -> Ale będzie odtwarzać płynne wideo przez sieć.
Jeśli szukasz sposobu na odciążenie procesora dla połączenia zdalnego, aby móc uruchamiać aplikacje z komputera na laptopie, to właśnie zrobiłbym to.
http://www.virtualgl.org/
Możesz także wyeksportować środowisko pulpitu za pośrednictwem SSH, jak wyżej wspomniano / koleś.
źródło
Po kilku dalszych kopaniach online natknąłem się na DMX
Ze strony głównej
źródło
Tak to mozliwe. Biorę oba komputery z systemem Linux z xclock zainstalowanym na komputerze lokalnym. Próbuję uruchomić xclock lokalnie i wyświetlić zegar na zdalnym komputerze z systemem Linux.
źródło