VNC server na Raspberry Pi

Raspberry Pi verze 2 se mi doma válela nějakou dobu jen tak bez užitku. Původně měla fungovat jako interaktivní firewall, ale projekt jsem nedotáhl do konce. Napadlo mě zkusit ji jako zařízení pro provoz CQRLOGu. Zbavil bych se tím jednoho hučícího stroje.

Na MicroSD kartu ze starého telefonu jsem nasypal obraz Raspberry Pi desktop založeném na Debianu Buster, kartu strčil do Maliny, zapnul napájení a přivítal mě průvodce nastavením systému. Zvolil jsem heslo, připojil se k WiFi, všechno fungovalo hned na první pokus. Moje malina je v konfiguraci s 1GB RAM, takže nic moc, ale po startu systému včetně grafického rozhraní, je zabráno jen necelých 200MB, mám spoustu volného místa. Systém naběhl do plného rozlišení monitoru 1600×1200, zapnul jsem přístup přes SSH, podle MAC adresy nastavil na routeru DHCP server tak, aby dostala vždy stejnou IP adresu. Vše fungovalo výborně.

IP adresu systému lze zjistit pomocí příkazu ip a jako je uvedeno na obrázku

Protože Malina bude fungovat bez připojeného monitoru a budu se k ní připojovat vzdáleně z Mac Mini, musí VNC server běžet na pozadí jako služba a mít nastaveno rozlišení obrazovky. V menu Preferences -> Raspberry Pi Configuration jsem vypnul Auto login, nebudu jej potřebovat.

Vypnutí Auto login

Dále pak v záložce Interfaces zapnout přístup přes VNC.

Zapnutí VNC

Aby běžel VNC server na pozadí s obrazovkou v daném rozlišení, je potřeba do konfigurace systemd přidat novou službu.

sudo nano /etc/systemd/system/vncserver.service

do souboru pak vložit:

[Unit]
Description=TightVNC remote desktop server
After=network.target

[Service]
User=pi
Type=forking
ExecStart=/usr/bin/vncserver :1 -geometry 1680x1050
ExecStop=/usr/bin/vncserver -kill :1

[Install]
WantedBy=multi-user.target

Obsah se uloží pomocí CTRL+X, kdy se editor zeptá, jestli uložit změny, dáte Y jako Yes. Nyní už jen stačí službu zapnout a spustit.

sudo systemctl enable vncserver
sudo systemctl start vncserver

V konfiguraci služby jsem rozlišení obrazovky VNC serveru nastavil na 1680×1050. Můžete si nastavit rozlišení jaké potřebujete. Schválně mám nastaveno menší než má reálně můj monitor, chtěl jsem mít obrazovku z Maliny v okně, se kterým půjde pohodlně pracovat.

Při pokusu o připojení jsem narazil na první problém. Nefungovalo připojení k VNC zabudované přímo v Mac OS (Finder, menu Otevřít -> Připojení k serveru). Na Malině je nainstalován RealVNC server a z nějakého důvodu se nejde připojit. Musel jsem si ze stránek RealVNC nainstalovat VNC Viewer pro Mac OS. Pak vše fungovalo bez problémů.

VNC viewer

CQRLOG je připraven i pro architekturu ARM, kompilace proběhla bez komplikací, instalace potřebných závislostí také a program funguje jak má. Bohužel zlobí převodníky USB/Serial s čipem FTDI. Při pokusu o komunikaci jsou do logu sypány nějaké divné chyby. Podle Googlu za to může chipset v Malině.

Běžící CQRLOG na Raspberry Pi

Zbavil jsem se tím jednoho starého stroje, který byl sice mnohem výkonnější než Malina, ale děsně mě vadilo hučení ventilátorů. Stroj teď budu jen zapínat když budu chtít něco na CQRLOGu programovat, jinak bude vypnutý. Časem jej nahradí připojení přes VNC k domácímu serveru a hučící stroj už nebudu potřebovat vůbec. Mým nervům se tím dost uleví.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.