Jak nakonfigurovat vaše Raspberry Pi pro vzdálené prostředí Shell, Desktop a File Transfer
Takže máte Raspberry Pi a chcete maximalizovat jeho malou stopu tím, že se změníte na zcela samostatnou krabici - žádný monitor, klávesnici nebo jiné vstupní periferie. Přečtěte si, jak vám ukážeme, jak nastavit vzdálený přístup k shellu, desktopu a přenosu souborů na počítači Pi.
Proč to chci dělat??
Pi, dokonce oblečený v robustním pouzdře, je malý počítač. Je perfektní pro to, aby se někde zatahovalo, aniž by se z ní vytratilo drátky - pro mnoho projektů jednoduše nepotřebujete stálý monitor a periferní doprovod.
Že není znamená však, že se k této schránce nebudete muset připojovat, provádět změny, aktualizovat věci, přenášet soubory a podobně. Dokonalým příkladem toho je malý indikátor déšť, který jsme postavili jako součást našeho Konstrukce indikátoru LED s článkem Malina Pi (pro e-mail, počasí nebo cokoli). Nepotřebuje všechny ty věci, které jsou k němu připojeny, ale přesto bychom chtěli mít možnost sklouznout do zařízení a jednoduše provést změny nebo vyzkoušet nové experimenty s modulem LED, aniž by je museli přetáhnout zpět do dílny. připojte jej k monitoru, klávesnici, myši atd. Konfigurací pro vzdálený shell, vzdálenou plochu a vzdálený přenos souborů je velmi jednoduché vždy komunikovat s naší jednotkou Pi z pohodlí našeho stolního počítače, jako kdybychom "Zvedl jsem jednotku na plnou pracovní stanici.
Co potřebuji?
Pokud jste zbrusu nový na práci s Raspberry Pi, důrazně doporučujeme zkontrolovat Průvodce HTG Začínáme s Raspberry Pi získat rukojeť na základy zařízení a dostat se na rychlost.
Pro tento tutoriál budete potřebovat následující věci:
- Raspberry Pi běží Raspbian.
- Stolní nebo přenosný počítač.
- Místní Wi-Fi nebo kabelová síť pro připojení zařízení Pi a počítače.
Za prvé, většina kroků v tomto tutoriálu by měla fungovat s jinými distribucemi Pi na bázi Linuxu ale budeme používat Raspbian. Měli byste mít malý problém přizpůsobit tutoriál jiným distribucím.
Za druhé, jako počítač v síti používáme systém Windows, který komunikuje s jednotkou Raspberry Pi jako vzdálená hlava / rozhraní. V případě potřeby se budeme snažit napojit na konzultace a doporučit čtení týkající se provádění paralelních úkolů a nástrojů na OS X a Linuxu.
Nastavení a připojení k SSH serveru
Vzdálený přístup k příkazovému řádku k vaší instalaci Raspbian je o nejjednodušším malým vylepšením, který můžete provést do vašeho systému,.
Otevřete terminál v Rasbian, zkratka je LXTerminal na ploše a zadejte následující příkaz:
sudo raspi-config
Přejděte dolů na ssh a stiskněte enter. Po zobrazení výzvy k serveru SSH vyberte možnost Umožnit a znovu stiskněte Enter. Budete vráceni do panelu Raspi-config; přejděte dolů na Dokončit a stisknutím klávesy enter ukončete konfigurační nástroj. To je vše, co musíte udělat pro zapnutí SSH přístupu k vašemu Pi. Výchozí SSH přihlašovací jméno a heslo je pi a malina, resp.
Zatímco stále sedíte na příkazovém řádku, je nyní skvělý čas, abyste zkontrolovali IP vaší jednotky Raspberry Pi v místní síti. Typ ifconfig na výzvu a potom se podívejte na výstup příkazu. Pokud používáte ethernetový port, který chcete hledat init addr v eth0 sekce; pokud používáte Wi-Fi, chcete hledat init addr v wlan0 sekce. Kromě kontroly a zaznamenání adresy IP je to také skvělý čas pro nastavení statické položky IP ve směrovači, takže nemusíte v budoucnu hledat IP.
Nyní, když máme SSH server zapnutý, známe přihlašovací jméno a my známe IP adresu stroje, je čas se připojit přes SSH a vyzkoušet to. Chcete-li tak učinit z Linuxu a OS X, můžete jednoduše použít ssh příkaz na terminálu. Uživatelé systému Windows však potřebují klienta SSH jako je PuTTY.
Vzhledem k tomu, že používáme schránku systému Windows k vzdálené správě našeho Pi, je to PuTTY. Nainstalujte kopii souboru PuTTY nebo extrahujte přenosnou verzi a vypněte ji. Existují mnoho nastavení, se kterými se můžete setkat v PuTTY, ale stačí se jen starat o jednu věc, která se připojuje k naší Pi. Na hlavním rozhraní relace zadejte adresu IP vašeho Pi a vyberte SSH pod tím:
Udeřil otevřeno v dolní části a PuTTY spustí terminálové okno pro vás, připojí se k Pi a vyzve vás k přihlášení. Pokračujte a přihlaste se pi / malina:
Jakmile je vaše SSH připojení funkční, můžete technicky dokončit zbytek tohoto tutoriálu vzdáleně od pohodlí vašeho stolu - i když vám doporučujeme nechat hlavu a klávesnici na vašem systému, dokud nedokončíte celý projekt a nebudete mít vše hladké.
Než budeme pokračovat, máme nějaké další funkce, které můžeme vytlačit z SSH. Vedle vzdálené správy příkazového řádku můžete vzdáleně přenášet soubory pomocí funkce Secure Copy. Je to příkazový řádek intenzivní a není zvlášť vhodný pro přenos velkého počtu souborů pocházejících z více adresářů, ale pro jednorázový přenos konfiguračních souborů nebo jiné malé skládky, je to docela užitečné. Podívejte se na náš průvodce kopírováním souborů přes SSH pomocí příkazu SCP zde.
Na konci tutoriálu se podíváme blíže na uživatelsky přívětivé / grafické uživatelské rozhraní.
Nastavení a konfigurace vzdálené plochy
Vzdálený přístup k příkazovému řádku je úžasný, ale má přístup k desktopu pro aktivity zaměřené na GUI. Přinesme síly příkazového řádku a síly plochy společně.
Ačkoli jsme k tomuto bodu odkazovali na to jako "vzdálená plocha", nástroj, který právě instalujeme, je známý jako virtuální síťová počítačová výpočet (VNC), která je mnohými známými, jako jsou RealVNC a TightVNC. Pro tento tutoriál nainstalujeme TightVNC na Pi. Chcete-li získat přístup k relaci TightVNC založené na Pi, budete potřebovat vzdáleného klienta, například:
- TightVNC desktopový klient pro Windows
- TightVNC desktopový klient pro systémy Linux / Unix
- RealVNC desktop client pro OSX
Chyťte si kopii, a budeme ji následovat v této části. Prozatím, pojďme se pustit do instalace TightVNC serveru na vašem Raspberry Pi. Otevřete terminál. Zadejte následující příkaz, abyste mohli začít:
sudo apt-get nainstalovat tightvncserver
Tím se stáhnou a rozbalí instalační soubory; po zobrazení výzvy pokračovat stisknutím tlačítka Y. Po dokončení instalace se vrátíte k výzvě. VNC můžete spustit jedním ze dvou způsobů. Stačí spustit příkaz pro server takhle:
tightvncserver
Zobrazí výzvu k zadání hesla pro přístup k pracovní ploše VNC - jak je vidět na výše uvedené obrazovce obrazovky. Heslo musí mít délku 4 až 8 znaků. Poté, co potvrdíte heslo, budete vyzváni k nastavení hesla pouze pro zobrazení (můžete se rozhodnout, že jsme se odhlásili z kroku).
Případně můžete použít mnohem přesnější, i když delší časový příkaz, který vám dává větší kontrolu nad tím, jak vzdálený počítač uvidí pracovní plochu - a co je nejdůležitější, na jaké rozlišení se bude pracovní plocha zobrazovat, abyste si mohli vychutnat pohled na celou obrazovku vzdáleného počítače. Chcete-li určit rozlišení plochy VNC, použijte následující příkaz a vymažte hodnotu rozlišení (čtvrtou položku v příkazu) pro rozlišení vzdálené plochy:
vncserver: 1 -geometrie 1600 × 900 -depth 16-pixelformat rgb565:
Pokud v jakémkoli okamžiku uděláte chybu při nastavení instance serveru VNC a / nebo chcete vypnout server VNC, jednoduše zadejte následující (změňte číslo za dvojtečkou na číslo instance VNC, kterou chcete zabít) :
vncserver -kill: 1
Nyní, když máme server VNC v provozu, připojte se k němu z naší vzdálené plochy. Zapalte prohlížeč TightVNC do počítače a připojte IP adresu jednotky Raspberry Pi a následně: 1 takto:
A tady je naše odměna za úspěšné nakonfigurování našeho VNC serveru - pěkný celoobrazovkový pohled na naši dálkovou jednotku Raspberry Pi:
Existuje známý problém s nástroji TightVNC a Rasbian, které díky vítězné změně oprávnění způsobí potíže se skutečnou pracovní plochou monitoru (při současném zachování nedotčeného rozhraní vzdálené plochy poskytované serverem VNC). Chcete-li tento problém vyřešit dříve, než se pro vás stane problém, přejděte přímo na příkazový řádek a zadejte následující příkaz:
sudo chown pi /home/pi/.Xauthority
Tento příkaz změní vlastnictví souboru .Xauthority zpět na uživatele pi - pro zvědavý, soubor .Xauthority je používán systémem X-windows v Rasbian a něco během instalace a konfigurace serveru TightVNC způsobí, že malé oprávnění hiccup.
S tím malým nepatrným objížďkem se vrátíme k dokončení konfigurace vzdálené plochy.
Nyní, když máme plný přístup k příkazovému řádku a stolnímu počítači k Raspberry Pi, je tu jeden takový triviální krok, který musíme udělat. Nástroj Raspi-config nastavil SSH server tak, aby se automaticky spouštěl při spuštění, ale server VNC ještě nebyl takto konfigurován. Tento krok můžete přeskočit a ručně spustit server na příkazovém řádku přes SSH, když ho potřebujete, ale snažíme se to udělat co nejdříve bez problémů pro budoucí použití. Pojďme za chvíli a vytvořte spouštěcí soubor pro server VNC.
Aby bylo možné automaticky spustit server VNC, musíme nastavit inicializační nebo inicializační soubor, který Raspbian použije k čistému spuštění a vypnutí serveru během spouštění a zavření procesu. Nyní vytvoříme init soubor. Na příkazovém řádku zadejte následující příkaz:
sudo nano /etc/init.d/tightvnc
Tím vytvoříte soubor v inicializačním adresáři "tightvnc" a otevřete editor nano, abychom mohli vložit do našeho skriptu. V editoru nano vložte následující kód (ujistěte se, že změníte rozlišení rozlišení 1600 × 900 tak, aby odpovídalo obrazovce vzdáleného počítače:
#! / bin / sh
### BEGIN INIT INFO
# Poskytuje: tightvncserver
# Required-Start:
# Required-Stop:
# Výchozí-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: spuštění serveru vnc
# Popis:
### END INIT INFOpřípad "$ 1" v
Start)
su pi -c 'vncserver: 1 -geometrie 1600 × 900 -depth 16-pixelformat rgb565:
echo "VNC Started"
;;
stop)
pkill Xtightvnc
echo "VNC ukončeno"
;;
*)
echo "Použití: /etc/init.d/tightvnc start | stop"
výstup 1
;;
esac
Kromě úpravy části skriptu v rozlišení obrazovky existuje ještě jedna věc, kterou můžete upravit. V řádku 14 můžete změnit příkaz "su pi -c" na libovolný uživatelský účet vedle "pi", pokud chcete VNC na konkrétní pracovní plochu pro daný účet.
Jakmile jste kód vložili a upravili, je čas ho uložit. Stisknutím kláves CTRL + X ukončete a uložte svou práci v nano. Jakmile se vrátíte na příkazovou řádku, potřebujeme provést několik rychlých změn oprávnění souboru:
sudo chmod 755 /etc/init.d/tightvnc
Nyní je inicializační soubor spustitelný. Z testu můžeme prověřit:
sudo /etc/init.d/tightvnc start
sudo /etc/init.d/tightvnc zastávka
Poslední změna, kterou uděláme, je aktualizovat soubor rc.d (který sleduje, které inicializační skripty jsou ve složce /init.d/):
sudo update-rc.d pevný výchozí
Po zadání příkazu získáte potvrzení o aktualizaci souboru. Nyní je čas na skutečný test: soubor se po restartu správně načte? Zadejte na příkazovém řádku následující příkaz a restartujte jej a připravte se s vaším klientem VNC, abyste otestovali spojení v jednom okamžiku:
sudo reboot
Po dokončení restartu systému se přihlaste s vaším klientem VNC. Pokud se vaše relace VNC nezdaří, přejděte znovu na příkazový řádek a spusťte znovu příkaz startvnc start (z testovací části výše), abyste zkontrolovali, zda je soubor spustitelný a zda bylo heslo správně uloženo.
V tomto okamžiku jsme ještě v naší misi k úplné vzdálené kontrole naší jednotky Raspberry Pi. Se vzdáleným přístupem příkazového řádku přes SSH a přístup k vzdálené ploše přes VNC pod našimi pásy, pojďme se zjednodušit proces přenosu souborů mezi naší Pi a stolním počítačem.
Nastavení a konfigurace nástrojů pro přenos souborů
Vzhledem k tomu, že jsme již nastavili službu SSH, nejjednodušší způsob, jak nastavit mrtvý jednoduchý přenos souborů mezi našimi počítači Pi a vzdálenými počítači, je připojení rozhraní GUI na připojení SSH. Pamatujte si, jak jsme mluvili o tom, že používáme SCP přes SSH dříve v tutoriálu? Spuštění tohoto příkazu z příkazového řádku se stává opravdu nudné, skutečně rychlé. S balíčkem GUI budeme moci věnovat více času přesouvání souborů a hraní s naším Pi a méně času hloubení na klávesnici.
Zatímco pro příkaz SCP existuje paleta GUI wrapperů, půjdeme s multiplatformním nástrojem, který mnoho lidí už ví, má a miluje (a dokonce ani neví, že provádí převody SCP): FileZilla. Je k dispozici pro operační systémy Windows, OS X a Linux - můžete zde kopii stáhnout.
Jakmile nainstalujete soubor FileZilla, vypněte jej a přejděte na File -> Site Manager. Vytvořte novou položku webu, pojmenujte ji a připojte uživatelské jméno a heslo pro Pi.
Nakonec zkontrolujte, zda je port nastaven na 22 a protokol Servertype na SFTP - SSH File Transfer Protocol. V dolní části klikněte na tlačítko Připojit a budete se chovat podobně jako tento:
Vaše místní adresáře jsou v levém podokně a vzdálené adresáře na Pi jsou v pravém podokně. Pohyb souborů mezi těmito dvěma je stejně jednoduchý jako jejich přetahování.
Využití stávajícího přenosu souborů SSH je nejjednodušší způsob, jak se dostat k souborům na Pi bez nutnosti další konfigurace ale pokud chcete nakonfigurovat Pi, abyste mohli přijímat a sdílet soubory bez vzdáleného uživatele vyžadujícího nějaké fantazie (jako je například FTP klient schopný SCP, jako je FileZilla), doporučujeme si prohlédnout konfigurační část Samby v našem průvodci: Jak se obrátit na malina Pi do síťového úložného zařízení s nízkou spotřebou energie. Přečtení těchto informací vás seznámí s nastavením základní sbírky Samby na platformě Pi a vytvoříte sdílenou složku, která bude snadno přístupná téměř všem v síti bez dalších nástrojů.
Konfigurovali jste SSH, nakonfigurovali jste VNC a nastavili jste jednoduchý SFTP a / nebo Samba přístup k vašemu Pi - v tomto okamžiku můžete spouštět vaše Raspberry Pi, odstranit monitor, klávesnici a myš, a zastrčit ji jako tichý a bezhlavý stroj.
Máte nápad na projekt Raspberry Pi a vy umíráte, že pro nás napíšete tutoriál? Vypusťte komentáře nebo nás zašlete na adresu [email protected] a budeme se snažit pomoci.