Cuprins:
- Provizii
- Pasul 1: Pro și Contra
- Pasul 2: Pregătiți SD: Încărcați Raspbian
- Pasul 3: Pregătiți SD: Personalizați cardul
- Pasul 4: Pregătiți Raspberry Pi
- Pasul 5: Modul 1: Conectați-vă la Pi folosind ecranul, tastatura, mouse-ul
- Pasul 6: Modul 2: Conectați-vă la Pi utilizând VNC de pe computer
- Pasul 7: Pregătiți HDD-ul
- Pasul 8: Configurați Rsync: Creați un script Synchro
- Pasul 9: Configurați Rsync: Efectuați o sincronizare o dată pe zi
- Pasul 10: Pregătiți Samba
- Pasul 11: [Opțional] Samba: configurați accesul de citire la unitatea de rețea Vincent
- Pasul 12: [Opțional] Samba: acces la jurnal
- Pasul 13: [Opțional] Samba: Ascundeți folderul inutil „/ home / pi”
- Pasul 14: Acces la unitatea de rețea din Windows
- Pasul 15: Pregătiți a doua mașină
- Pasul 16: Creați SSH între mașina locală și la distanță
- Pasul 17: Testați sincronizarea
- Pasul 18: Configurați rute Internet
- Pasul 19: Bibliografie
Video: 2 Raspberry Pis pentru RAID la distanță ușor și ieftin: 19 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
Scop
- În cazul unui incident la domiciliu, vreau să pot recupera documentele mele digitale majore (imagini, acte de identitate etc.) și, în mod opțional, să le împărtășesc.
- Vreau să împărtășesc această soluție cu altcineva (cuiva în care am încredere, părinți sau prieteni)
- Nu vreau să depind de un cloud public (abonament, taxe, GTC în evoluție etc.)
Principiu
- Creați 2 mașini de stocare identice, puneți-le în 2 locații diferite (de exemplu, 2 case).
- Alocați un spațiu de stocare dedicat fiecărei locații de pe fiecare mașină.
- Sincronizați în mod regulat cele 2 spații de stocare.
Provizii
Hardware
Fiecare mașină are:
- 1x Raspberry Pi 4 B 1GB
- 1 x cutie pentru Raspberry Pi 4
- 1x sursa de alimentare USB C 5V 3A
- 1x card SD Kingston SDC10 / 16GB
- 1x NAS HDD 1To WD Red Mobile
- 1x cutie HDD BX-2525U3
Software Windows
- balenaEtcher
- Raspbian buster desktop plin
- mobaxterm
- Vizualizator VNC (opțional)
Pachete Raspbian
- Rsync
- samba
Pasul 1: Pro și Contra
Avantaje
- Această soluție este ieftină: nu am taxe de abonament și hardware-ul este accesibil.
- Acest „RAID la distanță” este destul de ușor de făcut. Nu am nevoie de material sau instrument suplimentar pentru ao face.
- Raspberry Pi poate fi utilizat pentru aplicații suplimentare precum media center (kodi, …) sau domotic (jeedom, domoticz, …).
- Datele mele nu sunt disponibile pe un cloud public care ar putea fi o țintă pentru pirateria masivă a datelor.
- Folosind un HDD de 1To, consumul electric mediu este același cu un nor.
- Paravanul de protecție al routerului meu și criptarea SSH a conexiunii mele securizează schimburile de date.
Dezavantaje / îmbunătățiri
- Altcineva are o copie a documentelor mele. În cazul meu, această persoană este din familia mea, așa că nu-mi pasă.
- Folosesc contul „pi” implicit, cu o parolă dedicată pentru ambele aparate. Aș putea asigura accesul un pic mai mult folosind un cont specific separat de fiecare parte, mai degrabă decât contul „pi”.
- Mă bazez pe furnizorul meu de servicii Internet și pe criptarea SSH pentru securitatea conexiunii dintre cele două case. Se pot face cercetări pentru a îmbunătăți nivelul de securitate.
- Deocamdată, am făcut doar 2 partiții pe unitate. O a treia partiție mai mică (~ 5Go) ar putea fi utilă pentru alte activități Raspbian, pentru a păstra cardul µSD.
Pasul 2: Pregătiți SD: Încărcați Raspbian
De pe un computer (Windows 10 în cazul meu), urmați ghidul oficial de instalare (https://www.raspberrypi.org/downloads/raspbian/) pentru a instala „Raspbian Buster with desktop”.
Adăugați un fișier gol numit "ssh" în discul "/ boot /"
Adăugați un fișier numit "wpa_supplicant.conf" în discul "/ boot /"
Deschideți wpa_supplicant.conf și introduceți textul:
country = SUA
ctrl_interface = DIR = / var / run / wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "MyWiFiNetwork" psk = "aVeryStrongPassword" key_mgmt = WPA-PSK}
Salvați și închideți fișierul.
Pasul 3: Pregătiți SD: Personalizați cardul
Adăugați un fișier gol numit "ssh" în discul "/ boot /"
Adăugați un fișier numit "wpa_supplicant.conf" în discul "/ boot /"
Deschideți wpa_supplicant.conf și introduceți textul:
country = SUA
ctrl_interface = DIR = / var / run / wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "MyWiFiNetwork" psk = "aVeryStrongPassword" key_mgmt = WPA-PSK}
Salvați și închideți fișierul.
Pasul 4: Pregătiți Raspberry Pi
Introduceți cardul SD în Pi
Porniți Raspberry Pi, alegeți o modalitate de a deschide un desktop:
- Folosind cablu HDMI, ecran, tastatură și mouse
- Folosind VNC de pe computer.
Pentru informații suplimentare, vizitați
Pasul 5: Modul 1: Conectați-vă la Pi folosind ecranul, tastatura, mouse-ul
Conectați portul Raspberry Pi HDMI0 la un ecran cu un cablu micro-hdmi la hdmi
Conectați o tastatură și mouse USB (sau o mini tastatură wireless, cum ar fi „Rii Mini i8 Wireless”)
Conectați sursa de alimentare USB C și porniți Raspberry Pi.
Raspbian va începe pe ecran.
Odată ce desktopul apare, răspundeți la panoul de configurare pentru a finaliza configurarea Pi-ului dvs.
Pasul 6: Modul 2: Conectați-vă la Pi utilizând VNC de pe computer
Conectați Raspberry Pi la rețeaua dvs. Ethernet (prin wifi sau cu un cablu).
De pe computer, deschideți Mobaxterm (sau chit), începeți o nouă conexiune ssh (login pi, parolă zmeură) și configurați Pi:
ssh pi @ raspberry_ip
sudo raspi-config
- în opțiunea Interfață / VNC: setați Da
- în Opțiuni avansate / Rezoluție: setați modul DMT 82 1920x1080 60Hz 16: 9
- în Opțiuni avansate / driver GL: setați unitatea desktop G1 Legacy Original non-GL
Salvați și ieșiți din raspi-config
Reporniți Pi:
sudo reboot
De pe computerul dvs., deschideți VNC Viewer și conectați-vă la Pi folosind login pi, parola zmeură: desktopul Pi ar trebui să apară.
Răspundeți la panoul de configurare pentru a finaliza configurația Pi.
După ce ați schimbat parola Pi, conexiunea VNC s-ar putea închide. Reporniți-l folosind noua parolă.
Pasul 7: Pregătiți HDD-ul
- Conectați HDD-ul la computer.
- Deschideți managerul de partiții Windows, selectați HDD-ul și creați 2 partiții NTFS (sau 3, dacă doriți un spațiu liber mic pentru a păstra cardul µSD). De exemplu, denumesc cele două părți „loic” și „vincent”
- Conectați HDD-ul la Pi: Raspbian ar trebui să monteze automat 2 discuri pe desktop. Unitățile sunt legate de folderul / media / pi / loic / și / media / pi / vincent /
Pasul 8: Configurați Rsync: Creați un script Synchro
deschideți o solicitare pe desktopul Pi
În / home / pi /, creați un script:
mkdir / home / pi / scriptsnano / home / pi / scripts / SB_sync
introduceți textul:
#! / bin / sh
######## A CONFIGURER ############ 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 _ $ {machine_distante} echo Sincronizare în 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} echo" Compte `whoami`"> $ {log_local} / 1. $ {machine_locale} _vers _ $ {machine_distante}. log echo "--------- -Début: "` 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
ecou "---------- Fin:" `data +"% 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}
Configurați liniile 3-7:
- înlocuiți „loic” și „vincent” cu numele unităților dvs.
- port_distant: pentru moment, utilizați 22 ca port la distanță. La ultimul pas, va trebui să-l înlocuiți cu o altă valoare la alegere (ca exemplu: 34567)
salvați fișierul și ieșiți.
Pasul 9: Configurați Rsync: Efectuați o sincronizare o dată pe zi
În prompt, deschideți crontab:
sudo crontab -u pi -e
la sfârșitul fișierului, adăugați un cron:
0 1 * * * / usr / bin / flock -xn /tmp/flocktmp.lock -c "/ home / pi / scripts / SB_sync"
În acest cron, scriptul SB_sync va fi lansat în fiecare zi la 1:00 AM. Alegeți ora dorită, dar schimbați-o între cele două mașini, astfel încât cele 2 sincronizări să fie efectuate unul după altul.
Salvați și închideți fișierul.
Pasul 10: Pregătiți Samba
Samba conectează un spațiu de stocare Linux la rețeaua Windows.
Deschideți un prompt și instalați pachetele:
sudo apt-get install samba samba-common-bin -y
Autorizați contul „pi” pentru a accesa Samba:
sudo smbpasswd -a pi
Salvați fișierul de configurare implicit Samba:
cp /etc/samba/smb.conf /etc/samba/smb.old
Deschideți fișierul:
sudo nano /etc/samba/smb.conf
Și la sfârșitul fișierului, adăugați aceste linii pentru a configura unitatea dvs. pentru a partaja:
[DOCUMENTE LOIC]
comentariu = NAS de loic path = / media / pi / loic users valid = @users force group = users create mask = 0660 director mask = 0775 only read = nu navigabil = yes public = yes
Salvați fișierul și ieșiți.
Pasul 11: [Opțional] Samba: configurați accesul de citire la unitatea de rețea Vincent
Deschideți fișierul de configurare Samba:
sudo nano /etc/samba/smb.conf
Și la sfârșitul fișierului, adăugați aceste linii pentru a configura cealaltă unitate pe care doriți să o accesați:
[DOCUMENTE VINCENT]
comentariu = backup de vincent path = / media / pi / vincent users valid = @users force group = users create mask = 0660 director mask = 0775 only read = yes browseable = yes public = yes
Salvați fișierul și ieșiți.
Pasul 12: [Opțional] Samba: acces la jurnal
Deschideți fișierul de configurare Samba:
sudo nano /etc/samba/smb.conf
Și la sfârșitul fișierului, adăugați aceste linii pentru a accesa din ferestre la starea sincronizării:
[LOG SYNCHRO] comment = "jurnale de sincronizare între mașini"
path = / home / pi / SB_sync_logs / valid users = @users force group = users create mask = 0660 director mask = 0771 only read = yes browseable = yes public = yes
Salvați fișierul și ieșiți.
Pasul 13: [Opțional] Samba: Ascundeți folderul inutil „/ home / pi”
Deschideți fișierul de configurare Samba:
sudo nano /etc/samba/smb.conf
În fișier, găsiți următoarele rânduri și adăugați „;” la început să-l comentez:
; [case]
; comentariu = Directoare de acasă; navigabil = nu; numai citire = da; crea masca = 0700; director mask = 0700; utilizatori valabili =% S
Salvați fișierul și ieșiți.
Pasul 14: Acces la unitatea de rețea din Windows
De pe computerul Windows, deschideți un explorator.
Faceți clic pe „Rețea” și actualizați fereastra.
Va apărea un computer cu numele Rapberry Pi.
Deschideți-l folosind contul „pi” și parola.
Ar trebui să vedeți folderele adăugate anterior în fișierul de configurare Samba.
Pasul 15: Pregătiți a doua mașină
Prima ta mașină este pregătită.
Repetați pașii anteriori pentru a doua mașină, înlocuind (de exemplu) „loic” cu „vincent”.
Odată ce cele 2 aparate vor fi pregătite, va trebui să schimbați cheia ssh pentru a autoriza accesul între ele, consultați pasul următor.
Pasul 16: Creați SSH între mașina locală și la distanță
Pentru a simplifica partajarea cheii SSH, fiecare Raspberry Pi va fi conectat la aceeași rețea ethernet.
Pe fiecare Raspberry Pi, deschideți o solicitare pe desktopul Pi și introduceți:
ssh-keygen -q -t rsa -b 2048 -N"
ssh-copy-id pi @ IP_of_other_raspberry
Pasul 17: Testați sincronizarea
Cele 2 mașini sunt gata.
Puteți testa sincronizarea pe computerul Windows:
- adăugați un fișier în unitatea de rețea locală (adică / Rpi4-loic / documents loic / test / test.txt),
- rulați scriptul pe desktopul local Pi (executați SB_sync în / home / pi / scripturi)
- verificați dacă fișierul dvs. apare în unitatea de rețea de rezervă (adică / Rpi4-vincent / documents loic / test / test.txt).
Ar trebui să puteți citi și scrie fișiere în / Rpi4-loic / documents loic / test \, dar citiți numai fișiere în / Rpi4-vincent / documents loic / test \.
Următorul și ultimul pas este să mutați mașina „la distanță” într-o rețea dintr-un alt loc și să configurați o conexiune între cele 2 routere prin internet.
Pasul 18: Configurați rute Internet
În cazul meu, pentru mașina locală de acasă, mă abonez la un acces la internet care include un router și un IP fix.
Pentru aparatul de la distanță, furnizorul de servicii Internet este același, deci configurarea este mai ușoară și nu am nevoie de DNS.
În casa mea:
- În routerul meu, creez ruta unui port de la „remote_internet_fixed_IP” la „port_34567” la „my_raspberry_IP” la portul „22”
- În zmeura mea, în / home / pi / scripts / SB_sync, înlocuiesc valoarea "port_distant" "22" cu "port_34567"
În locul îndepărtat:
- În router, creez ruta unui port de la „my_internet_fixed_IP” la „port_34567” la „my_raspberry_IP” la portul „22”
- În zmeura la distanță, în / home / pi / scripts / SB_sync, înlocuiesc valoarea "port_distant" "22" cu "port_34567"
Pentru aplicația dvs.:
- Trebuie să înlocuiți adresele IP și port_34567 cu ale dvs.
- În cazul unei adrese IP dinamice de internet, trebuie să vă abonați la un DNS.
Cu ajutorul proprietarului zmeurii de la distanță, repetați testul pasului anterior.
Terminat!
Pasul 19: Bibliografie
Instalați Raspbian pe cardul µSD
Personalizați cardul µSD după formare (SSH și WiFi)
Folosind Raspberry Pi
Raspberry Pi Sync cu rysnc prin feralhosting
Port SSH specific pentru Rsync
Instalați și utilizați Samba
Recomandat:
Deschizător ușor de ușă pentru garaj ieftin: 6 pași (cu imagini)
Deschizător ușor de ușă pentru garaj ieftin: Credit Am copiat destul de mult implementarea lui Savjee, dar în loc să folosesc un Shelly, am folosit un Sonoff Basic. Consultați site-ul său web și canalul YouTube! Https: //www.savjee.be/2020/06/make-garage-door-ope…https: //www.youtube.com/c/Savjee/AssumptionsYou h
DIY MusiLED, LED-uri sincronizate muzicale cu aplicație Windows și Linux cu un singur clic (32-bit și 64-bit). Ușor de recreat, ușor de utilizat, ușor de portat: 3 pași
DIY MusiLED, LED-uri sincronizate muzicale cu aplicație Windows și Linux cu un singur clic (32-bit și 64-bit). Ușor de recreat, ușor de utilizat, ușor de portat: acest proiect vă va ajuta să conectați 18 LED-uri (6 roșii + 6 albastre + 6 galbene) la placa Arduino și să analizați semnalele în timp real ale plăcii de sunet ale computerului și să le retransmiteți la LED-urile pentru a le aprinde conform efectelor de bătăi (Snare, High Hat, Kick)
Transfer de toner ieftin și ușor pentru fabricarea PCB: 4 pași
Transfer de toner ieftin și ușor pentru fabricarea PCB: Există o mulțime de oameni menționați despre utilizarea hârtiei lucioase cu jet de cerneală pentru a face transferul de toner. Poate fi realizat. Dar nu este ușor să îl îndepărtați după călcare. Ați îmbibat PCB-ul în apă fierbinte mai mult de zece minute. Este destul de consumator de timp. Daca tu
Suport pentru laptop ușor de realizat ieftin: 4 pași
Suport pentru laptop ușor de realizat ieftin: Acesta este un suport pentru laptop pentru laptopul meu Acer Aspire 5032. îl puteți face pentru orice laptop cu tampoane de cauciuc în partea de jos (motiv mai târziu) ajustând lățimea barelor de lemn la lățimea laptopurilor dvs. acesta este primul meu instructable, așa că vă rog să-i dați co
Suport pentru hârtie pentru laptop, cel mai ieftin suport pentru laptop posibil: 4 pași
Suport pentru hârtie pentru laptop, cel mai ieftin suport pentru laptop posibil: se întâmplă să iubesc cutremurul 3 și mă îngrijorez cu privire la durabilitatea MacBook-ului meu. Nu am niciodată ideea de a cumpăra aceste suporturi pentru laptop cu ventilatoare, deoarece MacBook-urile nu au deloc găuri în partea de jos. Mă gândeam că acele jumătăți de bile ar putea să-mi îndoaie laptopul c