Sådan omdannes en Raspberry Pi til en Low-Power Network Storage Device
Bland sammen en Raspberry Pi og et drys af billige eksterne harddiske, og du har opskriften på en ultra-lav-strøm og altid-on-netværk lagerenhed. Læs videre, som vi viser dig, hvordan du opretter din egen Pi-baserede NAS.
Hvorfor vil jeg gøre dette?
Fordelen ved at have en altid lagret netværkslagringsenhed er, at det er yderst bekvemt at få dine data (eller backupdestination) altid tilgængelige for computere både indenfor og uden for dit netværk. Ulempen er i de fleste tilfælde, at du bruger en god mængde strøm for at gøre det lettere.
Vores kontorserver, for eksempel, kører 24/7 og forbruger næsten $ 200 værd af magt om året. En Raspberry Pi-baseret netværkslagringsenhed på den anden side forbruger omkring $ 5 værd strøm pr år.
Vi vil være den første til at give dig, at en fuldverdig server vil have mere lagerplads og evnen til at gøre mere arbejde (som f.eks. Transcoding en multi-terabyte videosamling i et rimeligt tidsrum). For de fleste mennesker er princippet om at have en altid-på-computer et eller andet sted i huset imidlertid at fungere som en filserver og et fil-backup-lager. Til sådanne opgaver er Raspberry Pi mere end magtfuld nok og vil spare dig for et stykke af forandring i strømforbrug.
Hvad har jeg brug for?
Denne vejledning bygger på vores tidligere vejledning: HTG Guide til Kom i gang med Raspberry Pi og vi antager, at du allerede har gennemført det - med andre ord har du allerede din Raspberry Pi, fik den tændt, fastgjort til en mus og tastatur , og du har installeret Raspbian på den.
Ud over det gear, du skal bruge fra vejledningen Kom i gang med Raspberry Pi, har du kun følgende hardware:
- En (minimum) USB-ekstern harddisk til simple netværksbackups og filservering
eller
- To (minimum) USB eksterne harddiske til lokal data redundans
Det er det! Hvis du bare vil have et simpelt netværksmonteret drev, behøver du kun en harddisk. Vi anbefaler stærkt at bruge mindst to harddiske for at give mulighed for lokal (ved Raspberry Pi) data redundans. I forbindelse med denne øvelse bruger vi et matchende par Seagate Backup Plus 1TB bærbare eksterne harddiske. De er super små, kræver ikke en ekstern strømkilde, og var til salg, da vi shoppede efter dele.
Du kan bruge eksterne harddiske, du har på hånden, men det er ideelt at bruge små strømdrev, hvis det er muligt, da hele projektets tema er at oprette en lille og lav strøm NAS, du kan bare stikke ud af vejen og Glem at.
Inden vi fortsætter, er der et par designvalg, vi lavede med hensyn til, hvordan vi konfigurerer vores Raspberry Pi NAS, som du bør være opmærksom på. Mens de fleste brugere vil følge med nøjagtigt som vi har gjort det, kan du ønske at tilpasse specifikke trin for bedre at passe til dine behov, og hvordan du bruger computere på dit netværk.
For det første bruger vi NTFS-formaterede harddiske. Skal Raspberry Pi NAS svigte af en eller anden grund eller Vi ønsker hurtigt at kopiere information via en USB 3.0-forbindelse i stedet for via netværket. At have NTFS-formaterede diske gør det enkelt at tage de bærbare USB-drev, vi bruger på NAS-bygningen, og tilslut dem direkte til en af de mange Windows maskiner vi bruger hver dag.
For det andet bruger vi Samba til vores netværksaktier igen, fordi det er nemt at integrere Raspberry Pi NAS med vores overvejende Windows-netværk.
Forberedelse og montering af eksterne harddiske
Når du har samlet hardwareen sammen med Kom-i-gangen med Raspberry Pi-vejledningen for at komme op til fart (og kører Raspian) er det på tide at begynde at oprette din Pi som NAS.
Den første rækkefølge er at tilslutte harddiske til Raspberry Pi (eller den vedhæftede USB-hub afhængigt af din konfiguration og om harddisken er selvdrevet eller eksternt drevet). Når harddiske er tilsluttet og Pi er tændt, er det tid til at arbejde.
Bemærk: Vi bruger to harddiske. Hvis du har besluttet kun at bruge en harddisk, skal du bare se bort fra alle kommandoer i dette afsnit, der er beregnet til at montere / ændre eller på anden måde interagere med den anden harddisk.
Vi skal gøre alt vores arbejde inden for terminalen. Som sådan kan du enten arbejde direkte på din Raspberry Pi ved hjælp af LXTerminal i Raspian eller du kan SSH ind i din Raspberry Pi ved hjælp af et værktøj som Putty. Hvorvidt det er fint.
Når du er på kommandolinjen, er det første, du skal gøre, at tilføje støtte til Rasbian til NTFS-formaterede diske. For at gøre det skal du skrive følgende kommando:
sudo apt-get install ntfs-3g
Det tager et øjeblik eller to for pakkerne at downloade, pakke ud og installere. Når NTFS-pakken er installeret, er det tid til at kigge efter de ikke-monterede partitioner på de vedhæftede eksterne harddiske.
sudo fdisk -l
I det mindste skal du se to diske, hvis du har tilføjet i en sekundær disk til dataspejling (som vi har), skal du se tre som sådan:
Den første disk / Dev / mmcb1k0
er SD-kortet inde i Raspberry Pi, der huser vores installation af Raspbian. Vi kommer til at forlade den ene helt alene.
Den anden disk, / Dev / sda
er vores første 1TB eksterne harddisk. Den tredje disk, / Dev / sdb
er vores anden 1TB eksterne harddisk. De aktuelle partitioner, vi er interesseret i på disse to diske, er / Sda1 /
og / Sdb1 /
, henholdsvis. Noter navnene på harddisken.
Før vi kan montere drevene, skal vi oprette en mappe til at montere drevene til. For nemheds skyld vil vi simpelthen lave en mappe kaldet USBHDD1 og USBHDD2 for hvert drev. Først skal vi lave drevene. På kommandolinjen indtaste følgende kommandoer:
sudo mkdir / media / USBHDD1
sudo mkdir / media / USBHDD2
Når du har oprettet de to mapper, er det tid til at montere de eksterne drev til hvert sted. Igen på kommandolinjen indtaste følgende kommandoer:
sudo mount -t auto / dev / sda1 / media / USBHDD1
sudo mount -t auto / dev / sdb1 / media / USBHDD2
På dette tidspunkt har vi de to eksterne harddiske monteret henholdsvis til henholdsvis USBHDD1 og USBHDD2. Det er på tide at tilføje i en bestemt mappe til begge drev for at holde vores delte mapper (for at holde tingene nede og opdele vores arbejde på drevene). Indtast følgende kommandoer:
sudo mkdir / media / USBHDD1 / aktier
sudo mkdir / media / USBHDD2 / aktier
Nu er det tid til at installere Samba, så vi kan få adgang til lageret fra andre steder på netværket. På kommandolinjen indtast:
sudo apt-get install samba samba-common-bin
Når du bliver bedt om at fortsætte type Y og indtaste. Læn dig tilbage og slap af, da alt udpakker og installerer. Når Samba-pakken er færdig med at installere, er det tid til at lave en lille konfiguration. Før vi gør noget andet, lad os lave en sikkerhedskopi af Samba-konfigurationsfilen, hvis vi skal vende tilbage til den. Skriv kommandolinjen på kommandolinjen:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old
Dette skaber simpelthen en sikkerhedskopi af konfigurationsfilen med filnavnet smb.conf.old og efterlader det i samme mappe som den oprindelige konfigurationsfil.
Når vi har oprettet backupen, er det tid til at lave nogle grundlæggende redigeringer i Samba config filen. Indtast følgende på kommandolinjen:
sudo nano /etc/samba/smb.conf
Dette åbner nano tekst editor og giver os mulighed for at foretage nogle enkle ændringer. Hvis dette er din første gang ved hjælp af nano, anbefaler vi stærkt, at du tjekker The Beginner's Guide til Nano, Linux Command-Line Text Editor. Du skal se noget som følger i dit terminalvindue:
Nano er helt tastaturstyret, brug piletasterne til at flytte markøren til det sted, du vil redigere. Når du klikker ned gennem konfigurationsindstillingerne, kan du se et par værd at notere eller ændre.
Den første er arbejdsgruppen identifikator, som standard arbejdsgruppe = WORKGROUP. Hvis du bruger et andet navn til din hjemmearbejdsgruppe, skal du gå videre og pile over for at ændre det nu, ellers lade det være som standard.
Vores næste stop er at aktivere brugergodkendelse til vores samba-opbevaring, ellers vil enhver med generel adgang til vores netværk (som gæst Wi-Fi-brugere) kunne gå lige ind. Rul ned i Samba-konfigurationsfilen, indtil du kommer til afsnit, der lyder:
Fjern symbolet # fra sikkerheds = brugerlinjen (ved at markere det med markøren og trykke på slet) for at aktivere brugernavn / adgangskodeverifikation for Samba-aktierne.
Dernæst vil vi tilføje et helt nyt afsnit til konfigurationsfilen. Rul hele vejen ned til selve bunden af filen og indtast følgende tekst:
[Backup]
comment = Backup Folder
sti = / media / USBHDD1 / aktier
gyldige brugere = @users
force group = brugere
opret maske = 0660
directory mask = 0771
læs kun = nej
Bemærk: Uanset hvad du sætter i parenteserne i øverste linje, bliver navnet på mappen som det vises på netværksdelen. Hvis du vil have et andet navn end "Backup", er det tid til at redigere det.
Tryk på CTRL + X for at afslutte, tryk på Y, når du bliver spurgt, om du vil beholde ændringer og overskrive den eksisterende konfigurationsfil. Når tilbage ved kommandoprompten indtastes følgende kommando for at genstarte Samba-dæmonerne:
sudo /etc/init.d/samba genstart
På dette tidspunkt skal vi tilføje i en bruger, der har adgang til Pi's samba-aktier. Vi skal oprette en konto med brugernavnet backup og password backups4ever. Du kan oprette dit brugernavn og din adgangskode, uanset hvad du ønsker. For at gøre det skal du skrive følgende kommandoer:
sudo useradd backups -m -G brugere
sudo passwd backups
Du bliver bedt om at indtaste adgangskoden to gange for at bekræfte. Efter at have bekræftet adgangskoden er det på tide at tilføje "backups" som en legitim samba-bruger. Indtast følgende kommando:
sudo smbpasswd-a backups
Indtast adgangskoden til backup-kontoen, når du bliver bedt om det. Når du har oprettet brugerkontoen og adgangskoden, behøver du ikke genstarte Samba-dæmonen igen, da vi allerede har instrueret det at være på udkig efter autentificerede brugere. Vi kan nu hoppe på enhver Samba-kompatibel maskine på vores netværk og testforbindelse til netværksdelingen.
Fra en nærliggende Windows-maskine åbnede vi Windows Fil Explorer, klikket på Netværk, bekræftede at værtsnavnet RASPBERRYPI var i arbejdsgruppen Work WORKGROUPS og klikket på den delte mappe Backups:
Når du bliver bedt om det, skal du indtaste de legitimationsoplysninger, du oprettede i det foregående trin (hvis du følger efter linje for linje, er login sikkerhedskopier, og adgangskoden er sikkerhedskopier4).
Når dine legitimationsoplysninger er accepteret, bliver du behandlet til en tom mappe, da der ikke er noget i aktien endnu. For at dobbelttjekke alt, hvad der fungerer glat, lad os lave en simpel fil fra den computer, vi testede forbindelsen til (i vores tilfælde, Windows 7-skrivebordet). Opret en txt fil som sådan:
Nu, fra kommandolinjen har vi arbejdet hele tiden, lad os kontrollere, om den fil, vi oprettede på Windows-skrivebordet, vises korrekt i den delekatalog, vi oprettede. Skriv kommandolinjen på kommandolinjen:
cd / medie / USBHDD1 / aktier
ls
hej-er-det-mig-du-er-ser-for.txt er i mappen; vores enkle delte katalogeksperiment er en succes!
Før vi forlader dette afsnit i tutorialen, har vi kun en ting mere at gøre. Vi skal konfigurere vores Pi, så når den genstarter, vil den automatisk montere de eksterne harddiske. For at gøre det har vi brug for at slukke nano-editoren og lave en hurtig redigering. Ved kommandolinjens type:
sudo nano / etc / fstab
Dette åbner filsystemtabellen i nano, så vi kan tilføje et par hurtige poster. Inden for nano-editoren tilføjes følgende linjer:
/ dev / sda1 / media / USBHDD1 auto noatime 0 0
/ dev / sda2 / media / USBHDD2 auto noatime 0 0
Tryk på CTRL + X for at afslutte, tryk på Y for at gemme og overskrive den eksisterende fil.
Hvis du kun bruger en enkelt harddisk til simpel netværksdeling uden redundans, så er det det! Du er alle færdige med konfigurationsprocessen og kan begynde at nyde din ultra-low power NAS.
Konfiguration af din Raspberry Pi NAS til Simple Data Redundancy
Hidtil er vores Raspberry Pi NAS tilsluttet til netværket, filoverførselsarbejder, men der mangler en skarp ting. Den sekundære harddisk er konfigureret, men sidder helt inaktiv.
I dette afsnit af tutorialet bruger vi to enkle men kraftfulde Linux-værktøjer, rsync og cron, til at konfigurere vores Raspberry Pi NAS til at udføre et natligt spejl fra / aktier / mappe på primærdrevet til / shares / mappe på den sekundære drev. Dette kommer ikke til at være en real-time RAID-lignende dataspejling, men en daglig (eller halv daglig) data backup til det sekundære drev er en fantastisk måde at tilføje endnu et lag datasikkerhed.
For det første skal vi tilføje rsync til vores Rasbian-installation. Hvis dette er første gang du bruger rsync, og du gerne vil få et bedre overblik over kommandoen, anbefaler vi at tjekke ud Sådan bruges rsync til sikkerhedskopiering af dine data på Linux.
På kommandolinjen indtast følgende kommando:
sudo apt-get install rsync
Når rsync er installeret, er det tid til at oprette et cron-job for at automatisere processen med kopiering af filer fra USBHDD1 til USBHDD2. På kommandolinjen indtast følgende kommando:
crontab -e
Kommandoen åbner din cron planlægningstabel i nano tekst editoren, som skal være ret bekendt for dig på dette tidspunkt i vejledningen. Fortsæt og rul ned til bunden af dokumentet og indtast følgende linje:
0 5 * * * rsync -av --delete / media / USBHDD1 / shares / media / USBHDD2 / shares /
Denne kommando specificerer, at hver dag klokken 5:00 (0 5 del), hver eneste dag (* * *, vilde kort i året, måned, dagspunkter), vil vi have rsync at sammenligne de to mapper, kopiere alt fra HDD1 til HDD2 og slette alt i backupkataloget, der ikke længere matcher noget i den primære mappe - dvs. hvis vi har en filmfil på HDD1, sletter vi, vi vil også have den fil fjernet fra backupen ved den næste synkronisering.
Den vigtige del om konfiguration af denne kommando er, at du vælger en tid, der ikke forstyrrer nogen anden netværksaktivitet til de delte mapper, du måtte have planlagt. Hvis du for eksempel bruger din Raspberry Pi NAS som backup destination for en slags automatiseret software, der kopierer dine filer til NAS klokken 5 om morgenen, så skal du enten justere backuptidspunktet i din backup software eller du har brug for at justere tiden for cronjobbet på Pi-men du kan ikke have begge de eksterne backup-dumpingdata på netværket, og Raspberry Pi forsøger at synkronisere disse data mellem lokale drev på samme tid.
Når du har indtastet crontab-indtastningen, skal du klikke på CTRL + X for at afslutte og gemme filen. Hvis du ønsker at køre rsync straks for at få dataene spejlvendt hurtigere og gøre det første cron-job lidt lettere på systemet, skal du gå videre og indtaste den samme rsync-kommando, du lægger i crontab på kommandolinjen som sådan:
rsync -av --delete / media / USBHDD1 / shares / media / USBHDD2 / shares /
Det er det! Alt du skal gøre på dette tidspunkt er at tjekke ind på din Raspberry Pi i løbet af den næste dag eller to for at sikre, at det planlagte job afbrændes som forventet, og dataene fra / USBHDD1 / aktier /
vises i / USBHDD2 / aktier /
.
Herved kommer alt, hvad du lægger ind i din Raspberry Pi-powered NAS, afspejles dagligt på tværs af begge harddiske.
Før vi forlader emnet helt, her er nogle ekstra How-To Geek-artikler, som du måske vil tjekke for at tilføje mere slag til din nye Raspberry Pi-powered NAS:
- Sådan sikkerhedskopieres din Gmail-konto ved hjælp af din Ubuntu-pc. Selvom instruktionerne er til Ubuntu, kan du nemt ændre dem til Rasbian for at gøre din Pi NAS til en automatisk e-mail backup maskine.
- Hvilke filer skal du sikkerhedskopiere på din Windows-pc? -Hvis du ikke er sikker på, hvilke filer du skal sikkerhedskopiere til din NAS, er dette et godt sted at starte.
- Sådan fjerner du sikkerhedskopiering af dine data gratis med CrashPlan-CrashPlan er en gratis backup-applikation tilgængelig til Windows, Mac og Linux maskiner, der gør det nemt at planlægge regelmæssige sikkerhedskopier til en NAS.
Har du et Raspberry Pi-projekt, du gerne vil se os gøre? Stor eller lille, vi elsker at spille rundt med Pi-lyden i kommentarerne med dine ideer.