Obsah:

2 Raspberry Pis pre ľahký a lacný vzdialený RAID: 19 krokov
2 Raspberry Pis pre ľahký a lacný vzdialený RAID: 19 krokov

Video: 2 Raspberry Pis pre ľahký a lacný vzdialený RAID: 19 krokov

Video: 2 Raspberry Pis pre ľahký a lacný vzdialený RAID: 19 krokov
Video: Часть 1 - Аудиокнига Герберта Уэллса «Анна Вероника» (гл. 01–03) 2024, November
Anonim
2 Raspberry Pis pre ľahký a lacný vzdialený RAID
2 Raspberry Pis pre ľahký a lacný vzdialený RAID
2 Raspberry Pis pre ľahký a lacný vzdialený RAID
2 Raspberry Pis pre ľahký a lacný vzdialený RAID

Účel

  1. 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ť.
  2. Chcem zdieľať toto riešenie s niekým iným (s niekým, komu dôverujem, rodičom alebo priateľom)
  3. Nechcem byť závislý na verejnom cloude (predplatné, poplatky, vyvíjajúce sa VOP atď.)

Princíp

  1. Vytvorte 2 identické skladovacie stroje a umiestnite ich na 2 rôzne miesta (napríklad 2 domy).
  2. Každému umiestneniu na každom počítači priraďte vyhradený úložný priestor.
  3. 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 a nevýhody
Výhody a nevýhody

Výhody

  1. Toto riešenie je lacné: nemám žiadne predplatné a hardvér je dostupný.
  2. Tento „vzdialený RAID“je celkom jednoduché. Na to nepotrebujem ďalší materiál ani nástroje.
  3. Raspberry Pi je možné použiť aj pre ďalšie aplikácie, ako sú mediálne centrum (kodi, …) alebo domotic (jeedom, domoticz, …).
  4. Moje údaje nie sú k dispozícii vo verejnom cloude, ktorý by mohol byť cieľom rozsiahlej pirátstva dát.
  5. Pri použití pevného disku 1To je priemerná elektrická spotreba rovnaká ako v cloude.
  6. Brána firewall môjho smerovača a šifrovanie SSH môjho pripojenia zabezpečujú výmeny údajov.

Nevýhody/vylepšenia

  1. Niekto iný má kópiu mojich dokumentov. V mojom prípade je táto osoba z mojej rodiny, takže mi je to jedno.
  2. 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“.
  3. 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.
  4. 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

Prepare SD: Prispôsobte kartu
Prepare SD: Prispôsobte 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:

  1. Pomocou kábla HDMI, obrazovky, klávesnice a myši
  2. 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

Spôsob 1: Pripojte sa k Pi pomocou obrazovky, klávesnice, myši
Spôsob 1: Pripojte sa k Pi pomocou obrazovky, klávesnice, myši
Spôsob 1: Pripojte sa k Pi pomocou obrazovky, klávesnice, myši
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

Spôsob 2: Pripojte sa k Pi pomocou VNC z počítača
Spôsob 2: Pripojte sa k Pi pomocou VNC z počítača
Spôsob 2: Pripojte sa k Pi pomocou VNC z počítača
Spôsob 2: Pripojte sa k Pi pomocou VNC z počítača
Spôsob 2: Pripojte sa k Pi pomocou VNC z počítača
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

Pripravte si HDD
Pripravte si HDD
Pripravte si HDD
Pripravte si HDD
  1. Pripojte pevný disk k počítaču.
  2. 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“
  3. 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

Konfigurujte Rsync: Vytvorte synchronizačný skript
Konfigurujte Rsync: Vytvorte synchronizačný 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

Prístup na sieťový disk z Windows
Prístup na sieťový disk 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

Otestujte Synchro
Otestujte Synchro
Otestujte Synchro
Otestujte Synchro
Otestujte Synchro
Otestujte Synchro

Vaše 2 stroje sú pripravené.

Synchro môžete otestovať na počítači so systémom Windows:

  1. pridajte súbor na lokálnu sieťovú jednotku (t.j. / Rpi4-loic / documents loic / test / test.txt),
  2. spustite skript na miestnej ploche Pi (spustite SB_sync v/home/pi/skriptoch)
  3. 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

Odporúča: