Innehållsförteckning:

En annan Pi på väggen: 16 steg (med bilder)
En annan Pi på väggen: 16 steg (med bilder)

Video: En annan Pi på väggen: 16 steg (med bilder)

Video: En annan Pi på väggen: 16 steg (med bilder)
Video: Kamera-LAMPA med spårning och identifiering av en person. 2024, November
Anonim
Ännu en Pi på väggen
Ännu en Pi på väggen
Ännu en Pi på väggen
Ännu en Pi på väggen

Denna instruerbara handledning visar dig hur du bygger en NAS (nätverksansluten lagring) med en Raspberry Pi (RasPi) och två hårddiskar. Denna handledning är tänkt att ge dig detaljerade introduktioner om hur

  • montera en RasPi, två hårddiskar och hela strömförsörjningen på ett kort som sedan kan monteras på väggen i ditt hem
  • programmera RasPi, så att den fungerar som

    • en NAS
    • och / eller en skrivarserver (om så önskas)
  • hantera Linux och visa dig några grundläggande kommandon (om du inte har arbetat med det tidigare (precis som det inte har gjort)

Denna handledning är indelad i följande fyra kapitel:

  1. HW-inställning
  2. Grundläggande om Debian/Linux
  3. System- och NAS -installation
  4. Gör säkerhetskopior av RasPi -system
  5. Några tips och råd

Steg 1: Förberedelser - tips och inköpslista

Förberedelser - tips och inköpslista
Förberedelser - tips och inköpslista

Innan vi börjar, några viktiga tips som gör att du inte får problem:

  • Första tipset: Innan du köper ett externt hårddiskhölje med en SATA till USB -kontroll -> kontrollera om styrenheten klarar den mängd lagringsvolym du vill använda! Varför: Jag använde hårddiskar som sitter inuti ett hölje (som ett fodral för med hårddisken som en extern enhet) som har en SATA-till-USB-kontroller. Det finns många olika styrenheter, där de särskilt skiljer sig åt i mängden hårddisklagringsvolym de kan hantera. Jag använde 4 TB-hårddiskar och först köpte jag en styrenhet som bara kunde hantera upp till 2 TB, så jag var tvungen att byta den
  • Andra ledtråden: Se till att strömförsörjningen som du vill driva din RasPi minst kan leverera 5VDC och 2A.

Viktig anmärkning: Varken jag eller instructables.com är ansvariga för innehållet bakom länkarna som jag har infogat i denna instruktion.

Därefter vill jag ge dig en liten inköpslista för de delar du behöver:

  • en Raspberry Pi (ska fungera med version 2 eller 3, jag använder en RasPi version 2)
  • ett 8 GB SD -kort med minst klass 4 -hastighet
  • ett hus för RasPi
  • en strömförsörjning, 5VDC / 2A, med en mikro-USB-kontakt
  • 2x externa hårddiskar (eller SSD) med en USB -kontakt eller 2x HDD (eller SSD) med en SATA -anslutning
  • 2x hölje med en SATA till USB -kontroller (behövs inte om du har en extern hårddisk med ett USB -uttag)
  • en träskiva på ca 50 cm x 30 cm och en tjocklek på 2 cm, färgen är ditt val;)
  • ett eluttag med minst 3 uttag (helst har eluttaget samma färg som ditt kort)
  • 5 till 6 metallfästen (som du kan köpa på din lokala hårdvara / byggvaruhus (t.ex. som den här)) Konsolerna ska vara ungefär en tumme med bredd och de ska ha ett skruvhål
  • perforerad tejp av metall (bara saken på spolen här)
  • 12 skruvar som har en längd på cirka 50-80% av brädet med (i mitt fall ca 1, 5 cm)
  • 1 m krymprör som passar över fästena och metalltejpen
  • ethernet (LAN) kabel
  • 1 påse Sugru (för att täcka hålens kanter och få det att se snyggt ut)
  • 1 påse med minst 50 kabelklämmor
  • 1 nagel med minst 50 bitar, naglarna får inte vara längre än 1, 5 cm (!)
  • 1 påse med tvåkomponentslim
  • valfritt: 10 filtdynor (t.ex. dessa)

Även för programvaruinstallationen behöver du

  • en skärm som kan anslutas till HDMI (kan också vara din TV)
  • ett USB -tangentbord
  • en USB -mus

