Obsah:

2 Raspberry Pis pro snadný a levný vzdálený RAID: 19 kroků
2 Raspberry Pis pro snadný a levný vzdálený RAID: 19 kroků

Video: 2 Raspberry Pis pro snadný a levný vzdálený RAID: 19 kroků

Video: 2 Raspberry Pis pro snadný a levný vzdálený RAID: 19 kroků
Video: MEGA Chia GPU Farming and Plotting Guide for Linux - Gigahorse Start to Finish - 2023 2024, Listopad
Anonim
2 Raspberry Pis pro snadný a levný vzdálený RAID
2 Raspberry Pis pro snadný a levný vzdálený RAID
2 Raspberry Pis pro snadný a levný vzdálený RAID
2 Raspberry Pis pro snadný a levný vzdálený RAID

Účel

  1. V případě incidentu doma chci mít možnost obnovit své hlavní digitální dokumenty (obrázky, doklady totožnosti atd.) A případně je sdílet.
  2. Chci toto řešení sdílet s někým jiným (s někým, komu důvěřuji, s rodiči nebo přítelem)
  3. Nechci být závislý na veřejném cloudu (předplatné, poplatky, vyvíjející se VOP atd.)

Zásada

  1. Vytvořte 2 identické úložné stroje, umístěte je na 2 různá místa (například 2 domy).
  2. Každému umístění na každém počítači přiřaďte vyhrazený úložný prostor.
  3. Pravidelně synchronizujte 2 úložné prostory.

Zásoby

Hardware

Každý stroj má:

  • 1x Raspberry Pi 4 B 1GB
  • 1x box pro Raspberry Pi 4
  • 1x napájecí zdroj USB C 5V 3A
  • 1x SD karta Kingston SDC10/16GB
  • 1x NAS HDD 1To WD Red Mobile
  • 1x HDD box BX-2525U3

Software Windows

  • balenaEtcher
  • Plocha Raspbian buster plná
  • mobaxterm
  • Prohlížeč VNC (volitelně)

Balíčky Raspbian

  • Rsync
  • samba

Krok 1: Pro & Cons

Pro & Cons
Pro & Cons

Výhody

  1. Toto řešení je levné: nemám žádné předplatné a hardware je dostupný.
  2. Tento „vzdálený RAID“je docela snadné udělat. Nepotřebuji k tomu další materiál ani nástroj.
  3. Raspberry Pi lze použít pro další aplikace, jako je mediální centrum (kodi, …) nebo domotic (jeedom, domoticz, …).
  4. Moje data nejsou k dispozici ve veřejném cloudu, který by mohl být cílem masivní datové pirátství.
  5. Při použití pevného disku 1To je průměrná elektrická spotřeba stejná jako cloud.
  6. Brána firewall mého routeru a šifrování SSH mého připojení zajišťují výměnu dat.

Nevýhody/vylepšení

  1. Kopii mých dokumentů má někdo jiný. V mém případě je tato osoba z mé rodiny, takže je mi to jedno.
  2. Používám výchozí účet „pi“s vyhrazeným heslem pro oba počítače. Mohl jsem zabezpečit přístup o něco více pomocí samostatného konkrétního účtu na každé straně, nikoli účtu „pi“.
  3. Pro zabezpečení spojení mezi 2 domy spoléhám na svého poskytovatele internetových služeb a šifrování SSH. Pro zlepšení úrovně zabezpečení lze provést výzkum.
  4. Prozatím jsem vytvořil pouze 2 oddíly na jednotku. Menší 3. oddíl (~ 5 Go) by mohl být užitečný pro další aktivitu Raspbian, aby byla zachována karta µSD.

Krok 2: Příprava SD: Nahrajte Raspbian

