Sommario:
- Forniture
- Passaggio 1: pro e contro
- Passaggio 2: preparare SD: caricare Raspbian
- Passaggio 3: preparare la SD: personalizzare la scheda
- Passaggio 4: preparare il Raspberry Pi
- Passaggio 5: Modo 1: connettersi al Pi utilizzando schermo, tastiera, mouse
- Passaggio 6: Way 2: Connetti al Pi utilizzando VNC dal tuo computer
- Passaggio 7: preparare l'HDD
- Passaggio 8: configurare Rsync: creare script di sincronizzazione
- Passaggio 9: configurare Rsync: eseguire una sincronizzazione una volta al giorno
- Passaggio 10: preparare Samba
- Passaggio 11: [Facoltativo] Samba: configurare l'accesso in lettura all'unità di rete Vincent
- Passaggio 12: [Facoltativo] Samba: accesso al registro
- Passaggio 13: [Facoltativo] Samba: Nascondi cartella inutile "/home/pi"
- Passaggio 14: accesso all'unità di rete da Windows
- Passaggio 15: preparare la seconda macchina
- Passaggio 16: creare SSH tra macchina locale e remota
- Passaggio 17: testare il Synchro
- Passaggio 18: configurare i percorsi Internet
- Passo 19: Bibliografia
Video: 2 Raspberry Pi per un RAID remoto facile ed economico: 19 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Scopo
- In caso di incidente in casa, voglio poter recuperare i miei principali documenti digitali (foto, documenti d'identità, ecc.) e condividerli facoltativamente.
- Voglio condividere questa soluzione con qualcun altro (qualcuno di cui mi fido, genitori o amici)
- Non voglio dipendere da un cloud pubblico (abbonamento, commissioni, GTC in evoluzione, ecc.)
Principio
- Crea 2 macchine di stoccaggio identiche, mettile in 2 posizioni diverse (ad esempio, 2 case).
- Assegna uno spazio di archiviazione dedicato a ciascuna posizione su ciascuna macchina.
- Sincronizzare regolarmente i 2 spazi di archiviazione.
Forniture
Hardware
Ogni macchina ha:
- 1x Raspberry Pi 4B 1GB
- 1x scatola per Raspberry Pi 4
- 1x alimentatore USB C 5V 3A
- 1x scheda SD Kingston SDC10/16GB
- 1x NAS HDD 1A WD Red Mobile
- 1x scatola HDD BX-2525U3
Software Windows
- balenaEtcher
- Raspbian buster desktop completo
- mobaxterm
- Visualizzatore VNC (opzionale)
Pacchetti Raspbian
- Rsync
- samba
Passaggio 1: pro e contro
Vantaggi
- Questa soluzione è economica: non ho costi di abbonamento e l'hardware è conveniente.
- Questo "RAID remoto" è abbastanza facile da fare. Non ho bisogno di materiale o strumento aggiuntivo per farlo.
- Il Raspberry Pi può essere utilizzato per applicazioni aggiuntive come media center (kodi, …) o domotica (jeedom, domoticz, …).
- I miei dati non sono disponibili su un cloud pubblico che potrebbe essere un bersaglio per una massiccia pirateria di dati.
- Utilizzando un HDD da 1To, il consumo elettrico medio è lo stesso di un cloud.
- Il firewall del mio router e la crittografia SSH della mia connessione rendono sicuri gli scambi di dati.
Svantaggi/miglioramenti
- Qualcun altro ha una copia dei miei documenti. Nel mio caso, questa persona è della mia famiglia, quindi non mi interessa.
- Uso l'account "pi" predefinito, con una password dedicata per entrambe le macchine. Potrei proteggere un po' di più l'accesso utilizzando un account specifico separato su ciascun lato anziché l'account "pi".
- Mi affido al mio provider di servizi Internet e alla crittografia SSH per la sicurezza della connessione tra le 2 case. La ricerca può essere fatta per migliorare il livello di sicurezza.
- Per ora, ho creato solo 2 partizioni per unità. Una terza partizione più piccola (~5Go) potrebbe essere utile per altre attività di Raspbian, per preservare la scheda µSD.
Passaggio 2: preparare SD: caricare Raspbian
Da un computer (Windows 10 nel mio caso), segui la guida di installazione ufficiale (https://www.raspberrypi.org/downloads/raspbian/) per installare "Raspbian Buster con desktop".
Aggiungi un file vuoto chiamato "ssh" nel disco "/boot/"
Aggiungi un file chiamato "wpa_supplicant.conf" nel disco "/boot/"
Apri wpa_supplicant.conf e inserisci il testo:
paese=USA
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 rete= { ssid="MyWiFiNetwork" psk="aVeryStrongPassword" key_mgmt=WPA-PSK }
Salva e chiudi il file.
Passaggio 3: preparare la SD: personalizzare la scheda
Aggiungi un file vuoto chiamato "ssh" nel disco "/boot/"
Aggiungi un file chiamato "wpa_supplicant.conf" nel disco "/boot/"
Apri wpa_supplicant.conf e inserisci il testo:
paese=USA
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 rete= { ssid="MyWiFiNetwork" psk="aVeryStrongPassword" key_mgmt=WPA-PSK }
Salva e chiudi il file.
Passaggio 4: preparare il Raspberry Pi
Inserisci la tua scheda SD nel Pi
Accendi il Raspberry Pi, scegli un modo per aprire un desktop:
- Utilizzo di cavo hdmi, schermo, tastiera e mouse
- Usando VNC dal tuo computer.
Per ulteriori informazioni, visitare
Passaggio 5: Modo 1: connettersi al Pi utilizzando schermo, tastiera, mouse
Collega la porta Raspberry Pi HDMI0 a uno schermo con un cavo da micro-hdmi a hdmi
Collega una tastiera e un mouse USB (o una mini tastiera wireless come un "Rii Mini i8 Wireless")
Collega l'alimentatore USB C e accendi il Raspberry Pi.
Raspbian si avvierà sullo schermo.
Una volta visualizzato il desktop, rispondi al pannello di configurazione per completare la configurazione del tuo Pi.
Passaggio 6: Way 2: Connetti al Pi utilizzando VNC dal tuo computer
Collega il Raspberry Pi alla tua rete ethernet (tramite wifi o con un cavo).
Dal tuo computer, apri Mobaxterm (o putty), avvia una nuova connessione ssh (login pi, password raspberry) e configura il tuo Pi:
ssh pi@raspberry_ip
sudo raspi-config
- nell'opzione Interfacciamento / VNC: impostare Sì
- in Opzioni avanzate / Risoluzione: impostare la modalità DMT 82 1920x1080 60Hz 16:9
- in Opzioni avanzate/Driver GL: imposta l'unità desktop G1 Legacy originale non GL
Salva ed esci da raspi-config
Riavvia il Pi:
sudo reboot
Dal tuo computer, apri VNC Viewer e connettiti al Pi usando il login pi, password raspberry: dovrebbe apparire il desktop Pi.
Rispondi al pannello di configurazione per completare la configurazione del tuo Pi.
Dopo aver modificato la password Pi, la connessione VNC potrebbe chiudersi. Riavvia utilizzando la tua nuova password.
Passaggio 7: preparare l'HDD
- Collega l'HDD al tuo computer.
- Apri il gestore delle partizioni di Windows, seleziona il tuo HDD e crea 2 partizioni NTFS (o 3, se desideri un piccolo spazio libero per preservare la scheda µSD). Ad esempio, chiamo le 2 parti "loic" e "vincent"
- Collega l'HDD al Pi: Raspbian dovrebbe montare automaticamente 2 dischi sul desktop. Le unità sono collegate alla cartella /media/pi/loic/ e /media/pi/vincent/
Passaggio 8: configurare Rsync: creare script di sincronizzazione
apri un prompt sul desktop Pi
In /home/pi/, crea uno script:
mkdir /home/pi/scriptsnano /home/pi/scripts/SB_sync
inserisci il testo:
#!/bin/sh
######## UN CONFIGURATORE ########### 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 " Sincronizzazione in corso: 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 "--------- -Debutto: "`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}
Configura le righe da 3 a 7:
- sostituisci "loic" e "vincent" con il nome della tua unità
- port_distant: per ora, usa 22 come porta remota. All'ultimo passaggio, dovrai sostituirlo con un altro valore a tua scelta (ad esempio: 34567)
salva il file ed esci.
Passaggio 9: configurare Rsync: eseguire una sincronizzazione una volta al giorno
Nel prompt, apri crontab:
sudo crontab -u pi -e
alla fine del file, aggiungi un cron:
0 1 * * * /usr/bin/flock -xn /tmp/flocktmp.lock -c"/home/pi/scripts/SB_sync"
In questo cron, lo script SB_sync verrà lanciato ogni giorno alle 1:00. Scegli l'ora che desideri, ma cambiala tra le 2 macchine, così le 2 sincronizzazioni verranno eseguite una dopo l'altra.
Salva e chiudi il file.
Passaggio 10: preparare Samba
Samba connette un archivio Linux alla rete Windows.
Apri un prompt e installa i pacchetti:
sudo apt-get install samba samba-common-bin -y
Autorizza l'account "pi" per accedere a Samba:
sudo smbpasswd -a pi
Salva il file di configurazione Samba predefinito:
cp /etc/samba/smb.conf /etc/samba/smb.old
Apri il file:
sudo nano /etc/samba/smb.conf
E alla fine del file, aggiungi queste righe per configurare la tua unità da condividere:
[LOIC DOCUMENTI]
comment = NAS de loic path = /media/pi/loic valid users = @users force group = user create mask = 0660 directory mask = 0775 sola lettura = no sfogliabile = si public = si
Salva il file ed esci.
Passaggio 11: [Facoltativo] Samba: configurare l'accesso in lettura all'unità di rete Vincent
Apri il file di configurazione di Samba:
sudo nano /etc/samba/smb.conf
E alla fine del file, aggiungi queste righe per configurare l'altra unità a cui vuoi accedere:
[DOCUMENTI VINCENZO]
comment = backup de vincent path = /media/pi/vincent valid users = @users force group = user create mask = 0660 directory mask = 0775 sola lettura = si navigabile = si public = si
Salva il file ed esci.
Passaggio 12: [Facoltativo] Samba: accesso al registro
Apri il file di configurazione di Samba:
sudo nano /etc/samba/smb.conf
E alla fine del file, aggiungi queste righe per accedere da Windows allo stato di sincronizzazione:
[LOG SYNCHRO]comment = "logs de synchro tra macchine"
path = /home/pi/SB_sync_logs/ valid users = @users force group = user create mask = 0660 directory mask = 0771 sola lettura = si sfogliabile = si public = si
Salva il file ed esci.
Passaggio 13: [Facoltativo] Samba: Nascondi cartella inutile "/home/pi"
Apri il file di configurazione di Samba:
sudo nano /etc/samba/smb.conf
Nel file, trova le seguenti righe e aggiungi ";" all'inizio per commentarlo:
;[le case]
; comment = Directory Home; sfogliabile = no; sola lettura = si; crea maschera = 0700; maschera di directory = 0700; utenti validi = %S
Salva il file ed esci.
Passaggio 14: accesso all'unità di rete da Windows
Dal computer Windows, apri un esploratore.
Fare clic su "Rete" e aggiornare la finestra.
Apparirà un computer con il nome del tuo Rapberry Pi.
Aprilo utilizzando l'account "pi" e la tua password.
Dovresti vedere le cartelle aggiunte in precedenza nel file di configurazione di Samba.
Passaggio 15: preparare la seconda macchina
La tua prima macchina è pronta.
Ripetere i passaggi precedenti per la seconda macchina, sostituendo (ad esempio) "loic" con "vincent".
Una volta che le 2 macchine saranno preparate, sarà necessario scambiare la chiave ssh per autorizzare l'accesso tra di loro, vedere il passaggio successivo.
Passaggio 16: creare SSH tra macchina locale e remota
Per semplificare la condivisione della chiave SSH, ogni Raspberry Pi deve essere connesso alla stessa rete ethernet.
Su ogni Raspberry Pi, apri un prompt sul desktop Pi e inserisci:
ssh-keygen -q -t rsa -b 2048 -N ''
ssh-copy-id pi@IP_of_other_raspberry
Passaggio 17: testare il Synchro
Le tue 2 macchine sono pronte.
Puoi testare la sincronizzazione sul tuo computer Windows:
- aggiungi un file nell'unità di rete locale (ad esempio \Rpi4-loic\documents loic\test\test.txt),
- esegui lo script sul desktop Pi locale (esegui SB_sync in /home/pi/scripts)
- controlla che il tuo file appaia nell'unità di rete di backup (es. \Rpi4-vincent\documents loic\test\test.txt).
Dovresti essere in grado di leggere e scrivere file in \Rpi4-loic\documents loic\test\, ma leggere solo file in \Rpi4-vincent\documents loic\test\.
Il prossimo e ultimo passo è spostare la macchina "remota" all'interno di una rete di un altro luogo e configurare una connessione tra i 2 router tramite internet.
Passaggio 18: configurare i percorsi Internet
Nel mio caso, per la macchina locale di casa, mi abbono a un accesso a Internet che includa un router e un IP fisso.
Per la macchina remota, il provider di servizi Internet è lo stesso, quindi la configurazione è più semplice e non ho bisogno del DNS.
Nella mia casa:
- Nel mio router, creo il percorso di una porta da "remote_internet_fixed_IP" su "port_34567" a "my_raspberry_IP" sulla porta "22"
- Nel mio lampone, in /home/pi/scripts/SB_sync, sostituisco il valore "port_distant" "22" con "port_34567"
In un luogo remoto:
- Nel router, creo il percorso di una porta da "my_internet_fixed_IP" su "port_34567" a "my_raspberry_IP" sulla porta "22"
- Nel lampone remoto, in /home/pi/scripts/SB_sync, sostituisco il valore "port_distant" "22" con "port_34567"
Per la tua applicazione:
- Devi sostituire gli IP e port_34567 con i tuoi.
- In caso di IP Internet dinamico, devi abbonarti a un DNS.
Con l'aiuto del proprietario del lampone remoto, ripeti il test del passaggio precedente.
Finito!
Passo 19: Bibliografia
Installa Raspbian su µSD card
Personalizza la scheda µSD dopo la formattazione (SSH e WiFi)
Usando il tuo Raspberry Pi
Sincronizzazione Raspberry Pi con rysnc di feralhosting
Porta SSH specifica per Rsync
Installa e usa Samba
Consigliato:
Modo economico e facile fai-da-te per stagnare il tuo PCB usando il saldatore: 6 passaggi
Modo economico e facile fai-da-te per stagnare il tuo PCB usando il saldatore: quando ero un principiante nella stampa di PCB e nella saldatura avevo sempre il problema che la saldatura non si attaccava al posto giusto, o le tracce di rame si rompono, si ossidano e molti altri . Ma ho acquisito familiarità con molte tecniche e hack e uno di questi era
Fai da te MusiLED, LED musicali sincronizzati con applicazione Windows e Linux con un clic (32 bit e 64 bit). Facile da ricreare, facile da usare, facile da trasferire.: 3 passaggi
Fai da te MusiLED, LED musicali sincronizzati con applicazione Windows e Linux con un clic (32 bit e 64 bit). Facile da ricreare, facile da usare, facile da portare.: Questo progetto ti aiuterà a collegare 18 LED (6 rossi + 6 blu + 6 gialli) alla tua scheda Arduino e ad analizzare i segnali in tempo reale della scheda audio del tuo computer e trasmetterli a i led per accenderli secondo gli effetti beat (Snare, High Hat, Kick)
Supporto per videocamera per iPhone economico e facile: 4 passaggi (con immagini)
Supporto per videocamera per iPhone economico e facile: hai mai desiderato fare un video del tuo iPhone perché: vuoi mostrare un bel trucco vuoi dimostrare la tua nuova app vuoi recensire un'app per iPhone sei annoiato e hai pensato che sarebbe stato bello mai dovuto girare un video dell'iPhon
Supporto inclinabile per amplificatore per chitarra - Design "Sedia africana" - Semplice, piccolo, robusto, facile, gratuito o molto economico: 9 passaggi
Supporto inclinabile per amplificatore per chitarra - Design "Sedia africana" - Semplice, piccolo, forte, facile, gratuito o molto economico: Supporto inclinabile per amplificatore per chitarra - Troppo facile - semplice, piccolo, forte, gratuito o molto economico. Per amplificatori di tutte le dimensioni, anche cabinet di grandi dimensioni con testata separata. Basta creare schede e tubi delle dimensioni necessarie per quasi tutte le attrezzature che desideri
Supporto inclinabile per amplificatore per chitarra - Facile come Lincoln Logs - Piccolo, portatile, semplice, stabile, economico o gratuito.: 9 passaggi
Supporto inclinabile per amplificatore per chitarra - Facile come i registri Lincoln - Piccolo, portatile, semplice, stabile, economico o gratuito.: Supporto inclinabile per amplificatore per chitarra - facile come i registri Lincoln. piccolo, portatile, semplice, stabile, economico o gratuito utilizzando compensato di scarto. Ottimo per gli amplificatori combo, il design più grande può essere utilizzato per i dorsi aperti