Steg 2: Montering av fästena

Montering av fästena
Montering av fästena
  1. Skär 4 bitar med var och en ca 8 cm från perforerad tejp av metall.
  2. Böj tejpbitarna så att en passar runt kanten på varje hårddiskfodral och runt RasPi
  3. Rikta in hårddiskfodralen på brädet som du vill (t.ex. som jag gjorde på mitt bräde) och placera fästena under hårddiskfodralen och RasPi, men bara på undersidan (vilket är den sida som kommer att vända nedåt senare, när brädan hänger på väggen). HDD -fodralen och RasPi kommer att stå på dessa fästen senare.
  4. Markera fästenas position. Tejpen kan placeras grovt eftersom den lätt kan böjas senare. Ta sedan bort hårddiskfodralen och Pi.
  5. Sätt det krympande röret på fästena och metalltejpen och slå igenom ett hål där skruvhålet är. Var noga med att bara göra små hål, eftersom hålen kommer att vidgas vid uppvärmning av det krympande röret.
  6. Värm upp det krympande röret med en varmluftspistol eller en tändare.
  7. Montera fästena (nu täckta med krymprör) på brädet med skruvar. Gör nu samma sak för perforerad tejp av metall.
  8. Böj perforerad tejp av metall runt HDD -fodralens övre kant och RasPi

Nu har du ett bräde med en RaspBerry Pi och två hårddiskar monterade på den.

För mindre repor på fodralen och mindre skramlande ljud från hårddiskarna kan du också lägga några filtkuddar ovanpå skruvarna.

Steg 3: Bind ned kablar

Knyt fast kablar
Knyt fast kablar

Tanken i detta steg är att ha ledningarna dolda bakom brädet.

  • Borra 2 hål genom brädet cirka 3 - 4 tumbredder från där hårddiskarnas USB- och ströminlopp är så att kablarna kan löpa smidigt genom hålet.
  • Se till att USB-kontakten och strömkontakten kan gå igenom hålet med mycket utrymme kvar (ca 3-4 mm på varje sida)
  • Täck hålen med Sugru och medan du gör det ska du alltid kontrollera om båda kontakterna fortfarande lätt kan gå igenom hålet (senare när Sugru har torkat blir det mycket svårare att vidga hålet igen)
  • Efter att Sugru har torkat, sätt igenom alla kontakter
  • Nu måste du klämma fast de återstående kablarna på baksidan. Jag är säker på att du kan göra ett bättre jobb än jag gjorde på bilden:)

Steg 4: Montera Power Strip

Montering av Power Strip
Montering av Power Strip

Montera nu strömlisten med tvåkomponentslimet på brädet. Du kan grova upp ytan på kraftuttaget och brädet om du vill.

Och ja: Du behöver tvåkomponentslim, för annars kommer din strömkabel att falla av hela tiden;)

Steg 5: Montera det hela på väggen

Montera det hela på väggen
Montera det hela på väggen
  • Skär nu ytterligare 2 stycken med 10 cm vardera av perforerad tejp av metall
  • Lägg lite krymprör på tejpbitarna.
  • skruva varje tejpbit på ett bakre hörn av brädet (precis som på bilden)
  • skruva fast de andra ändarna på väggen (för en betongvägg måste du först montera pluggar, precis som jag var tvungen att)

Steg 6: Klämma ner de utgående kablarna

Klämma ner de utgående kablarna
Klämma ner de utgående kablarna

Slutligen kläm ner resten av kablarna som går från kortet till eluttaget och routern/omkopplaren.

Steg 7: Installera NOOBS på Raspberry Pi

Installera NOOBS på Raspberry Pi
Installera NOOBS på Raspberry Pi

Innan vi börjar programmera Raspberry Pi måste vi sätta operativsystemet (OS) på SD -kortet som ska gå in i RasPi.

Vi kommer att använda en enklare version av Raspbian som heter "NOOBS". Den här om mycket enklare att installera eftersom det kommer att finnas en guide som guidar dig genom processen.

Du kanske också vill läsa instruktionerna för installationen här.

  1. Ladda ner den senaste versionen av NOOBS på https://www.raspberrypi.org/downloads/noobs/Jag rekommenderar att du tar zip -versionen av "Offline och nätverksinstallation".
  2. Extrahera zip -filen
  3. Formatera SD -kortet helt
  4. Kopiera alla extraherade filer från zip till SD -kortet.
  5. Sätt in SD -kortet i RasPi
  6. Anslut en skärm till HDMI -porten och ett tangentbord och mus till USB -portarna.
  7. Slå på Raspi.

Efter det

  • följ installationsanvisningarna.
  • välj "Raspbian" och glöm inte att välja ditt land och tangentbordstilen längst ner (det är lite komplicerat att ändra det senare med fel tangentbordslayout)

Steg 8: Konfigurera Raspbian - Översikt

Innan vi kan börja använda vår RasPi korrekt måste vi ställa in några saker. Till exempel kanske du inte vill använda en separat skärm hela tiden. Ett alternativ är en VNC, som låter dig fjärrstyra RasPi från din dator. Följande steg kommer att vara:

  1. Konfigurera nätverksanslutningarna (LAN/Wifi)
  2. Ställ in VNC *)
  3. Gör VNC -start automatiskt
  4. Formatera hårddiskarna till ett mer effektivt Linux -filsystem (ext4) och stäng av lat journalföring.
  5. Har hårddiskarna automatiskt monterade vid start (anslut dem med programvara till Raspbian)
  6. Konfigurera Samba -servern (en process som låter dig komma åt innehållet på hårddiskarna via fjärrkontroll från en dator)
  7. Ställ in filsäkerhetskopieringssystem med andra/backup -hårddisk.

*) Obs: Med en VNC (Virtual Network Computing) kan du styra till din RasPi via fjärrkontroll från din dator. Du kommer att se allt som visas om en skärm är ansluten, du har kontroll över musen och tangentbordet … allt. Förutom att du sitter på din dator kanske någon annanstans.

Eftersom du vill att din RasPi ska vara på väggen utan skärm är det viktigt att ha en VNC.

Steg 9: Konfigurera nätverksanslutningarna (LAN/Wifi)

En bra guide om hur du konfigurerar din LAN / Wifi -anslutning hittar du här.

För att berätta för Raspbian vilken typ av anslutning du vill använda måste du skriva den i en speciell fil. Följande inställningar konfigurerar en LAN -anslutning. Om du vill konfigurera Wifi använder du de inställningar som beskrivs här.

Öppna ett skal och skriv in

sudo nano/etc/network/interfaces

Som öppnar filen "gränssnitt" i textredigeraren "nano". Skriv följande rader i redigeraren

auto lo

iface lo inet loopback iface eth0 inet dhcp värdnamn "myRasPi" # "myRasPi" kan bytas ut med ett valfritt namn allow-hotplug wlan0 iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp

(Efter varje # följer en kommentar). Spara sedan och avsluta med "Ctrl + X" och "Enter".

Nu måste vi ange våra referenser för LAN/Wifi -anslutningen. Därför måste du öppna

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

och lägg in dina referenser. Ersätt "YOURSSID" med namnet på ditt LAN/Wifi -nätverk och "YOURPASSWORD" med motsvarande nätverkslösenord. Åh, och byt landskod om det behövs:)

land = DE

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "YOURSSID" psk = "YOURPASSWORD" # Protokollstyp kan vara RSN (för WP2) och WPA (för WPA1) proto = RSN # alltid använd RSN # Nyckelhanteringstyp key_mgmt = WPA-PSK # Parvis kan vara CCMP (för WPA2) och TKIP (för WPA1) parvis = CCMP # Auktoriseringsalternativ bör vara ÖPPET för både WPA1/WPA2 auth_alg = OPEN

}

Resten av inställningarna ska vara exakt som beskrivits ovan. Speciellt "parvis = CCMP" och "proto = RSN".

Steg 10: Konfigurera VNC

Konfigurera VNC
Konfigurera VNC

Andra bra guider om hur du konfigurerar en VNC är Guide1, Guide2 och Guide3.

Innan du installerar VNC -programvaran bör du förmodligen göra en uppdatering:

sudo apt-get update && apt-get upgrade

Ladda sedan ner och installera appen "tightVNCserver"

sudo apt-get install tightvncserver

När det är klart anger du ett lösenord för den här VNC -servern

vncpasswd

som senare kommer att tillfrågas på din dator när du loggar in på RasPi via fjärrkontrollen.

För att testa om VNC -servern redan fungerar, ring en tightVNC -serversession på RasPi med

tightVNCserver

Gå nu till din dator och ladda ner tightVNC viewer härifrån och installera den (vid installation kan du avmarkera alternativet "tightVNCserver", du behöver den inte på din dator).

Du kan antingen kontrollera i Windows eller på din router vilken IP-adress din RasPi har (om du arbetar med DHCP). Starta sedan TightVNC-Viewer på din dator och skriv in IP-adressen för RasPi, sedan ett kolon och sedan portnumret som vanligtvis är 5901.

Till exempel: PasPi IP -adressen är 192.168.1.50 då är fjärrvärden 192.168.1.50:5901.

Du bör kunna se skärmen på din RasPi.

Steg 11: Gör VNC -start automatiskt

Vi har startat en VNC men om du startar om RasPi kommer sessionen att vara borta och du kan inte ansluta till din RasPI via fjärrkontroll från din dator längre.

För att VNC -serversessionen ska starta automatiskt måste du ladda ner ett skript här, vilket ska visa detta:

#!/bin/sh

### BEGIN INIT INFO # Ger: tightvncserver # Required-Start: $ local_fs # Required-Stop: $ local_fs # Standard-Start: 2 3 4 5 # Standard-Stop 0 1 6 # Short-Description: Start/stop trightvncserver # END INIT INFO # Mer information se: # https://www.penguintutor.com/linux/tightvnc # Anpassa den här posten # Ställ in USER -variabeln på användarens namn för att starta tightvncserver under export USER = 'pi' ### Slutanpassning krävs eval cd ~ $ USER -fallet "$ 1" i start) su $ USER -c '/usr/bin/tightvncserver: 1' echo "Starta TightVNC -server för $ USER";; stop) pkill Xtightvnc echo "Tightvncserver stoppad";; *) echo "Användning: /etc/init.d/tightvncserver {start | stop}" avsluta 1;; esac exit 0

Viktigt är början #!/Bin/sh. Efter nedladdning måste du kopiera innehållet. Öppna sedan en ny fil med nano

sudo nano /etc/init.d/tightvncserver

och klistra in innehållet i den här filen. För att Raspbian ska kunna starta den här filen vid start måste vi ändra åtkomsträttigheterna med

sudo chown root: root /etc/init.d/tightvncserver

gör filen körbar med

sudo chmod 755 /etc/init.d/tightvncserver

och lägg till filen på standardkörnivåerna (så att den kommer att hittas och köras av Raspbian)

sudo update-rc.d tightvncserver som standard

Och du är klar:)

Nu bör din RasPi starta en tightVNCserver -session vid start. Kolla om det fungerar. Gå annars i detalj och jämför också med de andra guiderna.

Steg 12: Formatera hårddiskar

Så snart du har anslutit dina hårddiskar till RasPi kan deras namn eller index hittas med

sudo fdisk -l

En lista dyker upp med hårddisknamnen som har formen "/dev/sda" eller "/dev/sdb".

För att först kunna formatera hårddiskarna

sudo mkfs.ext4 -E lazy_itable_init = 0, lazy_journal_init = 0 /dev /sdX

Var ska du byta ut X för HDD -index som du har i fdisklistan, t.ex. sda.

Nu måste du vänta ett tag innan hårddisken formateras.

Gör sedan samma sak för den andra hårddisken (backup -hårddisken)

Obs! Alternativet för lat journalföring gör att formateringen tar ganska lång tid för en 4 TB hårddisk. Men senare, när du startar din RasPi, kommer hårddiskarna att booten och monteras mycket snabbare. Läs läget om det här.

Steg 13: Montera hårddiskarna automatiskt vid start

Ha hårddiskarna automatiskt monterade vid start
Ha hårddiskarna automatiskt monterade vid start

Om du startar hårddiskarna automatiskt eller manuellt måste du i båda fallen först ladda ner några appar

sudo apt-get -y installera ntfs-3g hfutils hfsprogs exfat-fuse

