Geek

Vzdálené připojení k Raspberry Pi

3. Připojení z Macu

Na Macu využívám možnost vzdálené obrazovky (serveru) pomocí VNC. Případně možnost SSH připojení přímo z Terminálu v macOS.

1# Pomocí VNC

  1. začneme instalací tightvncserver
    sudo apt-get install tightvncserver
  2. spustíme a vytvoříme heslo
    vncserver :1
  3. nainstalujeme netatalk
    sudo apt-get install netatalk
  4. na Macu ve Finderu stiskneme zkratku ⌘K a připojíme se k našemu Raspi afp://10.0.0.3 (použijte IP adresu vašeho Pi)
  5. zadáme přihlašovací jméno pi a heslo k našemu Raspberry (defaultně heslo: raspberry)
  6. nainstalujeme avahi-deamons
    sudo apt-get install avahi-daemon
    sudo update-rc.d avahi-daemon defaults
  7. vytvoříme soubor afpd.service
    sudo vim /etc/avahi/services/afpd.service
  8. do souboru vložíme následující kód
    <?xml version="1.0" standalone='no'?><!--*-nxml-*-->
    <!DOCTYPE service-group SYSTEM "avahi-service.dtd">
    <service-group>
       <name replace-wildcards="yes">%h</name>
       <service>
          <type>_afpovertcp._tcp</type>
          <port>548</port>
       </service>
    </service-group>
  9. restartujeme avahi-deamon, Raspi bude stále viditelné na Macu v sidebaru
    sudo /etc/init.d/avahi-daemon restart
  10. tímto se v Terminálu přesuneme do složky init.e
    cd /etc/init.d
  11. zde vytvoříme soubor tightvncserver
    sudo vim tightvncserver
  12. v souboru nastavíme na zvýrazněném řádku rozlišení v závislosti na tom, jaké rozlišení má Mac, ze kterého budeme k Raspi vzdáleně přistupovat
    #!/bin/bash
    # /etc/init.d/tightvncserver
    #
    
    # Carry out specific functions when asked to by the system
    case "$1" in
    start)
        su pi -c '/usr/bin/vncserver -geometry 1440x900'
        echo "Starting VNC server "
        ;;
    stop)
        pkill vncserver
        echo "VNC Server has been stopped (didn't double check though)"
        ;;
    *)
        echo "Usage: /etc/init.d/blah {start|stop}"
        exit 1
        ;;
    esac
    
    exit 0
  13. vytvořenému souboru udělíme práva
    sudo chmod +x tightvncserver
  14. ukončíme server
    sudo pkill Xtightvnc
  15. znovu spustíme tightvncserver
    sudo /etc/init.d/tightvncserver start
    cd /etc/init.d
    sudo update-rc.d tightvncserver defaults
  16. vytvoříme poslední soubor rfb.service
    sudo vim /etc/avahi/services/rfb.service
  17. do vytvořeného souboru vložíme tento kód
    <?xml version="1.0" standalone='no'?>
    <!DOCTYPE service-group SYSTEM "avahi-service.dtd">
    <service-group>
      <name replace-wildcards="yes">%h</name>
      <service>
        <type>_rfb._tcp</type>
        <port>5901</port>
      </service>
    </service-group>
    
  18. nakonec restartujeme avahi-deamon
    sudo /etc/init.d/avahi-daemon restart
  19. nyní již uvidíme ve Finderu možnost Screen share, použijeme heslo, které jsme zvolili ve druhém kroku

Za postup ď klukům z Hacker Shack

Jenže, jakmile Raspberry Pi restartujeme, připojíme se bez problému k serveru (bod 4.), ale sdílení obrazovky bude neaktivní.

  • na Raspi otevřeme terminál a použijeme následující příkazy:
    sudo su
    cd /etc
    chmod +x rc.local
  • ve složce /etc najdeme soubor rc.local (musíme zobrazit skryté soubory CTRL + H) a tento soubor editujeme v textovém editoru, na jehož konec před exit 0 přidáme následující řádky a soubor uložíme:
    sudo /etc/init.d/tightvncserver start
    cd /etc/init.d
    sudo update-rc.d tightvncserver defaults
    cd /home/pi

Teď už bude sdílení obrazovky dostupné i po restartu našeho Raspberry Pi.

2# Terminal (SSH)

Zatímco ve Windows je potřeba program PuTTY, druhou možností na Macu je použití Terminálu přímo v macOS.

  • otevřeme Terminál na Macu, použijeme následující příkaz a zadáme SSH heslo našeho Raspi
    ssh pi@10.0.0.3
  • *místo IP adresy lze použít i hostname
    ssh pi@raspberrypi.local
Přístup k Raspberry Pi z Terminálu macOS
Přístup k Raspberry Pi z Terminálu macOS

Aktivace SSH

  • To lze aktivovat buď v menu aplikací, v záložce Preferences a dole Raspberry Pi Configuration. Zde pak v záložce Interfaces.

  • Případně v terminálu, přidáním jednoho a následně druhého příkazu
    sudo systemctl enable ssh
    sudo systemctl start ssh
Raspberry Pi Configuration
Raspberry Pi Configuration

  1. připojení z iPhonu
  2. připojení z Androidu
  3. připojení z Macu
  4. připojení z Windows
  5. připojení z Linuxu

Leave a Reply

Your email address will not be published. Required fields are marked *