If-Koubou

Cum se configurează Piberonul dvs. Pi pentru depanare la distanță, desktop și transfer de fișiere

Cum se configurează Piberonul dvs. Pi pentru depanare la distanță, desktop și transfer de fișiere (Cum să)

Deci, aveți un Raspberry Pi și doriți să maximizați amprenta sa mică transformând-o într-o cutie complet autonomă - fără monitor, tastatură sau alte periferice de intrare. Citiți mai departe pe măsură ce vă vom arăta cum să configurați accesul la distanță pentru shell, desktop și fișiere pe fișierul dvs. Pi.

De ce vreau să fac asta?

Pi, chiar îmbrăcat într-un caz robust, este un computer mic. Este perfect pentru a vă împiedica să vedeți undeva, fără ca un șir de fire să se desprindă de ea - pentru multe proiecte pur și simplu nu aveți nevoie de un monitor permanent și de acompaniament periferic.

Acea nu înseamnă că nu va trebui să vă conectați la casetă pentru a efectua modificări, a actualiza lucrurile, a transfera fișiere și așa mai departe. Un exemplu perfect al acestui lucru este indicatorul rece de ploaie mică pe care l-am construit ca parte a Indicatorului cu LED-uri de construcție cu un articol de zmeură Pi (pentru e-mail, meteo sau orice). Nu are nevoie de toate acele chestii atașate la ea, dar totuși ne-ar plăcea să reușim să mergem pe dispozitiv și să facem ușor modificări sau să încercăm noi experimente cu modulul LED fără a trebui să-l tragem înapoi în atelier și conectați-l la un monitor, tastatură, mouse etc. Prin configurarea acesteia pentru shell-ul de la distanță, desktop-ul la distanță și transferul de fișiere de la distanță, facem foarte simplu să interacționăm întotdeauna cu unitatea noastră Pi de la confortul calculatorului nostru ca și cum am am pus unitatea într-o stație completă de lucru.

Ce am nevoie?

Dacă sunteți nou-născut să lucrați cu Raspberry Pi, vă sugerăm să verificați Ghidul HTG pentru a începe cu Raspberry Pi pentru a obține un mâner pe elementele de bază ale dispozitivului și pentru a obține până la viteza.

Pentru acest tutorial veți avea nevoie de următoarele lucruri:

  • O zmeură Pi alergând pe Raspbian.
  • Un computer desktop sau laptop.
  • O rețea locală Wi-Fi sau prin cablu pentru a conecta dispozitivul Pi și computerul.

În primul rând, majoritatea pașilor din acest tutorial ar trebui să funcționeze cu alte distribuții Pi bazate pe Linux dar vom folosi Raspbian. Ar trebui să aveți probleme în adaptarea tutorialului la alte distribuții.

În al doilea rând, folosim o mașină Windows ca computer de rețea pentru a interacționa cu unitatea Raspberry Pi ca cap de la distanță / interfață. Atunci când este cazul, vom face tot posibilul pentru a vă conecta la tutoriale și a sugerat citirea în ceea ce privește îndeplinirea sarcinilor și instrumentelor paralele pe OS X și Linux.

Configurarea și conectarea la serverul SSH

Accesul la linia de comandă de la distanță la instalarea dvs. Raspbian este legat de cea mai ușoară optimizare pe care o puteți aduce sistemului dvs. și este ușor de activat.

Deschideți terminalul în Rasbian, comanda rapidă este LXTerminal pe desktop și tastați următoarea comandă:

sudo raspi-config

Navigați până la ssh și apăsați Enter. Când vi se solicită despre serverul SSH, selectați Permite și apăsați pe Enter din nou. Veți fi returnați la panoul Raspi-config; navigați până la finalizarea și apăsați Enter pentru a închide instrumentul de configurare. Acesta este tot ce trebuie să faceți pentru a activa accesul SSH la dispozitivul dvs. Pi. În mod normal, loginul și parola SSH sunt pi și zmeură, respectiv.

În timp ce încă mai stați la linia de comandă, acum este momentul potrivit pentru a verifica IP-ul unității dvs. Raspberry Pi în rețeaua locală. Tip ifconfig la prompt și apoi uita-te la ieșirea de comandă. Dacă utilizați portul Ethernet pe care doriți să îl căutați init addr în eth0 secțiune; dacă utilizați Wi-Fi, doriți să căutați init addr în wlan0 secțiune. Pe lângă verificarea și notarea adresei IP, este, de asemenea, un moment excelent să configurați o intrare statică IP în routerul dvs., astfel încât să nu trebuiască să vânați pentru IP în viitor.

Acum, când avem serverul SSH activat, cunoaștem datele de conectare și cunoaștem adresa IP a aparatului, este timpul să ne conectăm prin SSH și să-l testăm. Pentru a face acest lucru din Linux și OS X puteți pur și simplu utilizați ssh comandă la terminal. Utilizatorii de Windows, cu toate acestea, vor avea nevoie de un client SSH ca PuTTY.

Deoarece folosim o cutie Windows pentru a gestiona de la distanță Pi, PuTTY este. Instalați o copie a lui PuTTY sau extrageți versiunea portabilă și închideți-o. Sunt mult de setări pe care le puteți face în PuTTY, dar trebuie doar să vă faceți griji cu privire la un singur lucru pentru a vă conecta la Pi noastre. În interfața principală a sesiunii, introduceți adresa IP a opțiunii Pi și selectați SSH sub acesta:

Lovit Deschis în partea de jos și PuTTY va lansa o fereastră terminală pentru tine, se va conecta la Pi și vă va cere să vă conectați. Continuați și conectați-vă cu pi / zmeură:

Odată ce conexiunea dvs. SSH este funcțională, ați putea realiza din punct de vedere tehnic restul acestui tutorial de la distanță din confortul biroului dvs. - deși am sfătui să lăsăm capul și tastatura pe sistemul dvs. până când nu ați terminat întregul proiect și totul va funcționa fără probleme.

Înainte de a merge mai departe, există unele funcționalități suplimentare pe care le putem scoate din SSH. În plus față de gestionarea liniei de comandă de la distanță, puteți, de asemenea, transfera de la distanță fișiere utilizând Secure Copy. Linia de comandă este intensă și nu este deosebit de convenabilă pentru transferul unui număr mare de fișiere provenind din mai multe directoare, dar pentru un transfer de fișiere de configurare într-un singur loc sau pentru alt depozit mic, este destul de util. Consultați ghidul nostru pentru copierea fișierelor pe SSH utilizând comanda SCP aici.

Vom analiza mai târziu mai multe tehnici de transfer de fișiere mai ușor de utilizat / bazate pe GUI.

Configurarea și configurarea desktopului dvs. la distanță

Accesul la linia de comandă la distanță este minunat, dar are și acces la desktop pentru activități orientate spre GUI. Să aducem împreună puterile liniei de comandă și puterile desktop-ului.

Deși am referit la acesta ca pe un "desktop la distanță" până acum, instrumentul pe care îl instalăm este cunoscut sub numele de Virtual Network Computing (VNC), în care mulți sunt familiarizați, cum ar fi RealVNC și TightVNC. Pentru acest tutorial, vom instala TightVNC pe Pi. Pentru a accesa sesiunea TightVNC bazată pe Pi, veți avea nevoie de un client la distanță cum ar fi:

  • TightVNC desktop client pentru Windows
  • Client TightVNC desktop pentru sisteme Linux / Unix
  • Clientul desktop RealVNC pentru OSX

Luați o copie acum și o vom face mai târziu în această secțiune. Pentru moment, să trecem la instalarea serverului TightVNC pe zmeura Pi. Deschideți terminalul. Introduceți următoarea comandă pentru a începe:

sudo apt-get instalați tightvncserver

Acesta va descărca și despacheta fișierele de instalare; când vi se solicită să continuați apăsarea pe Y. După ce instalarea este finalizată, veți fi returnat la prompt. Puteți porni VNC una din cele două căi. Pur și simplu executați comanda pentru server ca acesta:

tightvncserver

Vă va cere să introduceți o parolă pentru a accesa desktopul dvs. VNC - așa cum se vede în captura de ecran de mai sus. Parola trebuie să aibă 4-8 caractere lungime. După ce confirmați parola, vi se va solicita să setați o parolă numai pentru vizualizare (puteți renunța la acest pas, așa cum am făcut-o).

În mod alternativ, puteți utiliza o comandă mult mai precisă, deși mai lungă pentru a tipări, care vă oferă mai mult control asupra modului în care computerul la distanță va vedea desktopul - cel mai important, ce rezoluție va afișa desktop-ul pentru a vă putea bucura de o vizualizare pe ecran complet computerul la distanță. Pentru a specifica rezoluția desktop-ului VNC, utilizați următoarea comandă, schimbând valoarea rezoluției (al patrulea element din comandă) pentru rezoluția desktop-ului la distanță:

vncserver: 1 -geometrie 1600 × 900 -depta 16-pixelformat rgb565:

Dacă în orice moment faceți o greșeală în configurarea instanței serverului VNC și / sau doriți să închideți serverul VNC, introduceți pur și simplu următoarele (schimbarea numărului după colon la numărul instanței VNC pe care doriți să o omorâți) :

vncserver -kill: 1

Acum, când avem serverul VNC în funcțiune, să ne conectăm la el de pe desktop-ul nostru de la distanță. Activați vizualizatorul TightVNC de pe computer și conectați adresa IP a unității Raspberry Pi, urmată de: 1 cum ar fi:

Și aici este recompensa noastră pentru configurarea cu succes a serverului nostru VNC - o vedere frumoasă pe ecran complet a unității de la distanță Raspberry Pi:

Există o problemă cunoscută cu TightVNC și Rasbian care, datorită unei modificări permisibile a permisiunii, vor provoca probleme cu desktop-ul real monitor (este înlăturat în timp ce interfața de pe desktop-ul furnizat de serverul VNC nu este afectată). Pentru a remedia această problemă înainte de a deveni chiar o problemă pentru dvs., mergeți direct la linia de comandă și introduceți următoarea comandă:

sudo chown pi /home/pi/.Xauthority

Această comandă schimbă proprietatea fișierului .Xauthority înapoi către utilizator pi-pentru curios, fișierul .Xauthority este utilizat de sistemul X-windows în Rasbian și ceva în timpul procesului de instalare și de configurare a serverului TightVNC, cauzează puțină permisiune de hicup.

Cu acea mică ocolire minoră în drum, să ne întoarcem la terminarea configurației desktop-ului nostru la distanță.

Acum că avem linia de comandă completă și accesul la desktop la Raspberry Pi, există un singur tip de a nu-atât-trivial avem nevoie pentru a face. Instrumentul Raspi-config a setat serverul SSH să pornească automat la boot pentru noi, dar serverul VNC nu este încă configurat într-o asemenea manieră. Puteți sări peste acest pas și porniți manual serverul de la linia de comandă prin SSH atunci când aveți nevoie de el, dar încercăm să facem acest lucru fără probleme și pentru o utilizare ulterioară. Să facem un minut acum și să creăm un fișier de pornire pentru serverul VNC.

Pentru a porni automat serverul VNC, trebuie să setăm un fișier de inițializare sau inițializare pe care Raspbian îl va utiliza pentru a porni și a închide serverele în timpul procesului de încărcare și închidere. Să creăm fișierul init acum. La tipul de linie de comandă din următoarea comandă:

sudo nano /etc/init.d/tightvnc

Acest lucru va crea un fișier în directorul de inițializare numit "tightvnc" și va deschide editorul nano pentru a putea lipi în scenariul nostru. În editorul nano, lipiți următorul cod (asigurați-vă că modificați valoarea rezoluției 1600 × 900 pentru a se potrivi cu ecranul computerului dvs. la distanță:

#! / Bin / sh
### INIȚI INIȚIA INFO
# Oferă: tightvncserver
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: porniți serverul vnc
# Descriere:
### END INIT INFO

caz "$ 1" în
start)
su pi -c 'vncserver: 1 -geometrie 1600x900 -depth 16-pixelformat rgb565:'
ecou "VNC Started"
;;
Stop)
pkill Xtightvnc
ecou "VNC Terminat"
;;
*)
ecou "Utilizare: /etc/init.d/tightvnc start | stop"
ieșirea 1
;;
ESAC

În afară de modificarea porțiunii de rezoluție a ecranului din script, există încă un lucru pe care îl puteți modifica. În linia 14 puteți schimba comanda "su pi -c" în orice alt cont de utilizator în afară de "pi" dacă doriți să VNC pe desktop-ul specific pentru acel cont.

După ce ați inserat și modificat codul, este timpul să îl salvați. Apăsați CTRL + X pentru a ieși și a salva munca în nano. Odată ce v-ați întors la linia de comandă, trebuie să efectuăm câteva modificări rapide în permisiunile fișierului:

sudo chmod 755 /etc/init.d/tightvnc

Acum fișierul de inițializare este executabil. Putem testa de la prompt:

sudo /etc/init.d/tightvnc start

sudo /etc/init.d/tightvnc stop

Ultima modificare pe care o vom face este actualizarea fișierului rc.d (care urmărește care script-uri de inițializare se află în directorul /init.d/):

sudo update-rc.d fixvnc defaults

După ce introduceți comanda respectivă, veți primi o confirmare a faptului că fișierul a fost actualizat. Acum este momentul pentru testul real: se încarcă corect fișierul după repornire? Introduceți următoarele la linia de comandă pentru a reporni și a fi pregătit cu clientul dvs. VNC pentru a testa conexiunea într-un moment:

sudo reboot

Odată ce sistemul a terminat repornirea, conectați-vă cu clientul dvs. VNC. Dacă sesiunea VNC nu reușește, accesați din nou comanda de comandă și rulați din nou comanda startvnc start (din partea de testare de mai sus) pentru a verifica dacă fișierul este executabil și că parola a fost salvată corect.

În acest moment, suntem și mai departe în misiunea noastră de a controla complet telecomanda unitatea noastră de Raspberry Pi. Cu acces la linia de comandă de la distanță prin SSH și acces la distanță la distanță prin VNC sub centurile noastre, să trecem mai departe la simplificarea procesului de transfer de fișiere între Pi și computerul nostru desktop.

Configurarea și configurarea instrumentelor de transfer de fișiere

Deoarece am deja instalat SSH, cel mai simplu mod de a stabili un transfer de fișiere simplu între fișierele noastre Pi și computerele de la distanță este să porniți o interfață GUI pe conexiunea SSH. Amintiți-vă cum am vorbit despre utilizarea SCP peste SSH mai devreme în tutorial? Fuga de la linia de comandă devine reală plictisitoare, rapidă. Cu un GUI wrapper, vom putea petrece mai mult timp în mișcare de fișiere și de a juca cu Pi și mai puțin timp pecking de la tastatură.

Deși există o varietate de împachetări GUI pentru comanda SCP, vom merge cu un instrument pe mai multe platforme pe care mulți oameni deja îl cunosc, îl au și îl iubesc (și poate chiar să nu știe că efectuează transferuri SCP): FileZilla. Este disponibil pentru Windows, OS X și Linux - puteți lua o copie aici.

Odată ce ați instalat FileZilla, închideți-l și mergeți la File -> Site Manager. Creați o intrare nouă a site-ului, denumiți-o și introduceți numele de utilizator și parola pentru Pi.

În cele din urmă, asigurați-vă că setați portul la 22 și Servertype la SFTP - SSH File Transfer Protocol. Faceți clic pe Conectați în partea de jos și veți fi tratat într-o vizualizare similară cu cea de mai sus:

Directoarele locale sunt în panoul din stânga iar directoarele de la distanță de pe Pi sunt în panoul din dreapta. Mutarea fișierelor între cele două este la fel de simplă ca tragerea și plasarea acestora.

Folosirea transferului de fișiere SSH existent este cel mai simplu mod de a ajunge la fișierele de pe Pi, fără a fi necesară o configurare suplimentară dar dacă doriți să configurați fișierul Pi pentru a primi și a distribui fișiere fără ca utilizatorul de la distanță să aibă nevoie de alte instrumente fantezie (cum ar fi un client FTP capabil de tipul SCP, cum ar fi FileZilla), vă recomandăm să consultați secțiunea de configurare Samba din ghidul nostru: Cum se transformă o Zmeură Pi într-un dispozitiv de stocare de rețea de joasă putere. Citirea peste aceasta vă va familiariza cu crearea unei acțiuni de bază Samba pe Pi pentru a crea un folder partajat ușor accesibil de aproape oricine din rețeaua dvs. fără alte instrumente.

Ați configurat SSH, ați configurat VNC și ați configurat accesul SFTP simplu și / sau Samba la fișierul dvs. Pi - în acest moment puteți să-l încărcați pe Raspberry Pi, să îndepărtați monitorul, tastatura și mouse-ul, și o aruncați ca o mașină fără tăcere și fără cap.

Aveți o idee pentru proiectul Raspberry Pi și sunteți pe moarte pentru noi să scriem un tutorial pentru asta? Sunați-ne în comentariile noastre sau împușcați-ne un e-mail la [email protected] și vom face tot posibilul pentru a vă ajuta.