Ntfs-3g är en app som är nödvändig för att läsa NTFS-filsystemet som är mycket vanligt i Windows. Om du till exempel ansluter din hårddisk till USB -porten måste du först montera hårddisken innan du kan komma åt data. Låt oss anta i detta exempel att hårddisken har ett NTFS -filsystem. Sedan monterar du hårddisken med

sudo mount -t ntfs -3g -o utf8, uid = pi, gid = pi, noatime /dev /sda /media /usbstick

När du har kört den här koden kommer hårddisken att monteras i/media/usbstick/.

Raspbian monterar redan nu nyligen anslutna enheter som USB -minnen eller hårddiskar automatiskt i / media / mappen. Men om du vill se till att hårddiskarna alltid är korrekt monterade, följ stegen nedan:

Ta reda på UUID (unikt enhetsnamn) på dina hårddiskar genom att skriva

sudo blkid -o list -w /dev /null

Ange UUID för båda hårddiskarna i /etc /fstab genom att ringa nano med

sudo nano/etc/fstab/

och lägg till följande rader i fstab-listan:

UUID = xxxxxxxx /mnt /myDrive ext4 standard 0

UUID = ååååååå /mnt /myDrive_mirror ext4 standard 0

istället för xxxxxxxx och yyyyyyyyy, skriv in den riktiga UUID: n för dina hårddiskar och ändra även "myDrive" till vad du än kallade dina monteringsmappar.

Varning: Ta inte bort något som redan har skrivits in i den här filen! Lägg bara till nya rader.

Som ett alternativ till den här självstudiehandboken Guide 1, Guide 2 eller Guide 3 berättar också hur du (automatiskt eller manuellt) monterar enheter så att du kan få åtkomst till deras innehåll.

Steg 14: Konfigurera Samba Server

Som redan nämnts "Samba tillhandahåller fil- och utskriftstjänster för olika Microsoft Windows -klienter […]" (Länk) I vårt fall skapar vi en Samba -server för att ge alla datorer (dvs från din bärbara dator) åtkomst till filerna på hårddisken som är ansluten till RasPi.

För att starta en Samba -server måste vi först installera den på RasPi

sudo apt-get install samba samba-common-bin

Sedan måste vi redigera konfigurationerna genom att anropa konfigurationsfilen med nano

sudo nano /etc/samba/smb.conf

och i den här filen i raden

# säkerhet = användare

ta bort föregående "'#". Detta gör att användaren kan ställa in ett Samba -serverlösenord (vilket rekommenderas). Det här är lösenordet som alla användare som vill komma åt filerna på hårddisken måste veta.

Nu definierar vi ett lösenord genom att ringa

sudo smbpasswd -a pi

och ange ett lösenord.

Nu måste vi berätta för Samba -servern vilka filer han måste ge åtkomst till

sudo chown -R pi: pi /mnt /myDrive

där du ska ersätta /mnt /myDrive med sökvägen där din hårddisk är monterad.

Det finns några fler konfigurationer vi måste lägga till i smb.conf. Lägg till följande rader längst ned på smb.conf

[MyNetworkDrive]

sökväg =/mnt/myDrive skrivbar = ja gäst ok = ingen arbetsgrupp = WORKGROUP surfbar = ja

där sökvägen visar igen var din hårddisk är monterad, anger skrivbalen om användare får ändra och lägga till filer (skrivåtkomst). gäst ok = inget betyder att alla användare som vill komma åt filerna på hårddisken måste känna till lösenordet. Bakom arbetsgruppen måste du lägga till namnet på din Windows -arbetsgrupp som du använder (standard är troligen "WORKGROUP"). Bläddringsbar = ja påskyndar saker och ting lite om du till exempel går igenom många bilder väldigt snabbt.

När du är klar med att ändra konfigurationsfilen startar du om Samba -servern med

sudo /etc/init.d/samba starta om

och testa från din Windows -dator om du har tillgång till dina filer.

Guide 1 ger dig en alternativ handledning om hur du konfigurerar allt detta.

Steg 15: Konfigurera system för säkerhetskopiering av filer

Nu har vi två hårddiskar på en Raspberry Pi på ett bräda på väggen … men hittills har vi bara använt en hårddisk. Jo, för att vi ska använda den andra hårddisken som en backup -enhet som regelbundet kommer att synkroniseras med den första av RasPi. Detta innebär att till exempel varje dag alla ändringar som du har gjort på din första hårddisk speglas/kopieras till den andra hårddisken.

För att göra det måste vi installera appen rsync genom att skriva

sudo apt-get uppdatering

sudo apt -get install hdparm sudo hdparm -C /dev /sda

Nu testar vi först hela processen på en dummy -fil. För detta skapar vi en dummy -fil med

sudo nano /mnt/myDrive/TestFile.txt

och skriv in något godtyckligt. Stäng sedan nano med "Strg+x" och låt nu göra rsync direkt synkronisera båda hårddiskarna

rsync -av --delete /mnt /myDrive /mnt /myDrive_mirror

Om allt går bra bör vi hitta TestFile.txt på den andra hårddisken (medelvärdet i /mnt /myDrive_mirror). I det följande kommer jag att kalla /mnt /myDrive "källan" och /mnt /myDrive_mirror "målet".

Alternativet -av består av kommandona

  • -v som visar dig i skalet vad han kopierar/synkroniserar
  • -a som gör alla följande kommandon

    • -r kopierar alla underkataloger
    • -l kopierar symboliska länkar
    • -p behåller åtkomsträttigheter för källfilerna
    • -t håller tidsstämplar för källfilerna
    • -g behåller gruppåtkomsträttigheterna för källfilerna
  • --delete som jämför filerna på både källa och mål och tar bort filer på målet om de inte längre finns på källan.

Nu har vi framgångsrikt synkroniserat vår källa och målenhet. Nu vill vi att rsync ska göra det regelbundet. För det måste vi skapa en crontab

sudo crontab -e

Detta kommando öppnar en rsync -konfigurationsfil i nano (var noga med att använda kommandot "sudo". Annars kommer Raspbian åt fel fil!). Crontab innehåller samma kommando som vi använde tidigare för att synkronisera vår källa och vårt mål. Men i crontab finns det ett prefix som säger till rsync när han måste synkronisera våra data. Prefixet består av följande nummer

Minuttimmar DayInTheMonth Month DayOfTheWeek rsync-Command

Följande crontab -exempel bör rensa upp saker

00 05 * * * rsync -av --delete /mnt /myDrive /mnt /myDrive_mirror

vilket innebär att din RasPi synkroniserar källa och mål varje dag klockan 05:00.

Alternativa självstudier ges här eller här.

Steg 16: Bra att veta om hantering av Linux

Något om Linux (vad jag har lärt mig):

  • på RasPi kör vi en specialversion av Linux som heter "Raspbian" som återigen är en specialversion av "Debian" som är baserad på Linux -kärnan
  • Raspbian är öppen källkod och kommer med en mängd förinstallerade program:

    • en webbläsare: IceWeasel (en avskalad version av Firefox)
    • Python 2 & 3
    • Minecraft
    • LibreOffice
    • Wolfram & Mathematica
    • PDF-Viewer
    • Java IDE
    • nano (en enkel redaktör)
  • Linux eller Raspbian drivs mestadels av kommandon du skriver i kommandofönstret (kallas "skal")
  • om du är en admin (eller i linux "super user") får du ändra och ändra många saker, förutsatt att du skriver "sudo" före varje kommando ("sudo" = "super user do") Exempel: sudo nano sökväg/myfile super använde samtalsredigerare nano för att öppna "myfile" i mappen "sökväg"

Andra viktiga uppmaningar till Raspbian:

sudo apt-get update && apt-get upgrade

ring för uppdateringar (internetuppkoppling krävs)

sudo apt-get install XYZ

ladda ner och installera paket XYZ (bara ett exempel) på RasPi

Om du vill säkerhetskopiera ditt Linux -operativsystem på din RasPi följer du dessa steg:

  1. Ladda ner Win32DisImager
  2. Stäng av din RasPi och ta ut SD -kortet och lägg det i din dator och kör Win32DiskImager.
  3. Välj en plats (med mappknappen) där du vill lägga din säkerhetskopia (han kommer att generera en bild av hela SD-kortet och lägga den i form av en img-fil på hårddisken på din dator.
  4. Skapa en säkerhetskopia genom att trycka på "Läs". (Detta kan ta ett tag)
  5. Gjort.

Rekommenderad: