Indholdsfortegnelse:

2 hindbærpis til let og billig Remote RAID: 19 trin
2 hindbærpis til let og billig Remote RAID: 19 trin

Video: 2 hindbærpis til let og billig Remote RAID: 19 trin

Video: 2 hindbærpis til let og billig Remote RAID: 19 trin
Video: ЗАТРОЛИЛ ЧИТЕРА И ЗАБАНИЛ ЕГО В STANDOFF 2 2024, November
Anonim
2 Raspberry Pis til let og billig Remote RAID
2 Raspberry Pis til let og billig Remote RAID
2 Raspberry Pis til let og billig Remote RAID
2 Raspberry Pis til let og billig Remote RAID

Formål

  1. I tilfælde af en hændelse derhjemme, vil jeg være i stand til at gendanne mine store digitale dokumenter (billeder, identitetspapirer osv.) Og eventuelt dele dem.
  2. Jeg vil dele denne løsning med en anden (en jeg stoler på, forældre eller ven)
  3. Jeg vil ikke være afhængig af en offentlig sky (abonnement, gebyrer, udviklende GTC osv.)

Princip

  1. Opret 2 identiske lagermaskiner, læg dem 2 forskellige steder (f.eks. 2 huse).
  2. Tildel en dedikeret lagerplads til hvert sted på hver maskine.
  3. Synkroniser regelmæssigt de 2 lagerpladser.

Forbrugsvarer

Hardware

Hver maskine har:

  • 1x Raspberry Pi 4 B 1GB
  • 1x kasse til Raspberry Pi 4
  • 1x strømforsyning USB C 5V 3A
  • 1x SD -kort Kingston SDC10/16GB
  • 1x NAS HDD 1To WD Red Mobile
  • 1x HDD-boks BX-2525U3

Software Windows

  • balenaEtcher
  • Raspbian buster desktop fuld
  • mobaxterm
  • VNC viewer (valgfri)

Pakker Raspbian

  • Rsync
  • samba

Trin 1: Fordele og ulemper

Fordele og ulemper
Fordele og ulemper

Fordele

  1. Denne løsning er billig: Jeg har ingen abonnementsgebyrer, og hardware er overkommelig.
  2. Denne "remote RAID" er ret let at gøre. Jeg behøver ikke yderligere materiale eller værktøj til at gøre det.
  3. Raspberry Pi kan bruges til yderligere applikationer som mediecenter (kodi, …) eller domotic (jeedom, domoticz, …).
  4. Mine data er ikke tilgængelige på en offentlig sky, der kan være et mål for massiv datapiratry.
  5. Ved hjælp af en HDD på 1To er det gennemsnitlige elektriske forbrug det samme som en sky.
  6. Firewall i min router og SSH -kryptering af min forbindelse sikrer dataudvekslingerne.

Ulemper/forbedringer

  1. En anden har en kopi af mine dokumenter. I mit tilfælde er denne person fra min familie, så jeg er ligeglad.
  2. Jeg bruger standard "pi" -kontoen med en dedikeret adgangskode til begge maskiner. Jeg kunne sikre adgangen lidt mere ved at bruge en separat specifik konto på hver side i stedet for "pi" -kontoen.
  3. Jeg stoler på min internetudbyder og SSH -kryptering for sikkerheden ved forbindelsen mellem de 2 huse. Forskning kan foretages for at forbedre sikkerhedsniveauet.
  4. For nu har jeg kun lavet 2 partitioner pr. Drev. En mindre 3. partition (~ 5Go) kan være nyttig til anden Raspbian -aktivitet for at bevare µSD -kortet.

Trin 2: Forbered SD: Upload Raspbian

Fra en computer (Windows 10 i mit tilfælde) skal du følge den officielle installationsguide (https://www.raspberrypi.org/downloads/raspbian/) for at installere "Raspbian Buster med desktop".

Tilføj en tom fil med navnet "ssh" i "/boot/" disk

Tilføj en fil med navnet "wpa_supplicant.conf" i "/boot/" disk

Åbn wpa_supplicant.conf og indtast teksten:

land = USA

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 netværk = {ssid = "MyWiFiNetwork" psk = "aVeryStrongPassword" key_mgmt = WPA-PSK}

Gem og luk filen.

Trin 3: Forbered SD: Tilpas kortet

Forbered SD: Tilpas kortet
Forbered SD: Tilpas kortet

Tilføj en tom fil med navnet "ssh" i "/boot/" disk

Tilføj en fil med navnet "wpa_supplicant.conf" i "/boot/" disk

Åbn wpa_supplicant.conf og indtast teksten:

land = USA

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 netværk = {ssid = "MyWiFiNetwork" psk = "aVeryStrongPassword" key_mgmt = WPA-PSK}

Gem og luk filen.

Trin 4: Forbered Raspberry Pi

Indsæt dit SD -kort i Pi

Tænd Raspberry Pi, vælg en måde at åbne et skrivebord på:

  1. Brug af hdmi -kabel, skærm, tastatur og mus
  2. Brug af VNC fra din computer.

For yderligere information, besøg

Trin 5: Vej 1: Opret forbindelse til Pi ved hjælp af skærm, tastatur, mus

Måde 1: Opret forbindelse til Pi ved hjælp af skærm, tastatur, mus
Måde 1: Opret forbindelse til Pi ved hjælp af skærm, tastatur, mus
Måde 1: Opret forbindelse til Pi ved hjælp af skærm, tastatur, mus
Måde 1: Opret forbindelse til Pi ved hjælp af skærm, tastatur, mus

Tilslut Raspberry Pi-porten HDMI0 til en skærm med et mikro-hdmi til hdmi-kabel

Tilslut et usb -tastatur og en mus (eller et trådløst mini -tastatur som en "Rii Mini i8 Wireless")

Tilslut USB C -strømforsyningen, og tænd for Raspberry Pi.

Raspbian starter på din skærm.

Når skrivebordet vises, skal du besvare konfigurationspanelet for at afslutte konfigurationen af din Pi.

Trin 6: Vej 2: Opret forbindelse til Pi ved hjælp af VNC fra din computer

Måde 2: Opret forbindelse til Pi ved hjælp af VNC fra din computer
Måde 2: Opret forbindelse til Pi ved hjælp af VNC fra din computer
Måde 2: Opret forbindelse til Pi ved hjælp af VNC fra din computer
Måde 2: Opret forbindelse til Pi ved hjælp af VNC fra din computer
Måde 2: Opret forbindelse til Pi ved hjælp af VNC fra din computer
Måde 2: Opret forbindelse til Pi ved hjælp af VNC fra din computer

Tilslut Raspberry Pi til dit ethernet -netværk (via wifi eller med et kabel).

Åbn Mobaxterm (eller kitt) fra din computer, start en ny ssh -forbindelse (login pi, password hindbær) og konfigurer din Pi:

ssh pi@hindbær_ip

sudo raspi-config

  • i Interfacing option / VNC: indstil Ja
  • i Avancerede indstillinger / opløsning: indstil DMT -tilstand 82 1920x1080 60Hz 16: 9
  • i Avancerede indstillinger / GL-driver: indstil G1 Legacy Original ikke-GL desktop-drev

Gem og afslut raspi-config

Genstart Pi:

sudo genstart

Åbn VNC Viewer fra din computer, og opret forbindelse til Pi ved hjælp af login -pi, password hindbær: Pi -skrivebordet skal vises.

Besvar konfigurationspanelet for at afslutte konfigurationen af din Pi.

Når du har ændret Pi -adgangskoden, kan VNC -forbindelsen lukke. Genstart det ved hjælp af din nye adgangskode.

Trin 7: Forbered harddisken

Forbered HDD
Forbered HDD
Forbered HDD
Forbered HDD
  1. Tilslut harddisken til din computer.
  2. Åbn Windows -partitionshåndtering, vælg din HDD, og opret 2 NTFS -partitioner (eller 3, hvis du vil have en lille ledig plads til at bevare µSD -kort). For eksempel navngiver jeg de 2 dele "loic" og "vincent"
  3. Tilslut harddisken til Pi: Raspbian skal automatisk montere 2 diske på skrivebordet. Drevene er knyttet til mappen/media/pi/loic/og/media/pi/vincent/

Trin 8: Konfigurer Rsync: Opret Synchro Script

Konfigurer Rsync: Opret Synchro Script
Konfigurer Rsync: Opret Synchro Script

åbne en prompt på Pi -skrivebordet

Opret et script i/home/pi/:

mkdir/home/pi/scriptsnano/home/pi/scripts/SB_sync

indtast teksten:

#!/bin/sh

######### EN KONFIGURER ########### ip_distante = "192.168.0.19" port_distant = "xxxxx" media_local = "/media/pi/loic" media_distant = "pi@$ { ip_distante}:/media/pi/loic "machine_locale =" RPi4_loic "machine_distante =" RPi4_vincent "############################### ## log_local = "/home/pi/SB_sync_logs" log_distant = "pi@$ {ip_distante}:/home/pi/SB_sync_logs" currentDate = `date+"%Y-%m-%d%T "` mkdir -p/ home/pi/SB_sync_logs #synchro de $ {machine_locale} $ {media_local}/vers $ {machine_distante} $ {media_distant}/echo $ currentDate> $ {log_local} /0.synchro_en_cours _ $ {machine_locale} _vers _ $ {machineoist " Synkronisering en cours: de $ {machine_locale} $ {media_local}/ vers $ {machine_distante} $ {media_distant}/ ">> $ {log_local} /0.synchro_en_cours _ $ {machine_locale} _vers _ $ {machine_distante} $ {machine_distante} $ { media_distant}/">> $ {log_distant} /0.synchro_en_cours _ $ {machine_locale} _vers _ $ {machine_distante} ekko" Compte `whoami`"> $ {log_local}/1. $ {machine_locale} _vers _ $ {machine_distante}.log ekko "--------- -Debut: "` date +"%Y-%m-%d%T" `" ---------- ">> $ {log_local}/1. $ {Machine_locale} _vers _ $ {machine_distante}.log/usr/bin/rsync -avhPS --chmod = a+rwx --delete -e "ssh -p $ {port_distant}" $ {media_local}/$ {media_distant}/2> & 1 >> $ {log_local} /1.${machine_locale}_vers_${machine_distante}.log

echo "---------- Fin:" `date +"%Y-%m-%d%T "` "" ---------- ">> $ {log_local}/ 1.. $ {Machine_locale} _vers _ $ {machine_distante}.log

rm $ {log_local} /0.synchro_en_cours _ $ {machine_locale} _vers _ $ {machine_distante}

Konfigurer linje 3 til 7:

  • erstat "loic" og "vincent" med dit drevs navn
  • port_distant: brug nu 22 som fjernport. På det sidste trin bliver du nødt til at erstatte det med en anden værdi efter eget valg (som eksempel: 34567)

gem fil og afslut.

Trin 9: Konfigurer Rsync: Udfør en synkronisering en gang om dagen

Åbn crontab i prompten:

sudo crontab -u pi -e

i slutningen af filen, tilføj en cron:

0 1 * * */usr/bin/flock -xn /tmp/flocktmp.lock -c "/home/pi/scripts/SB_sync"

I denne cron lanceres scriptet SB_sync hver dag kl. 01.00. Vælg den time, du ønsker, men skift den mellem de 2 maskiner, så de 2 synkroner udføres den ene efter den anden.

Gem og luk filen.

Trin 10: Forbered Samba

Samba forbinder et linux -lager til Windows -netværk.

Åbn en prompt og installer pakkerne:

sudo apt-get install samba samba-common-bin -y

Godkend konto "pi" for at få adgang til Samba:

sudo smbpasswd -a pi

Gem standard Samba -konfigurationsfil:

cp /etc/samba/smb.conf /etc/samba/smb.old

Åbn filen:

sudo nano /etc/samba/smb.conf

Og i slutningen af filen skal du tilføje disse linjer for at konfigurere dit drev til at dele:

[DOKUMENTER LOIC]

kommentar = NAS de loic sti =/media/pi/loic gyldige brugere = @brugere force group = brugere opretter maske = 0660 biblioteksmaske = 0775 skrivebeskyttet = ingen gennemsyn = ja offentlig = ja

Gem fil og afslut.

Trin 11: [Valgfrit] Samba: Konfigurer læseadgang til netværksdrevet Vincent

Åbn Samba -konfigurationsfilen:

sudo nano /etc/samba/smb.conf

Og i slutningen af filen skal du tilføje disse linjer for at konfigurere det andet drev, du vil have adgang til:

[DOKUMENTER VINCENT]

kommentar = backup de vincent path =/media/pi/vincent valid users = @brugere force group = brugere opretter maske = 0660 biblioteksmaske = 0775 skrivebeskyttet = ja kan gennemses = ja offentligt = ja

Gem fil og afslut.

Trin 12: [Valgfrit] Samba: Adgang til log

Åbn Samba -konfigurationsfilen:

sudo nano /etc/samba/smb.conf

Og i slutningen af filen skal du tilføje disse linjer for at få adgang fra Windows til synkronstatus:

[LOG SYNCHRO] comment = "logs de synchro entre machines"

path =/home/pi/SB_sync_logs/valid users = @users force group = brugere opretter maske = 0660 biblioteksmaske = 0771 skrivebeskyttet = ja gennemsigtig = ja offentlig = ja

Gem fil og afslut.

Trin 13: [Valgfrit] Samba: Skjul ubrugelig mappe "/home/pi"

Åbn Samba -konfigurationsfilen:

sudo nano /etc/samba/smb.conf

Find følgende linjer i filen, og tilføj ";" i begyndelsen at kommentere det:

; [hjem]

; comment = Home Directories; gennemses = nej; skrivebeskyttet = ja; opret maske = 0700; biblioteksmaske = 0700; gyldige brugere = %S

Gem fil og afslut.

Trin 14: Adgang til netværksdrev fra Windows

Adgang til netværksdrev fra Windows
Adgang til netværksdrev fra Windows

Åbn en stifinder fra Windows -computer.

Klik på "Netværk" og opdater vinduet.

En computer med navnet på din Rapberry Pi skal vises.

Åbn den ved hjælp af kontoen "pi" og din adgangskode.

Du skal se de mapper, der tidligere er tilføjet i Samba -konfigurationsfilen.

Trin 15: Klargør den 2. maskine

Din første maskine er klargjort.

Gentag de foregående trin for den 2. maskine og erstat (f.eks.) "Loic" med "vincent".

Når de 2 maskiner er klargjort, skal du udveksle ssh -nøgle for at godkende adgang mellem dem, se næste trin.

Trin 16: Opret SSH mellem lokal og fjernmaskine

For at forenkle delingen af SSH -nøgler skal hver Raspberry Pi være forbundet til det samme ethernet -netværk.

På hver Raspberry Pi skal du åbne en prompt på Pi -skrivebordet og indtaste:

ssh -keygen -q -t rsa -b 2048 -N ''

ssh-copy-id pi@IP_of_other_raspberry

Trin 17: Test synkroniseringen

Test synkroniseringen
Test synkroniseringen
Test synkroniseringen
Test synkroniseringen
Test synkroniseringen
Test synkroniseringen

Dine 2 maskiner er klar.

Du kan teste synkroniseringen på din Windows -computer:

  1. tilføj en fil i dit lokale netværksdrev (dvs. / Rpi4-loic / documents loic / test / test.txt),
  2. kør scriptet på dit lokale Pi -skrivebord (udfør SB_sync i/home/pi/scripts)
  3. Kontroller, at din fil vises i backup-netværksdrevet (dvs. / Rpi4-vincent / documents loic / test / test.txt).

Du skal kunne læse og skrive filer i / Rpi4-loic / documents loic / test \, men kun læse filer i / Rpi4-vincent / documents loic / test \.

Det næste og sidste trin er at flytte den "eksterne" maskine inde i et netværk et andet sted og konfigurere en forbindelse mellem de 2 routere via internettet.

Trin 18: Konfigurer internetruter

I mit tilfælde, for den lokale maskine derhjemme, abonnerer jeg på en internetadgang inklusive en router og en fast IP.

For fjernmaskinen er internetudbyderen den samme, så konfigurationen er lettere, og jeg har ikke brug for DNS.

I mit hjem:

  • I min router opretter jeg en havns rute fra "remote_internet_fixed_IP" ved "port_34567" til "my_raspberry_IP" ved port "22"
  • I min hindbær, i/home/pi/scripts/SB_sync, erstatter jeg værdien "port_distant" 22 "med" port_34567"

På det fjerne sted:

  • I routeren opretter jeg en havns rute fra "my_internet_fixed_IP" ved "port_34567" til "my_raspberry_IP" ved port "22"
  • I den fjerne hindbær, in/home/pi/scripts/SB_sync, erstatter jeg værdien "port_distant" 22 "med" port_34567"

Til din ansøgning:

  • Du skal udskifte IP'erne og port_34567 med dine egne.
  • I tilfælde af dynamisk internet -IP skal du abonnere på en DNS.

Med hjælp fra den fjerne hindbærs ejer gentages testen fra det foregående trin.

Færdig!

Trin 19: Bibliografi

Installer Raspbian på µSD -kort

Tilpas µSD -kort efter formatering (SSH og WiFi)

Brug af din Raspberry Pi

Raspberry Pi Sync med rysnc ved feralhosting

Specifik SSH -port til Rsync

Installer og brug Samba

Anbefalede: