Amestecați împreună un Raspberry Pi și un strop de hard diskuri externe ieftine și aveți rețeta pentru un dispozitiv de stocare în rețea cu putere redusă și mereu pornit. Citiți mai departe în timp ce vă arătăm cum să vă configurați propriul NAS bazat pe Pi.
De ce vreau să fac asta?
Avantajul de a avea un dispozitiv de stocare în rețea mereu pornit este că este extrem de convenabil să aveți datele (sau destinația de rezervă) accesibilă întotdeauna computerelor atât în interiorul, cât și în afara rețelei. Dezavantajul, în majoritatea cazurilor, este că consumați o cantitate echitabilă de energie pentru confort.
Serverul nostru de birou, de exemplu, rulează 24/7 și consumă energie în valoare de aproape 200 USD pe an. Un dispozitiv de stocare în rețea bazat pe Raspberry Pi, pe de altă parte, consumă aproximativ 5 USD în fiecare an.
Vom fi primii care vă acordă faptul că un server complet va avea mai mult spațiu de stocare și capacitatea de a face mai multă muncă (cum ar fi transcodarea unei colecții video multi-terabyte într-un interval de timp rezonabil). Cu toate acestea, pentru majoritatea oamenilor, scopul principal al existenței unui computer mereu pornit undeva în casă este de a servi ca server de fișiere și ca depozit de backup al fișierelor. Pentru astfel de sarcini, Raspberry Pi este mai mult decât suficient de puternic și vă va economisi o parte din schimbarea consumului de energie.
De ce am nevoie?
Acest tutorial se bazează pe tutorialul nostru anterior: Ghidul HTG pentru Noțiuni introductive despre Raspberry Pi și vom presupune că ați finalizat deja acest lucru - cu alte cuvinte, aveți deja Raspberry Pi, l-ați alimentat, conectat la mouse și tastatură și ați instalat Raspbian pe acesta.
În plus față de echipamentul de care aveți nevoie din tutorialul Noțiuni introductive despre Raspberry Pi, veți avea doar următorul hardware:
- Unul (cel puțin) hard disk extern USB pentru backupuri simple de rețea și difuzarea fișierelor
sau
- Două (cel puțin) hard disk-uri externe USB pentru redundanță de date locale
Asta e! Dacă doriți doar o unitate simplă atașată la rețea, veți avea nevoie doar de o unitate de disc. Vă recomandăm să utilizați cel puțin două hard disk-uri pentru a permite redundanța datelor locale (la Raspberry Pi). În scopul acestui tutorial, folosim o pereche potrivită de Hard disk-uri externe portabile Seagate Backup Plus 1 TB . Sunt foarte mici, nu necesită o sursă de alimentare externă și erau în vânzare când cumpăram piese.
Puteți utiliza orice hard disk extern pe care îl aveți la îndemână, dar este ideal să utilizați unități mici de putere redusă, dacă este posibil, întrucât întreaga temă a proiectului este să configurați un NAS mic și de mică putere, pe care îl puteți scoate din drum și uita de.
Înainte de a continua, există câteva alegeri de proiectare pe care le-am făcut în ceea ce privește modul în care ne configurăm Raspberry Pi NAS de care ar trebui să fiți conștienți. În timp ce majoritatea utilizatorilor vor dori să urmeze exact așa cum am făcut-o, este posibil să doriți să modificați pași specifici pentru a se potrivi mai bine nevoilor dvs. și a modului în care utilizați computerele din rețeaua dvs.
În primul rând, folosim hard diskuri formatate NTFS. În cazul în care Raspberry Pi NAS eșuează din anumite motive sau dorim să copiem rapid informațiile printr-o conexiune USB 3.0 în loc de prin rețea, având discuri formatate NTFS simplifică preluarea unităților USB portabile pe care le folosim pe versiunea NAS și conectarea lor direct la unul dintre multele Windows mașini pe care le folosim în fiecare zi.
În al doilea rând, folosim Samba pentru partajările de rețea, din nou din cauza comodității de a conecta Raspberry Pi NAS cu rețeaua noastră predominant Windows.
Pregătirea și montarea unităților de disc externe
Odată ce ați strâns hardware-ul, urmat împreună cu tutorialul Noțiuni introductive despre Raspberry Pi pentru a vă trezi la viteză (și ați rulat Raspian), este timpul să începeți să configurați Pi ca NAS.
Prima ordine de idei este de a conecta unitățile de disc la Raspberry Pi (sau hub-ul USB atașat, în funcție de configurația dvs. și dacă hard disk-urile sunt auto-alimentate sau externe). Odată ce hard disk-urile sunt atașate și Pi este alimentat, este timpul să începeți să lucrați.
Notă: Folosim două hard disk-uri. Dacă ați decis să utilizați un singur hard disk, pur și simplu ignorați toate comenzile din această secțiune destinate montării / modificării sau interacțiunii cu al doilea hard disk.
Vom face toată munca noastră în terminal. Ca atare, puteți lucra direct la Raspberry Pi folosind LXTerminal în Raspian sau puteți conecta SSH la Raspberry Pi folosind un instrument precum Putty. Ambele sunt ok.
Odată ce sunteți la linia de comandă, primul lucru pe care trebuie să-l faceți este să adăugați suport pentru Rasbian pentru discurile formatate NTFS. Pentru aceasta, tastați următoarea comandă:
sudo apt-get install ntfs-3g
Va dura un minut sau două pentru descărcarea, despachetarea și instalarea pachetelor. Odată ce pachetul NTFS este instalat, este timpul să căutați partițiile nemontate ale hard disk-urilor externe atașate.
sudo fdisk -l
Cel puțin ar trebui să vedeți două discuri, dacă ați adăugat un disc secundar pentru oglindirea datelor (așa cum am făcut-o noi), ar trebui să vedeți trei astfel:
Primul disc
/ dev / mmcb1k0
este cardul SD din interiorul Raspberry Pi care găzduiește instalarea noastră de Raspbian. Îl vom lăsa complet singur.
Al doilea disc,
/ dev / sda
este primul nostru hard disk extern de 1 TB. Al treilea disc,
/ dev / sdb
este al doilea hard disk extern de 1 TB. Partițiile reale care ne interesează pe aceste două discuri sunt
/ sda1 /
și
/ sdb1 /
, respectiv. Notați numele discurilor.
Înainte de a putea monta unitățile, trebuie să creăm un director pe care să le montăm. Din motive de simplitate, vom crea pur și simplu un director numit USBHDD1 și USBHDD2 pentru fiecare unitate. Mai întâi trebuie să facem unitățile. În linia de comandă introduceți următoarele comenzi:
sudo mkdir / media / USBHDD1sudo mkdir / media / USBHDD2
După ce ați creat cele două directoare, este timpul să montați unitățile externe în fiecare locație. Din nou la linia de comandă introduceți următoarele comenzi:
sudo mount -t auto /dev/sda1 /media/USBHDD1sudo mount -t auto / dev / sdb1 / media / USBHDD2
În acest moment avem cele două unități de hard disk externe montate pe directoarele USBHDD1 și respectiv USBHDD2. Este timpul să adăugăm într-un director specific ambelor unități pentru a păstra folderele noastre partajate (de dragul de a menține lucrurile ordonate și de a compartimenta munca noastră pe unități). Introduceți următoarele comenzi:
sudo mkdir / media / USBHDD1 / partssudo mkdir / media / USBHDD2 / parts
Acum este timpul să instalăm Samba, astfel încât să putem accesa stocarea din alte părți ale rețelei. În linia de comandă introduceți:
sudo apt-get install samba samba-common-bin
Când vi se solicită să continuați, tastați Y și introduceți. Așezați-vă și relaxați-vă pe măsură ce totul se despachetează și se instalează. Odată ce pachetul Samba se termină de instalat, este timpul să faceți o mică configurare. Înainte de a face orice altceva, să facem o copie de rezervă a fișierului de configurare Samba în cazul în care trebuie să revenim la el. În linia de comandă, tastați următoarea linie de comandă:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old
Aceasta creează pur și simplu o copie de siguranță a fișierului de configurare cu numele de fișier smb.conf.old și îl lasă în același director cu fișierul de configurare original.
Odată ce am creat copia de rezervă, este timpul să facem o editare de bază în fișierul de configurare Samba. Tastați următoarele la linia de comandă:
Sudona / Etc / Samba / smb. Kon f
Aceasta va deschide editorul de text nano și ne va permite să facem câteva modificări simple. Dacă este prima dată când utilizați nano, vă recomandăm să verificați Ghidul pentru începători pentru Nano, editorul de text din linia de comandă Linux . Ar trebui să vedeți ceva de genul următor în fereastra terminalului:
Nano este complet controlat de tastatură, utilizați tastele săgeată pentru a muta cursorul în locația pe care doriți să o editați. Pe măsură ce faceți clic în jos prin setările de configurare, veți vedea câteva care merită luate în considerare sau modificate.
Primul este identificatorul grupului de lucru, implicit grupul de lucru = WORKGROUP. Dacă folosiți un alt nume pentru grupul dvs. de lucru de acasă, mergeți mai departe și săgeți pentru a schimba acest lucru acum, altfel lăsați-l ca implicit.
Următoarea noastră oprire este să activăm autentificarea utilizatorului pentru spațiul nostru de stocare samba, altfel oricine are acces general la rețeaua noastră (cum ar fi utilizatorii de Wi-Fi invitați) va putea intra direct. Derulați în jos în fișierul de configurare Samba până când ajungeți la secțiunea care citește:
Eliminați simbolul # din linia securitate = utilizator (evidențiindu-l cu cursorul și apăsând ștergeți) pentru a activa verificarea numelui de utilizator / parolei pentru partajările Samba.
În continuare, vom adăuga o secțiune complet nouă în fișierul de configurare. Derulați până în partea de jos a fișierului și introduceți următorul text:
[Backup]
comentariu = Folder de rezervă
cale = / media / USBHDD1 / parts
utilizatori valabili = @utilizatori
grup de forță = utilizatori
crea masca = 0660
director mask = 0771
numai citire = nu
Notă : Orice ai pune între paranteze în linia de sus va fi numele folderului așa cum apare în partajarea de rețea. Dacă doriți un alt nume în afară de „Backup”, este momentul să îl editați.
Apăsați CTRL + X pentru a ieși, apăsați Y când vi se cere dacă doriți să păstrați modificările și să suprascrieți fișierul de configurare existent. Când reveniți la promptul de comandă, introduceți următoarea comandă pentru a reporni daemonii Samba:
sudo /etc/init.d/samba restart
În acest moment, trebuie să adăugăm un utilizator care poate accesa acțiunile samba ale Pi. Vom crea un cont cu copiile de siguranță ale numelui de utilizator și parolelor backups4ever. Vă puteți crea numele de utilizator și parola oricum doriți. Pentru aceasta, tastați următoarele comenzi:
sudo useradd backup -m -G utilizatoribackup-uri sudo passwd
Vi se va solicita să introduceți parola de două ori pentru a confirma. După confirmarea parolei, este timpul să adăugați „copii de rezervă” ca utilizator legitim Samba. Introduceți următoarea comandă:
sudo smbpasswd -a backup-uri
Introduceți parola pentru contul de rezervă când vi se solicită. După ce ați creat contul de utilizator și parola, nu este nevoie să reporniți din nou daemon-ul Samba, deoarece am instruit deja să fie în căutarea utilizatorilor autentificați. Acum putem să urcăm pe orice mașină compatibilă Samba din rețeaua noastră și să testăm conectivitatea la partajarea de rețea.
De la o mașină Windows din apropiere am deschis exploratorul de fișiere Windows, am făcut clic pe Rețea, am confirmat că numele gazdei RASPBERRYPI se afla în grupul de lucru WORKGROUPS și am făcut clic pe folderul partajat Backup-uri:
Când vi se solicită, introduceți acreditările pe care le-ați creat în pasul anterior (dacă urmați linia de rând, datele de conectare sunt backup-uri și parola backups4ever).
Odată ce acreditările dvs. sunt acceptate, veți fi tratat într-un dosar gol, deoarece nu există încă nimic în distribuire. Pentru a verifica de două ori totul funcționează fără probleme, să creăm un fișier simplu de pe computerul cu care am testat conexiunea (în cazul nostru, desktop-ul Windows 7). Creați un fișier txt astfel:
Acum, din linia de comandă pe care am lucrat tot acest timp, să verificăm dacă fișierul pe care l-am creat pe desktop-ul Windows apare corect în directorul de partajare pe care l-am creat. La linia de comandă tastați următoarea comandă:
cd / media / USBHDD1 / partseu sunt
hello-is-it-me-you-are-looking-for.txt se află în director; experimentul nostru direct de partajare simplă este un succes!
Înainte de a părăsi această secțiune a tutorialului, mai avem un singur lucru de făcut. Trebuie să ne configurăm Pi-ul astfel încât, atunci când repornește, să monteze automat hard disk-urile externe. Pentru a face acest lucru, trebuie să lansăm editorul nano și să facem o editare rapidă. La linia de comandă tastați:
sudo nano / etc / fstab
Aceasta va deschide tabelul sistemelor de fișiere în nano, astfel încât să putem adăuga câteva intrări rapide. În cadrul editorului nano adăugați următoarele linii:
/dev/sda1 /media/USBHDD1 auto noatime 0 0/dev/sda2 /media/USBHDD2 auto noatime 0 0
Apăsați CTRL + X pentru a ieși, apăsați Y pentru a salva și suprascrieți fișierul existent.
Dacă utilizați doar un singur hard disk pentru partajarea simplă a rețelei fără redundanță, atunci asta este! Ați terminat cu procesul de configurare și puteți începe să vă bucurați de NAS de putere ultra-mică.
Configurarea NAS Raspberry Pi pentru redundanță simplă a datelor
Până în prezent, Raspberry Pi NAS este conectat la rețea, transferul de fișiere funcționează, dar lipsește un lucru flagrant. Acel hard disk secundar este configurat, dar este complet inactiv.
În această secțiune a tutorialului vom folosi două instrumente Linux simple, dar puternice, rsync și cron, pentru a configura Raspberry Pi NAS pentru a efectua o oglindă de date în fiecare noapte de la / share / folderul de pe unitatea primară la / share / folder de pe unitatea secundară. Aceasta nu va fi o oglindire a datelor RAID în timp real, dar o copie de rezervă zilnică (sau semi-zilnică) a datelor pe unitatea secundară este o modalitate excelentă de a adăuga un alt nivel de securitate a datelor.
Mai întâi, trebuie să adăugăm rsync la instalarea noastră Rasbian. Dacă este prima dată când utilizați rsync și doriți să obțineți o imagine mai bună a comenzii, vă recomandăm să verificați Cum se folosește rsync pentru a face backup datelor dvs. pe Linux .
În linia de comandă introduceți următoarea comandă:
sudo apt-get install rsync
Odată ce rsync este instalat, este timpul să configurați un job cron pentru a automatiza procesul de copiere a fișierelor de pe USBHDD1 în USBHDD2. În linia de comandă introduceți următoarea comandă:
crontab -e
Comanda vă va deschide tabelul de planificare cron în editorul de text nano, care ar trebui să vă fie destul de familiar în acest moment al tutorialului. Continuați și derulați în jos până la partea de jos a documentului și introduceți următoarea linie:
0 5 * * * rsync -av --delete / media / USBHDD1 / parts / media / USBHDD2 / shares /
Această comandă specifică faptul că în fiecare zi la ora 5:00 AM (partea 0 5), în fiecare zi (* * *, wild card-uri în an, lună, zi), dorim ca rsync să compare cele două directoare, copiind totul de pe HDD1 la HDD2 și ștergerea a ceva din directorul de rezervă care nu se mai potrivește cu ceva din directorul primar - adică dacă avem un fișier de film pe HDD1 pe care îl ștergem, dorim ca acel fișier să fie eliminat din copie de rezervă la următoarea sincronizare.
Partea importantă a configurării acestei comenzi este că selectați o oră care nu interferează cu nicio altă activitate de rețea în folderele partajate pe care le-ați putea programa. De exemplu, dacă utilizați Raspberry Pi NAS ca destinație de rezervă pentru un fel de software automat care vă copiază fișierele pe NAS la ora 05:00 în fiecare dimineață, atunci trebuie fie să reglați timpul de backup în software-ul de backup, fie să aveți nevoie pentru a regla timpul pentru jobul cron de pe Pi - dar nu puteți avea atât copiile de rezervă la distanță care aruncă datele pe partajarea de rețea, cât și Raspberry Pi încercând să sincronizeze acele date între unitățile locale în același timp.
După ce ați introdus intrarea crontab, faceți clic pe CTRL + X pentru a ieși și a salva fișierul. Dacă doriți să rulați rsync imediat pentru a obține mai rapid datele oglindite și pentru a face lucrarea cron inițială puțin mai ușoară pe sistem, continuați și introduceți aceeași comandă rsync pe care ați pus-o în crontab la linia de comandă astfel:
rsync -av --delete / media / USBHDD1 / parts / media / USBHDD2 / share /
Asta e! Tot ce trebuie să faceți în acest moment este să faceți check-in pe Raspberry Pi în următoarea zi sau două pentru a vă asigura că lucrarea programată se declanșează conform așteptărilor și datele de la
/ USBHDD1 / parts /
apare în
/ USBHDD2 / parts /
.
De aici înainte, tot ceea ce puneți în NAS-ul dvs. alimentat de Raspberry Pi va fi oglindit zilnic pe ambele unități de disc.
Înainte de a părăsi subiectul complet, iată câteva articole suplimentare How-To Geek pe care ați putea dori să le consultați pentru a adăuga mai mult pumn la noul dvs. NAS Raspberry Pi alimentat:
- Cum să faceți o copie de rezervă a contului Gmail utilizând computerul Ubuntu —Deși instrucțiunile sunt pentru Ubuntu, puteți modifica cu ușurință tema pentru ca Raspbian să transforme Pi NAS într-o mașină de backup automat pentru e-mail.
- Ce fișiere ar trebui să faceți backup pe computerul dvs. Windows? —Dacă nu sunteți sigur ce fișiere ar trebui să faceți backup pe NAS, acesta este un loc bun pentru a începe.
- Cum să faceți o copie de rezervă de la distanță a datelor dvs. gratuit cu CrashPlan — CrashPlan este o aplicație gratuită de backup disponibilă pentru mașinile Windows, Mac și Linux care face mai ușoară programarea copiilor de rezervă regulate pe un NAS.
Ai un proiect Raspberry Pi pe care ți-ar plăcea să-l vezi întreprinzând? Mare sau mic, ne place să ne jucăm cu Pi - sună-te în comentarii cu ideile tale.