Z počítače (v mém případě Windows 10) postupujte podle oficiální instalační příručky (https://www.raspberrypi.org/downloads/raspbian/) a nainstalujte „Raspbian Buster s desktopem“.

Přidejte prázdný soubor s názvem „ssh“na disk „/boot/“

Přidejte soubor s názvem „wpa_supplicant.conf“na disk „/boot/“

Otevřete wpa_supplicant.conf a zadejte text:

země = USA

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 síť = {ssid = "MyWiFiNetwork" psk = "aVeryStrongPassword" key_mgmt = WPA-PSK}

Uložte a zavřete soubor.

Krok 3: Příprava SD: Přizpůsobte kartu

Prepare SD: Přizpůsobte kartu
Prepare SD: Přizpůsobte kartu

Přidejte prázdný soubor s názvem „ssh“na disk „/boot/“

Přidejte soubor s názvem „wpa_supplicant.conf“na disk „/boot/“

Otevřete wpa_supplicant.conf a zadejte text:

země = USA

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 síť = {ssid = "MyWiFiNetwork" psk = "aVeryStrongPassword" key_mgmt = WPA-PSK}

Uložte a zavřete soubor.

Krok 4: Připravte si Raspberry Pi

Vložte svou SD kartu do Pi

Zapněte Raspberry Pi a vyberte způsob, jak otevřít pracovní plochu:

  1. Pomocí kabelu HDMI, obrazovky, klávesnice a myši
  2. Pomocí VNC z vašeho počítače.

Další informace naleznete na adrese

Krok 5: Způsob 1: Připojte se k obrazovce Pi pomocí obrazovky, klávesnice, myši

Způsob 1: Připojte se k Pi pomocí obrazovky, klávesnice, myši
Způsob 1: Připojte se k Pi pomocí obrazovky, klávesnice, myši
Způsob 1: Připojte se k Pi pomocí obrazovky, klávesnice, myši
Způsob 1: Připojte se k Pi pomocí obrazovky, klávesnice, myši

Připojte port Raspberry Pi HDMI0 k obrazovce kabelem micro-hdmi na hdmi

Připojte USB klávesnici a myš (nebo bezdrátovou mini klávesnici jako „Rii Mini i8 Wireless“)

Připojte napájecí zdroj USB C a zapněte Raspberry Pi.

Raspbian začne na vaší obrazovce.

Jakmile se objeví plocha, dokončete konfiguraci vašeho Pi na konfiguračním panelu.

Krok 6: Způsob 2: Připojte se k Pi pomocí VNC z počítače

Způsob 2: Připojte se k Pi pomocí VNC z vašeho počítače
Způsob 2: Připojte se k Pi pomocí VNC z vašeho počítače
Způsob 2: Připojte se k Pi pomocí VNC z vašeho počítače
Způsob 2: Připojte se k Pi pomocí VNC z vašeho počítače
Způsob 2: Připojte se k Pi pomocí VNC z vašeho počítače
Způsob 2: Připojte se k Pi pomocí VNC z vašeho počítače

Připojte Raspberry Pi k vaší ethernetové síti (přes wifi nebo pomocí kabelu).

Z počítače otevřete Mobaxterm (nebo tmel), spusťte nové připojení ssh (přihlašovací pi, heslo raspberry) a nakonfigurujte Pi:

ssh pi@raspberry_ip

sudo raspi-config

  • v možnosti Rozhraní / VNC: nastavte Ano
  • v Pokročilých možnostech / Rozlišení: nastavte režim DMT 82 1920x1080 60 Hz 16: 9
  • v Pokročilých možnostech / ovladač GL: nastavte stolní disk G1 Legacy Original bez GL

Uložte a ukončete raspi-config

Restartujte Pi:

sudo restart

Z počítače otevřete prohlížeč VNC a připojte se k Pi pomocí přihlašovacího pi, hesla raspberry: měla by se objevit plocha Pi.

Odpověď na konfiguračním panelu dokončí konfiguraci vašeho Pi.

Jakmile změníte heslo Pi, připojení VNC se může zavřít. Restartujte jej pomocí nového hesla.

Krok 7: Připravte si pevný disk

Připravte si pevný disk
Připravte si pevný disk
Připravte si pevný disk
Připravte si pevný disk
  1. Připojte pevný disk k počítači.
  2. Otevřete správce oddílů systému Windows, vyberte pevný disk a vytvořte 2 oddíly NTFS (nebo 3, chcete -li malé volné místo pro zachování karty µSD). Například pojmenuji 2 části „loic“a „vincent“
  3. Připojte pevný disk k Pi: Raspbian by měl na plochu automaticky připojit 2 disky. Jednotky jsou propojeny se složkou/media/pi/loic/a/media/pi/vincent/

Krok 8: Konfigurace Rsync: Vytvořte synchronizační skript

Konfigurujte Rsync: Vytvořte synchronizační skript
Konfigurujte Rsync: Vytvořte synchronizační skript

otevřete výzvu na ploše Pi

V/home/pi/vytvořte skript:

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

zadejte 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} Synchronizace: Cour $ {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

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 řádky 3 až 7:

  • nahraďte „loic“a „vincent“názvem vašeho disku
  • port_distant: prozatím použijte 22 jako vzdálený port. V posledním kroku jej budete muset nahradit jinou hodnotou podle vašeho výběru (například: 34567)

uložte soubor a ukončete.

Krok 9: Konfigurace Rsync: Proveďte synchronizaci jednou denně

Ve výzvě otevřete crontab:

sudo crontab -u pi -e

na konec souboru přidejte cron:

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

V tomto cronu bude skript SB_sync spuštěn každý den v 1:00. Vyberte požadovanou hodinu, ale změňte ji mezi 2 stroji, takže 2 synchronizace budou prováděny jeden po druhém.

Uložte a zavřete soubor.

Krok 10: Připravte si Sambu

Samba připojuje linuxové úložiště k síti Windows.

Otevřete výzvu a nainstalujte balíčky:

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

Autorizujte účet "pi" pro přístup k Samba:

sudo smbpasswd -a pi

Uložte výchozí konfigurační soubor Samba:

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

Otevřete soubor:

sudo nano /etc/samba/smb.conf

A na konci souboru přidejte tyto řádky ke konfiguraci vašeho disku ke sdílení:

[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 soubor a ukončete.

Krok 11: [Volitelné] Samba: Konfigurujte přístup pro čtení na síťový disk Vincent

Otevřete konfigurační soubor Samba:

sudo nano /etc/samba/smb.conf

A na konci souboru přidejte tyto řádky ke konfiguraci druhého disku, ke kterému chcete přistupovat:

[DOKUMENTY VINCENT]

comment = cesta zálohy de vincent =/media/pi/vincent valid users = @users force group = users create mask = 0660 directory mask = 0775 only read = yes browseable = yes public = yes

Uložte soubor a ukončete.

Krok 12: [Volitelné] Samba: Přístup k protokolu

Otevřete konfigurační soubor Samba:

sudo nano /etc/samba/smb.conf

A na konci souboru přidejte tyto řádky pro přístup z Windows do stavu synchronizace:

[LOG SYNCHRO] comment = "protokoly synchronizačních strojů"

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 soubor a ukončete.

Krok 13: [Volitelné] Samba: Skrýt zbytečnou složku "/home/pi"

Otevřete konfigurační soubor Samba:

sudo nano /etc/samba/smb.conf

V souboru najděte následující řádky a přidejte „;“na začátek to komentovat:

; [domovy]

; komentář = Hlavní adresáře; procházitelné = ne; pouze ke čtení = ano; vytvořit masku = 0700; maska adresáře = 0700; platní uživatelé = %S

Uložte soubor a ukončete.

Krok 14: Přístup k síťovému disku z Windows

Přístup k síťovému disku z Windows
Přístup k síťovému disku z Windows

V počítači se systémem Windows otevřete průzkumníka.

Klikněte na „Síť“a obnovte okno.

Zobrazí se počítač se jménem vašeho Rapberry Pi.

Otevřete jej pomocí účtu „pi“a hesla.

V konfiguračním souboru Samba byste měli vidět složky přidané dříve.

Krok 15: Připravte 2. stroj

Váš 1. stroj je připraven.

Opakujte předchozí kroky pro 2. stroj a nahraďte (například) „loic“výrazem „vincent“.

Jakmile budou 2 počítače připraveny, budete si muset vyměnit klíč ssh pro autorizaci přístupu mezi nimi, viz další krok.

Krok 16: Vytvořte SSH mezi místním a vzdáleným počítačem

Pro zjednodušení sdílení klíče SSH musí být každý Raspberry Pi připojen ke stejné ethernetové síti.

Na každém Raspberry Pi otevřete výzvu na ploše Pi a zadejte:

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 jsou připraveny.

Synchro můžete vyzkoušet na počítači se systémem Windows:

  1. přidejte soubor na místní síťový disk (tj. / Rpi4-loic / documents loic / test / test.txt),
  2. spusťte skript na místní ploše Pi (spusťte SB_sync v/home/pi/scripts)
  3. zkontrolujte, zda se váš soubor objeví na záložní síťové jednotce (tj. / Rpi4-vincent / documents loic / test / test.txt).

Měli byste být schopni číst a zapisovat soubory v / Rpi4-loic / documents loic / test \, ale číst pouze soubory v / Rpi4-vincent / documents loic / test \.

Dalším a posledním krokem je přesunutí „vzdáleného“počítače do sítě jiného místa a konfigurace připojení mezi dvěma směrovači přes internet.

Krok 18: Konfigurace internetových tras

V mém případě si pro místní počítač doma předplatím přístup k internetu včetně routeru a pevné IP.

Pro vzdálený počítač je poskytovatel internetových služeb stejný, takže konfigurace je snazší a nepotřebuji DNS.

U mě doma:

  • Ve svém routeru vytvořím trasu portu z „remote_internet_fixed_IP“na „port_34567“do „my_raspberry_IP“na portu „22“
  • Ve své malině v/home/pi/scripts/SB_sync nahrazuji hodnotu „port_distant“„22“hodnotou „port_34567“

Na vzdáleném místě:

  • V routeru vytvořím trasu portu z „my_internet_fixed_IP“na „port_34567“do „my_raspberry_IP“na portu „22“
  • Ve vzdálené malině v/home/pi/scripts/SB_sync nahrazuji hodnotu „port_distant“„22“hodnotou „port_34567“

Pro vaši aplikaci:

  • Adresy IP a port_34567 musíte nahradit vlastními.
  • V případě dynamické internetové IP se musíte přihlásit k odběru DNS.

S pomocí vlastníka vzdálené maliny zopakujte test předchozího kroku.

Hotovo!

Krok 19: Bibliografie

Nainstalujte Raspbian na kartu µSD

Přizpůsobte kartu µSD po formátování (SSH a WiFi)

Pomocí vašeho Raspberry Pi

Raspberry Pi Sync s rysnc od feralhosting

Specifický port SSH pro Rsync

Nainstalujte a používejte Sambu

Doporučuje: