Cum să executați comenzi pe Raspberry Pi prin e-mail

  • Clement Thomas
  • 0
  • 1991
  • 444

Această problemă se confruntă cu aproape fiecare utilizator Raspberry Pi. Aveți un Raspberry Pi care rulează acasă și doriți să executați o comandă asupra acestuia. Problema este că sunteți în afara casei dvs., în rețeaua dvs. mobilă și nu aveți de unde să vă accesați Pi-ul. Puteți obține o adresă IP statică sau puteți utiliza unul dintre serviciile DNS dinamice pentru a permite accesul la rețeaua de domiciliu. Totuși, acest lucru este prea incomod pentru majoritatea oamenilor și depune prea mult efort pentru câștig mic. În plus, îți deschide Raspberry Pi pentru atacuri cu forțe brute, deoarece portul SSH este acum expus lumii.

Vestea bună este că există o metodă mai convenabilă și mai sigură - pur și simplu trimiteți e-mail comenzile pe care doriți să le rulați pe Raspberry Pi. În acest fel, tot ce ai nevoie este un client de e-mail și o conexiune de internet funcțională pe Pi. Fără conectări și fără IP-uri statice. Mai mult, această metodă nu funcționează numai cu Raspberry Pi, dar și cu orice distro Linux cu shell-ul Bash și CURL instalat. Suna bine? Iată ce aveți nevoie pentru a o configura:

cerinţe

  • Un zmeură Pi cu conexiune la internet funcțională.
  • Un cont pe IFTTT.com.
  • Un cont Dropbox.

Noțiuni de bază

Configurați rețeta IFTTT

Vom folosi IFTTT pentru a distribui comenzile livrate prin e-mail către Dropbox. După configurarea unui cont IFTTT, va trebui să utilizați „Executați comenzile bash pe Raspberry Pi prin e-mail ”. Pur și simplu, accesați această rețetă IFTTT și faceți clic pe Adăuga.

Configurați Dropbox Uploader

Avem nevoie Dropbox Uploader - un program din linia de comandă care poate încărca, descărca, lista sau șterge fișiere din Dropbox. Iată cum să o configurați:

1. Pe zmeura ta Pi, obțineți software-ul necesar răsuci și wget. Probabil că deja le aveți instalate, dar le vom instala doar în caz că:

[codul sursă] sudo apt instala wget curl [/ codul sursă]

2. Creați un folder unde o vom seta. Aici, am creat un director numit raspi_email în folderul meu de acasă:

[codul sursă] mkdir ~ / raspi_email
cd ~ / raspi_email [/ cod sursă]

3. Obține Scriptul Dropbox Uploader de la GitHub, și marchează-l executabil:

[codul sursă] wget https://raw.githubusercontent.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh

chmod + x ./dropbox_uploader.sh[/sourcecode]

4. Fugi dropbox_uploader.sh script-ul. Veți vedea o ieșire de acest fel:

5. Acum trebuie creați o aplicație Dropbox. Conectați-vă la Dropbox, accesați această adresă URL, unde veți vedea un ecran care arată astfel:

6. Ca și în imaginea de mai sus, alegeți mai întâi API-ul Dropbox, apoi selectați Dropbox complet în tipul de acces necesar. In cele din urma, Nume aplicația ta orice îți place.

7. După ce noua aplicație este creată cu succes, derulați în jos la OAuth2 și faceți clic pe butonul Genera buton pentru a genera un jeton de acces. Acum veți vedea un jeton de acces generat unde Genera butonul era. Copiați acest jeton, lipiți-l în terminal și apăsați introduce:

8. La verificați dacă contul dvs. funcționează, executa comanda ./dropbox_uploader.sh lista - ar trebui să vedeți o listă cu fișierele din contul dvs. Dropbox.

Configurați Raspi Runner

Pe dispozitivul dvs. de zmeură, descărcați Scenariul Raspi Runner în raspi_email folder creat anterior:

[codul sursă] cd ~ / raspi_email

wget https://raw.github.com/enkydu/Raspi_Runner/master/raspi_runner.sh[/sourcecode]

Faceți scenariul executabil, și executați-l:

[cod sursă] chmod + x ./raspi_runner.sh

./raspi_runner.sh[/sourcecode]

Acum veți vedea un prompt precum imaginea de mai jos. Când scriptul cere calea completă către dvs. Dropbox Uploader, intra pe cale pentru dumneavoastră Acasă director (probabil / Home / pi /), urmată de numele folderului în care ați descărcat dropbox_uploader.sh script-ul. Dacă ați urmat acest ghid cuvânt cu cuvânt, veți intra / Home / pi / raspi_email aici.

Configurați Crontab

Odată ce elementele de bază sunt în vigoare, este necesar programează rularea Raspi Runner. De exemplu, puteți să-l setați pentru a verifica dacă există e-mailuri la fiecare 5 minute. Vom folosi crontab pentru asta. Pe Raspberry Pi dvs., executați:

[cod sursă] crontab -e [/ cod sursă]

În partea de jos a fișierului, adăugați următoarea linie:

[codul sursă] * / 5 * * * * /home/pi/raspi_email/raspi_runner.sh> / dev / null 2> & 1 [/ cod sursă]

Desigur, în exemplul de mai sus, a inlocui pi cu numele dvs. de utilizator și raspi_email cu dosarul pe care l-ați plasat raspi_runner.sh script in. Acum salvați-vă crontab.

folosire

Pur și simplu trimiteți un e-mail cu comenzile pe care doriți să le executați pe Pi [email protected] de la adresa de e-mail pe care ai folosit-o pentru a configura contul IFTTT. Corpul e-mailului va conține comanda. Puteți adăuga orice subiect doriți la e-mail, dar vă recomandăm să adăugați unul. În următorul exemplu, îi comand pe Zmeura Pi să închide:

După perioada de întârziere stabilită în dvs. crontab, raspi_runner.sh va rula și va executa comanda conținută în e-mailul dvs..

VEZI ȘI: Cum să configurați și să începeți cu Raspberry Pi 3 (Ghid de pornire)

Rulați comenzi de la distanță pe Raspberry Pi utilizând IFTTT

Astfel, puteți utiliza IFTTT, Dropbox și unele linii de comandă magice pentru a rula comenzi de la distanță pe Raspberry Pi. Desigur, așa cum am menționat la început, această metodă va funcționa și cu orice sistem Linux sau Unix, cu shell-ul Bash instalat.

Rămâneți la curent cu mai multe sfaturi și trucuri cu zmeură în viitor. Dacă aveți probleme în configurarea acestuia sau doriți să ne împărtășiți unele dintre propriile trucuri frumoase ale IFTTT cu noi, asigurați-vă că ne aruncăm o linie în secțiunea de comentarii de mai jos.




Nimeni nu a comentat acest articol încă.

Ghiduri de cumpărare gadget, tehnologii care contează
Publicăm ghiduri detaliate pentru achiziționarea de echipamente, creăm liste interesante cu cele mai bune produse de pe piață, acoperim știri din lumea tehnologiei