Jakiś czas temu opisałem jak połączyć się zdalnie z Raspberry Pi za pomocą VNC. W komentarzach czasem pojawiało się pytanie o to, jak podłączyć się do „aktywnego pulpitu”  – tak by nasze działania były widoczne np. na telewizorze do którego podłączone jest Pi…

Postaram się dziś odpowiedzieć na to pytanie… :-)

x11vnc

By połączyć się do aktywnego pulpitu skorzystamy z aplikacji „x11vnc” (powiedzmy, że taki „mix” X11 jak i VNC)

Instalacja x11vnc na Raspberry Pi (Raspbian)

Jeśli dawno nie wykonywaliście aktualizacji systemu, polecam zacząć od tego… 

Następnie instalujemy x11vnc:

sudo apt-get install x11vnc

Konfiguracja x11vnc

Konfiguracja właściwie sprowadza się do ustawienia hasła dla połączenia – jeśli takiego chcecie używać:

raspberry-pi_ssh_x11vnc01

x11vnc -storepasswd

Tu mała uwaga: jeśli korzystacie z „normalnego” VNC i macie tam ustawione hasło – możecie pominąć ten krok…

Uruchamiamy usługę

Tu kolejna uwaga: wcześniej musi być uruchomione środowisko graficzne.

Podstawowa komenda wygląda tak:

x11vnc -display :0

Zostanie uruchomiona usługa, na „pulpicie” 0, bez pytania o hasło. Dodatkowo zostanie wyłączona po rozłączeniu się klienta.

Pozostałe opcje:

  • Z pytanie o hasło: -usepw
  • Tryb cichy, z ograniczoną ilością komunikatów na ekranie: -q
  • Usługa pozostaje aktywna nawet po rozłączeniu klienta: -forever 
  • Wiele równoczesnych połączeń: -shared
  • Tryb „tylko oglądamy”: -viewonly

raspberry-pi_ssh_x11vnc02

Przykładowe komendy

Z pytanie o hasło:

x11vnc -display :0 -usepw

Jak wyżej, ale usługa zostanie aktywna nawet po zakończeniu połączenia:

x11vnc -display :0 -usepw -forever

I to samo, ale bez zbytecznych komunikatów w oknie konsoli:

x11vnc -display :0 -usepw -forever -q

Wiele połączeń, bez pytania o hasło, tylko do odczytu – przydatne np. do przeprowadzania szkoleń:

x11vnc -forever -shared -viewonly

Screen

Jeśli korzystacie z programu screen, można skorzystać i z niego:

screen -dmS x11vnc x11vnc -display :0 -q -usepw -forever

Autostart x11vnc

Jeśli często zamierzacie korzystać z tego rozwiązania (a tym samym i okienek) warto dodać usługę do „autostartu”, tak by startowała razem ze startem interfejsu graficznego (GUI).

Chyba najprościej będzie utworzyć odpowiedni plik w katalogu „autostart”:

nano ./.config/autostart/x11vnc.desktop

Ew. dla innego użytkownika:

sudo nano /home/[UŻYTKOWNIK]/.config/autostart/x11vnc.desktop

O treści:

[Desktop Entry] Type=Application
Terminal=false
Exec=x11vnc -display :0 -q -usepw -forever
Name=x11vnc

Połączenie

Do połączenia można użyć właściwie dowolnego klienta, np. TightVNC. Podobnie wygląda również cała procedura, z tą różnicą że używamy „innego numeru pulpitu”:

raspberry-pi_tightvnc_x11vnc01

IP_Raspberry-Pi:0

.

Zobacz wszystkie artykuły z serii „Raspberry Pi”

(!) Zgłoś błąd na stronie
Pomogłem? To może postawisz mi wirtualną kawę?
LUTy dla D-Cinelike (DJI Mini 3 Pro, DJI Avata, OSMO Pocket) od MiniFly
Wdrożenie Omnibusa w sklepie na WooCommerce
Jak (legalnie) latać dronem w Kategorii Otwartej
Patryk