Heb je een paar externe harde schijven liggen rond en een Raspberry Pi? Maak er een goedkoop, laagvermogen netwerkgebonden aangesloten opslagapparaat van. Hoewel het eindresultaat zeker niet zo indrukwekkend zal zijn als een $ 500 NAS-apparaat zoals het Synology DiskStation Synology DiskStation DS413j NAS Review en Giveaway Synology DiskStation DS413j NAS Review en Giveaway Om de Synology DiskStation DS413j te bellen is een Network Attached Storage (NAS) -apparaat een vernederend understatement - maar ja, het dient bestanden over het netwerk. Zeggen dat het RAID-functionaliteit heeft is ook enigszins oneerlijk ... Lees meer, het geeft je een beetje netwerkopslag - vooral handig als je moe wordt van het doorsnijden van al je gegevens door de nieuwsgierige ogen van de NSA - je kunt dit op zolder verbergen.
Je hebt een Raspberry Pi nodig De Top 5 Verbazingwekkende toepassingen voor je Raspberry Pi-computer De top 5 Verbazingwekkende toepassingen voor je Raspberry Pi-computer Ik heb onlangs mijn Raspberry Pi ontvangen na lang wachten - en ik heb best wat plannen voor het. Het probleem is dat ik niet helemaal zeker weet welk project ik als eerste wil proberen. Terwijl ... Lees meer, natuurlijk, en een of twee reserveschijven. Kleinere 2, 5 "-schijven kunnen direct via USB worden gevoed, maar we hebben een gevoede hub nodig, omdat de stroomvoorziening via de USB-poorten van de RPi gewoon niet genoeg is voor hen. U kunt ook een USB-thumbdrive of zelfs een SD-kaart gebruiken. Ik heb vandaag een mix van een USB-harde schijf en een thumbdrive gebruikt, maar de procedure is identiek.
Met slechts één schijf kunt u nog steeds een gedeeld netwerkopslaggebied maken, maar met twee kunt u gegevensredundantie instellen voor het geval er een fout optreedt.
Bereid uw schijven voor
Begin met het formatteren van uw schijven als NTFS vanaf een bureaublad. Dit is voor het gemak, zodat als er iets fout gaat, we ze kunnen loskoppelen van de NAS en de gegevens nog steeds vanaf elke pc kunnen lezen.
We kunnen ze opmaken uit de Raspberry Pi, maar het zal een paar uur duren en is veel sneller vanaf een desktop. Doe dat nu.
Om SSH te configureren en de rootgebruiker in te schakelen, maakt u eerst een wachtwoord voor rootgebruiker:
sudo -i
passwd root
(typ uw wachtwoord)
Voer vervolgens het raspi-config- script uit vanaf de opdrachtregel, met behulp van sudo of nadat u zich hebt afgemeld en weer als root. Via het menu met geavanceerde opties schakelt u SSH in .
Na het herstarten zou je in staat moeten zijn om in te loggen vanaf een andere machine in het netwerk met (gebruik Putty als je op Windows werkt)
SSH root @ [IP-adres]
Nadat u bent ingelogd, moet u uitzoeken welke apparaten uw extra schijven zijn. Ik ga ervan uit dat je er twee gaat gebruiken voor gegevensredundantie. Type
fdisk -l
om de aangesloten opslagapparaten te vermelden. Je zou zoiets moeten zien.
de / dev / mmc- partities zijn u Pi-besturingssysteem, mmc verwijzend naar de SD-kaart . Het is verwarrend dat de / dev / sda1 en / dev / sdb1 eigenlijk niets te maken hebben met de SD-kaart, en dat zijn in feite de aangesloten USB-drives. (Oorspronkelijk "SCSI-apparaat", maar betekent nu elk aangesloten SATA- of opslagapparaat)
Installeer ntfs-3g voor Linux zodat we toegang hebben tot de NTFS geformatteerde Windows-schijven.
apt-get install ntfs-3g
Maak vervolgens mappen om te gebruiken als koppelpunten en koppel de schijven vervolgens. Ik houd het hier eenvoudig en verwijs naar hen als 1 en 2 .
mkdir / media / 1 mkdir / media / 2 mount -t auto / dev / sda1 / media / 1 mount -t auto / dev / sdb1 / media / 2 mkdir / media / 1 / shares mkdir / media / 2 / shares
Samba
Vervolgens zullen we Samba opzetten. Samba is het protocol voor netwerkuitwisseling dat door Windows wordt gebruikt (en de nieuwste OSX Mavericks, in feite).
apt-get install samba apt-get installeer samba-common-bin cp /etc/samba/smb.conf /etc/samba/smb.conf.bak nano /etc/samba/smb.conf
Als u niet bekend bent met dit soort configuratiebestanden, betekent een # aan het begin van de regel dat deze is becommentarieerd en daarom niet is ingesteld of geconfigureerd. Als u iets wilt inschakelen, kunt u een nieuwe regel toevoegen of een bestaande regel annuleren om deze actief te maken.
We beginnen met het inschakelen van gebruikersbeveiliging; druk op CTRL-W en typ "beveiliging" om het relevante gedeelte te vinden. Verwijder het # -symbool uit de regel die zegt
beveiliging = gebruiker
Blader ten slotte naar beneden (of houd CTRL V ingedrukt tot je daar bent) en voeg zoveel netwerkshares toe als je wilt. Gebruik het volgende formaat:
[test] comment = Test share path = / media / 1 / shares geldige gebruikers = @users force group = gebruikers maken mask = 0660 directory mask = 0771 read only = nee
Overweeg echter alleen de eerste gekoppelde schijf - we zullen dit later met de tweede delen synchroniseren om redundantie te bieden.
Als u klaar bent, drukt u op CTRL X en vervolgens op y om op te slaan.
Start Samba vervolgens opnieuw op met de volgende opdracht.
service samba opnieuw opstarten
Voeg nu een nieuwe gebruiker toe aan je Pi, aangenomen dat je niet dezelfde login wilt (vervang "jamie" voor je eigen gebruiker)
useradd jamie -m -G gebruikers
Nadat u de volgende opdracht hebt ingevoerd, wordt u gevraagd om een wachtwoord voor uw gebruiker in te voeren en dit te bevestigen.
passwd jamie
Dan kunnen we doorgaan en deze systeemgebruiker toevoegen aan Samba. U moet uw wachtwoord nogmaals bevestigen, twee keer.
smbpasswd-een jamie
Ga je gang en test nu de netwerkshare - deze zou zichtbaar moeten zijn vanaf je andere machines (Windows of Mac), en je zou er bestanden naar moeten kunnen schrijven.
Het enige probleem op dit punt is dat de schijven worden gedeactiveerd wanneer u de Pi herstart. Installeer autofs om dit op te lossen.
apt-get install autofs nano /etc/auto.master
Voeg de volgende regel toe onder + auto.master
/ media / /etc/auto.ext-usb --timeout = 10, standaardinstellingen, user, exec, uid = 1000
Nu zou je veilig moeten kunnen herstarten zonder alles te verbreken
Gegevensredundantie
Ervan uitgaande dat u twee schijven hebt geïnstalleerd, kunnen we nu een automatisch script instellen voor het synchroniseren van gegevens van de 1e schijf naar de 2e, waardoor we een back-up kunnen bieden voor het geval er een fout optreedt. We zullen hiervoor het rsync-hulpprogramma gebruiken.
apt-get install rsync crontab -e
De crontab in Linux is een manier om taken te automatiseren; Ik heb hier kort over gesproken om u te laten zien hoe u back-ups van websites automatiseert. Automatiseer uw Wordpress-back-up met eenvoudige Shell-scripts en CRON Automatiseer uw Wordpress-back-up met eenvoudige Shell-scripting & CRON De laatste keer dat we het hadden over back-ups van Wordpress, liet ik u zien hoe ongelooflijk gemakkelijk het was om maak een back-up van uw hele database en bestanden via SSH met slechts een paar opdrachten. Deze keer ga ik laten zien ... Lees meer. Voeg de volgende regel toe:
30 5 * * * rsync -av - delete / media / 1 / shares / media / 2 / shares /
Het nummeringsschema wordt als volgt gebruikt:
minuut | uur | dag van de maand | maand | dag van de week
Dus in onze nieuw toegevoegde regel, zal het rsync commando om 5.30 uur worden uitgevoerd, elke dag (het * jokerteken betekent "elke", dus "elke dag van elke maand")
Als u door wilt gaan en de back-up onmiddellijk wilt uitvoeren, plakt u de rsync-opdracht zo in
rsync -av - delete / media / 1 / shares / media / 2 / shares /
Afhankelijk van wat u in de gedeelde map plaatst, kan het enkele seconden of langer duren om u een rapport te sturen. Het mooie van rsync is dat het weet welke bestanden worden bijgewerkt, toegevoegd of moeten worden verwijderd. Ga je gang en probeer opnieuw hetzelfde commando. Het zou meteen moeten eindigen, omdat het weet dat er niets is veranderd.
Dat is alles, klaar - je hebt nu je eigen snelle en vuile NAS. Ja, het heeft misschien niet alle flitsende functies van een geschikte NAS, maar het klopt goed en voor veel minder stroomverbruik.
Heb je problemen? Laat het ons weten in de comments en ik zal zien wat ik kan doen, maar zorg ervoor dat je de nieuwste Raspian-afbeelding gebruikt.