Obsah:
- Zásoby
- Krok 1: Výhody a nevýhody
- Krok 2: Príprava SD: Nahrajte Raspbian
- Krok 3: Príprava SD: Prispôsobte si kartu
- Krok 4: Pripravte si Raspberry Pi
- Krok 5: Spôsob 1: Pripojte sa k Pi pomocou obrazovky, klávesnice, myši
- Krok 6: Spôsob 2: Pripojte sa k Pi pomocou VNC z počítača
- Krok 7: Pripravte si pevný disk
- Krok 8: Konfigurácia Rsync: Vytvorte synchro skript
- Krok 9: Konfigurácia Rsync: Vykonajte synchronizáciu raz denne
- Krok 10: Pripravte si Sambu
- Krok 11: [Voliteľné] Samba: Konfigurujte prístup na čítanie na sieťový disk Vincent
- Krok 12: [Voliteľné] Samba: Prístup k denníku
- Krok 13: [Voliteľné] Samba: Skryť zbytočný priečinok „/home/pi“
- Krok 14: Prístup k sieťovému disku z Windows
- Krok 15: Pripravte si druhý stroj
- Krok 16: Vytvorte SSH medzi miestnym a vzdialeným počítačom
- Krok 17: Otestujte Synchro
- Krok 18: Konfigurujte internetové trasy
- Krok 19: Bibliografia
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Účel
- V prípade incidentu doma chcem byť schopný obnoviť svoje hlavné digitálne dokumenty (obrázky, doklady totožnosti atď.) A voliteľne ich zdieľať.
- Chcem zdieľať toto riešenie s niekým iným (s niekým, komu dôverujem, rodičom alebo priateľom)
- Nechcem byť závislý na verejnom cloude (predplatné, poplatky, vyvíjajúce sa VOP atď.)
Princíp
- Vytvorte 2 identické skladovacie stroje a umiestnite ich na 2 rôzne miesta (napríklad 2 domy).
- Každému umiestneniu na každom počítači priraďte vyhradený úložný priestor.
- Pravidelne synchronizujte 2 úložné priestory.
Zásoby
Hardvér
Každý stroj má:
- 1x Raspberry Pi 4 B 1GB
- 1x box pre Raspberry Pi 4
- 1x napájací zdroj USB C 5V 3A
- 1x SD karta Kingston SDC10/16GB
- 1x NAS HDD 1To WD Red Mobile
- 1x HDD box BX-2525U3
Softvér Windows
- balenaEtcher
- Pracovná plocha Raspbian buster plná
- mobaxterm
- Prehliadač VNC (voliteľné)
Balíky Raspbian
- Rsync
- samba
Krok 1: Výhody a nevýhody
Výhody
- Toto riešenie je lacné: nemám žiadne predplatné a hardvér je dostupný.
- Tento „vzdialený RAID“je celkom jednoduché. Na to nepotrebujem ďalší materiál ani nástroje.
- Raspberry Pi je možné použiť aj pre ďalšie aplikácie, ako sú mediálne centrum (kodi, …) alebo domotic (jeedom, domoticz, …).
- Moje údaje nie sú k dispozícii vo verejnom cloude, ktorý by mohol byť cieľom rozsiahlej pirátstva dát.
- Pri použití pevného disku 1To je priemerná elektrická spotreba rovnaká ako v cloude.
- Brána firewall môjho smerovača a šifrovanie SSH môjho pripojenia zabezpečujú výmeny údajov.
Nevýhody/vylepšenia
- Niekto iný má kópiu mojich dokumentov. V mojom prípade je táto osoba z mojej rodiny, takže mi je to jedno.
- Používam predvolený účet „pi“s vyhradeným heslom pre oba počítače. Prístup by som mohol zaistiť o niečo viac tým, že použijem osobitný konkrétny účet na každej strane, a nie účet „pi“.
- Na zabezpečenie spojenia medzi týmito dvoma domami sa spolieham na svojho poskytovateľa internetových služieb a šifrovanie SSH. Na zvýšenie úrovne zabezpečenia je možné vykonať výskum.
- Zatiaľ som urobil iba 2 oddiely na jednotku. Menší 3. oddiel (~ 5 Go) by mohol byť užitočný pre inú aktivitu Raspbian, na zachovanie karty µSD.
Krok 2: Príprava SD: Nahrajte Raspbian
Z počítača (v mojom prípade Windows 10) postupujte podľa oficiálneho sprievodcu inštaláciou (https://www.raspberrypi.org/downloads/raspbian/) a nainštalujte „Raspbian Buster s počítačom“.
Pridajte prázdny súbor s názvom „ssh“na disk „/boot/“
Pridajte súbor s názvom „wpa_supplicant.conf“na disk „/boot/“
Otvorte súbor wpa_supplicant.conf a zadajte text:
krajina = USA
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 sieť = {ssid = "MyWiFiNetwork" psk = "aVeryStrongPassword" key_mgmt = WPA-PSK}
Uložte a zatvorte súbor.
Krok 3: Príprava SD: Prispôsobte si kartu
Pridajte prázdny súbor s názvom „ssh“na disk „/boot/“
Pridajte súbor s názvom „wpa_supplicant.conf“na disk „/boot/“
Otvorte súbor wpa_supplicant.conf a zadajte text:
krajina = USA
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 sieť = {ssid = "MyWiFiNetwork" psk = "aVeryStrongPassword" key_mgmt = WPA-PSK}
Uložte a zatvorte súbor.
Krok 4: Pripravte si Raspberry Pi
Vložte svoju SD kartu do Pi
Zapnite Raspberry Pi, zvoľte spôsob, akým otvoriť pracovnú plochu:
- Pomocou kábla HDMI, obrazovky, klávesnice a myši
- Použitie VNC z počítača.
Ďalšie informácie nájdete na stránke
Krok 5: Spôsob 1: Pripojte sa k Pi pomocou obrazovky, klávesnice, myši
Pripojte port Raspberry Pi HDMI0 k obrazovke káblom micro-hdmi na hdmi
Pripojte USB klávesnicu a myš (alebo bezdrôtovú mini klávesnicu ako „Rii Mini i8 Wireless“)
Pripojte napájací zdroj USB C a zapnite Raspberry Pi.
Raspbian sa spustí na vašej obrazovke.
Akonáhle sa objaví pracovná plocha, odpovedzte na konfiguračný panel a dokončite konfiguráciu svojho Pi.
Krok 6: Spôsob 2: Pripojte sa k Pi pomocou VNC z počítača
Pripojte Raspberry Pi k vašej ethernetovej sieti (prostredníctvom wifi alebo káblom).
V počítači otvorte Mobaxterm (alebo tmel), vytvorte nové pripojenie ssh (prihlasovacie pi, heslo malina) a nakonfigurujte svoje Pi:
ssh pi@raspberry_ip
sudo raspi-config
- v možnosti Rozhranie / VNC: nastavte Áno
- v Rozšírených možnostiach / Rozlíšenie: nastavte režim DMT 82 1920 x 1080 60 Hz 16: 9
- v Rozšírené možnosti / ovládač GL: nastavte stolný disk G1 Legacy Original bez GL
Uložte a ukončite raspi-config
Reštartujte počítač Pi:
sudo reštart
V počítači otvorte prehliadač VNC a pripojte sa k Pi pomocou prihlasovacieho pi, hesla raspberry: mala by sa objaviť pracovná plocha Pi.
Odpovedaním na konfiguračný panel dokončite konfiguráciu svojho Pi.
Akonáhle zmeníte heslo Pi, pripojenie VNC sa môže ukončiť. Reštartujte ho pomocou nového hesla.
Krok 7: Pripravte si pevný disk
- Pripojte pevný disk k počítaču.
- Otvorte správcu oddielov Windows, vyberte pevný disk a vytvorte 2 oddiely NTFS (alebo 3, ak chcete, aby malé miesto zachovalo kartu µSD). Napríklad 2 časti pomenujem „loic“a „vincent“
- Pripojte pevný disk k Pi: Raspbian by mal na pracovnú plochu automaticky pripojiť 2 disky. Jednotky sú prepojené s priečinkom/media/pi/loic/a/media/pi/vincent/
Krok 8: Konfigurácia Rsync: Vytvorte synchro skript
otvorte výzvu na ploche Pi
V/home/pi/vytvorte skript:
mkdir/home/pi/scriptsnano/home/pi/skripty/SB_sync
zadajte text:
#!/bin/sh
######## KONFIGURÁTOR ############# 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} Synchronizácia samozrejme: de $ {machine_locale} $ {media_local}/ oproti $ {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
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}
Konfigurujte riadky 3 až 7:
- nahraďte „loic“a „vincent“názvom svojich diskov
- port_distant: zatiaľ použite 22 ako vzdialený port. V poslednom kroku ho budete musieť nahradiť inou hodnotou podľa vášho výberu (napríklad: 34567)
uložiť súbor a ukončiť.
Krok 9: Konfigurácia Rsync: Vykonajte synchronizáciu raz denne
Vo výzve otvorte crontab:
sudo crontab -u pi -e
na koniec súboru pridajte cron:
0 1 * * */usr/bin/flock -xn /tmp/flocktmp.lock -c "/home/pi/skripty/SB_sync"
V tomto crone bude skript SB_sync spustený každý deň o 1:00 hod. Vyberte požadovanú hodinu, ale zmeňte ju medzi dvoma strojmi, aby sa 2 synchronizácie vykonávali jedna za druhou.
Uložte a zatvorte súbor.
Krok 10: Pripravte si Sambu
Samba pripája úložisko Linuxu k sieti Windows.
Otvorte výzvu a nainštalujte balíky:
sudo apt-get install samba samba-common-bin -y
Autorizujte účet „pi“na prístup k Sambe:
sudo smbpasswd -a pi
Uložte predvolený konfiguračný súbor Samba:
cp /etc/samba/smb.conf /etc/samba/smb.old
Otvorte súbor:
sudo nano /etc/samba/smb.conf
A na konci súboru pridajte tieto riadky a nakonfigurujte zdieľanie disku:
[DOKUMENTY LOIC]
comment = NAS de loic path =/media/pi/loic valid users = @users force group = users create mask = 0660 directory mask = 0775 only read = no browseable = yes public = yes
Uložte súbor a ukončite ho.
Krok 11: [Voliteľné] Samba: Konfigurujte prístup na čítanie na sieťový disk Vincent
Otvorte konfiguračný súbor Samba:
sudo nano /etc/samba/smb.conf
A na konci súboru pridajte tieto riadky a nakonfigurujte ďalší disk, ku ktorému chcete pristupovať:
[DOKUMENTY VINCENT]
komentár = cesta zálohy de Vincenta =/media/pi/vincent valid users = @users force group = users create mask = 0660 directory mask = 0775 only read = yes browseable = yes public = yes
Uložte súbor a ukončite ho.
Krok 12: [Voliteľné] Samba: Prístup k denníku
Otvorte konfiguračný súbor Samba:
sudo nano /etc/samba/smb.conf
A na konci súboru pridajte tieto riadky na prístup z okna do stavu synchronizácie:
[LOG SYNCHRO] comment = "protokoly synchronizačných zariadení"
path =/home/pi/SB_sync_logs/valid users = @users force group = users create mask = 0660 directory mask = 0771 only read = yes browseable = yes public = yes
Uložte súbor a ukončite ho.
Krok 13: [Voliteľné] Samba: Skryť zbytočný priečinok „/home/pi“
Otvorte konfiguračný súbor Samba:
sudo nano /etc/samba/smb.conf
V súbore nájdite nasledujúce riadky a pridajte „;“na začiatku to komentujte:
; [domy]
; komentár = Domovské adresáre; prehľadateľné = nie; iba na čítanie = áno; vytvoriť masku = 0700; maska adresára = 0700; platní užívatelia = %S
Uložte súbor a ukončite ho.
Krok 14: Prístup k sieťovému disku z Windows
V počítači so systémom Windows otvorte prieskumníka.
Kliknite na „Sieť“a obnovte okno.
Zobrazí sa počítač s názvom vášho Rapberry Pi.
Otvorte ho pomocou účtu „pi“a svojho hesla.
V konfiguračnom súbore Samba by ste mali vidieť predtým pridané priečinky.
Krok 15: Pripravte si druhý stroj
Váš 1. stroj je pripravený.
Zopakujte predchádzajúce kroky pre 2. stroj a nahraďte (napríklad) „loic“výrazom „vincent“.
Keď budú tieto 2 stroje pripravené, budete si musieť vymeniť ssh kľúč, aby ste medzi nimi autorizovali prístup, pozri ďalší krok.
Krok 16: Vytvorte SSH medzi miestnym a vzdialeným počítačom
Aby sa zjednodušilo zdieľanie kľúča SSH, každý Raspberry Pi musí byť pripojený k tej istej ethernetovej sieti.
Na každom Raspberry Pi otvorte výzvu na ploche Pi a zadajte:
ssh -keygen -q -t rsa -b 2048 -N ''
ssh-copy-id pi@IP_of_other_raspberry
Krok 17: Otestujte Synchro
Vaše 2 stroje sú pripravené.
Synchro môžete otestovať na počítači so systémom Windows:
- pridajte súbor na lokálnu sieťovú jednotku (t.j. / Rpi4-loic / documents loic / test / test.txt),
- spustite skript na miestnej ploche Pi (spustite SB_sync v/home/pi/skriptoch)
- skontrolujte, či sa váš súbor nachádza na záložnej sieťovej jednotke (t.j. / Rpi4-vincent / documents loic / test / test.txt).
Mali by ste byť schopní čítať a zapisovať súbory v / Rpi4-loic / documents loic / test \, ale čítať iba súbory v / Rpi4-vincent / documents loic / test \.
Ďalším a posledným krokom je presunutie "vzdialeného" zariadenia do siete na inom mieste a konfigurácia pripojenia medzi 2 smerovačmi prostredníctvom internetu.
Krok 18: Konfigurujte internetové trasy
V mojom prípade si pre miestny počítač doma predplatím prístup na internet vrátane smerovača a pevnej adresy IP.
Pre vzdialený počítač je poskytovateľ internetových služieb rovnaký, takže konfigurácia je jednoduchšia a nepotrebujem DNS.
V mojom dome:
- V mojom smerovači vytvorím trasu portu z „remote_internet_fixed_IP“na „port_34567“do „my_raspberry_IP“na porte „22“
- V mojej maline, v/home/pi/scripts/SB_sync, nahrádzam hodnotu „port_distant“„22“hodnotou „port_34567“
Na odľahlom mieste:
- V smerovači vytvorím trasu portu z „my_internet_fixed_IP“na „port_34567“do „my_raspberry_IP“v porte „22“
- Vo vzdialenej maline v/home/pi/scripts/SB_sync nahrádzam hodnotu „port_distant“„22“hodnotou „port_34567“
Pre vašu aplikáciu:
- Adresy IP a port_34567 musíte nahradiť svojimi vlastnými.
- V prípade dynamickej internetovej IP adresy sa musíte prihlásiť na odber DNS.
S pomocou vlastníka vzdialenej maliny zopakujte test predchádzajúceho kroku.
Hotovo!
Krok 19: Bibliografia
Nainštalujte Raspbian na kartu µSD
Prispôsobte kartu µSD po naformátovaní (SSH a WiFi)
Používanie vášho Raspberry Pi
Raspberry Pi Sync s rysnc od feralhosting
Špecifický port SSH pre Rsync
Nainštalujte a používajte Sambu