Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Hyödyt ja haitat
- Vaihe 2: Valmistele SD: Lataa Raspbian
- Vaihe 3: Valmistele SD: Muokkaa korttia
- Vaihe 4: Valmista Raspberry Pi
- Vaihe 5: Tapa 1: Yhdistä Pi -laitteeseen näytön, näppäimistön ja hiiren avulla
- Vaihe 6: Tapa 2: Muodosta yhteys Pi -tietokoneeseen VNC: n avulla
- Vaihe 7: Valmistele kiintolevy
- Vaihe 8: Määritä Rsync: Luo synkronointikomentosarja
- Vaihe 9: Määritä Rsync: Suorita synkronointi kerran päivässä
- Vaihe 10: Valmista Samba
- Vaihe 11: [Valinnainen] Samba: Määritä lukuoikeus Network Drive Vincentille
- Vaihe 12: [Valinnainen] Samba: Pääsy lokiin
- Vaihe 13: [Valinnainen] Samba: Piilota hyödytön kansio "/home/pi"
- Vaihe 14: Pääsy verkkoasemaan Windowsista
- Vaihe 15: Valmistele toinen kone
- Vaihe 16: Luo SSH paikallisen ja etäkoneen välille
- Vaihe 17: Testaa synkronointi
- Vaihe 18: Määritä Internet -reitit
- Vaihe 19: Bibliografia
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-13 06:57
Tarkoitus
- Jos kotona tapahtuu tapaus, haluan pystyä palauttamaan tärkeimmät digitaaliset asiakirjat (kuvat, henkilöllisyyspaperit jne.) Ja jakamaan ne valinnaisesti.
- Haluan jakaa tämän ratkaisun jonkun muun kanssa (luotettavan henkilön, vanhempien tai ystävän kanssa)
- En halua olla riippuvainen julkisesta pilvestä (tilaus, maksut, muuttuvat GTC jne.)
Periaate
- Luo kaksi samanlaista säilytyskonetta ja aseta ne kahteen eri paikkaan (esimerkiksi kahteen taloon).
- Määritä oma tallennustila kullekin koneelle.
- Synkronoi säännöllisesti 2 tallennustilaa.
Tarvikkeet
Laitteisto
Jokaisessa koneessa on:
- 1 x Raspberry Pi 4 B 1 Gt
- 1x laatikko Raspberry Pi 4: lle
- 1x virtalähde USB C 5V 3A
- 1x SD -kortti Kingston SDC10/16GB
- 1x NAS -kiintolevy 1WD Red Mobile
- 1x kiintolevyrasia BX-2525U3
Ohjelmisto Windows
- balenaEtcher
- Raspbian buster -työpöytä täynnä
- mobaxterm
- VNC -katseluohjelma (valinnainen)
Paketit Raspbian
- Rsync
- samba
Vaihe 1: Hyödyt ja haitat
Edut
- Tämä ratkaisu on halpa: minulla ei ole tilausmaksua ja laitteisto on saatavilla.
- Tämä "etä RAID" on melko helppo tehdä. En tarvitse lisämateriaalia tai työkalua sen tekemiseen.
- Raspberry Pi: tä voidaan käyttää lisäsovelluksiin, kuten mediakeskus (kodi,…) tai domotic (jeedom, domoticz,…).
- Tietojani ei ole saatavana julkisessa pilvessä, joka voisi olla massiivisen datapiratirian kohde.
- Käyttämällä kiintolevyä 1To, keskimääräinen sähkönkulutus on sama kuin pilvessä.
- Reitittimen palomuuri ja yhteyteni SSH -salaus turvaavat tiedonsiirron.
Haitat/parannukset
- Jollain muulla on kopio asiakirjoistani. Minun tapauksessani tämä henkilö on perheestäni, joten en välitä.
- Käytän oletusarvoista "pi" -tiliä, jolla on oma salasana molemmille koneille. Voisin suojata pääsyn hieman enemmän käyttämällä erillistä erityistä tiliä kummallakin puolella "pi" -tilin sijasta.
- Luotan Internet -palveluntarjoajaani ja SSH -salaukseen kahden talon välisen yhteyden suojaamiseksi. Turvallisuustason parantamiseksi voidaan tehdä tutkimusta.
- Toistaiseksi olen tehnyt vain 2 osiota asemaa kohti. Pienempi kolmas osio (~ 5Go) voi olla hyödyllinen muille raspbian -toiminnoille µSD -kortin säilyttämiseksi.
Vaihe 2: Valmistele SD: Lataa Raspbian
Asenna "Raspbian Buster with desktop" tietokoneelta (Windows 10 minun tapauksessani) noudattamalla virallista asennusopasta (https://www.raspberrypi.org/downloads/raspbian/).
Lisää tyhjä tiedosto nimeltä "ssh" kansioon "/boot/"
Lisää tiedosto nimeltä "wpa_supplicant.conf" kansioon "/boot/"
Avaa wpa_supplicant.conf ja kirjoita teksti:
maa = USA
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "MyWiFiNetwork" psk = "aVeryStrongPassword" key_mgmt = WPA-PSK}
Tallenna ja sulje tiedosto.
Vaihe 3: Valmistele SD: Muokkaa korttia
Lisää tyhjä tiedosto nimeltä "ssh" kansioon "/boot/"
Lisää tiedosto nimeltä "wpa_supplicant.conf" kansioon "/boot/"
Avaa wpa_supplicant.conf ja kirjoita teksti:
maa = USA
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "MyWiFiNetwork" psk = "aVeryStrongPassword" key_mgmt = WPA-PSK}
Tallenna ja sulje tiedosto.
Vaihe 4: Valmista Raspberry Pi
Aseta SD -kortti Pi -laitteeseen
Käynnistä Raspberry Pi, valitse tapa avata työpöytä:
- Käytä hdmi -kaapelia, näyttöä, näppäimistöä ja hiirtä
- VNC: n käyttäminen tietokoneesta.
Lisätietoja on osoitteessa
Vaihe 5: Tapa 1: Yhdistä Pi -laitteeseen näytön, näppäimistön ja hiiren avulla
Liitä Raspberry Pi -portti HDMI0 näyttöön, jossa on mikro-hdmi-hdmi-kaapeli
Liitä USB -näppäimistö ja hiiri (tai langaton mininäppäimistö, kuten "Rii Mini i8 Wireless")
Kytke USB C -virtalähde ja käynnistä Raspberry Pi.
Raspbian käynnistyy näytölläsi.
Kun työpöytä tulee näkyviin, viimeistele Pi: n määritys vastaamalla asetuspaneeliin.
Vaihe 6: Tapa 2: Muodosta yhteys Pi -tietokoneeseen VNC: n avulla
Liitä Raspberry Pi ethernet -verkkoon (wifi -yhteydellä tai kaapelilla).
Avaa tietokoneeltasi Mobaxterm (tai kitti), aloita uusi ssh -yhteys (kirjaudu pi, salasana vadelma) ja määritä Pi:
ssh pi@raspberry_ip
sudo raspi-config
- Interfacing option / VNC: aseta Kyllä
- kohdassa Lisäasetukset / Tarkkuus: aseta DMT -tila 82 1920x1080 60Hz 16: 9
- Lisäasetukset / GL-ohjain: aseta alkuperäinen G1 Legacy -mukainen ei-GL-työpöytäasema
Tallenna ja sulje raspi-config
Käynnistä Pi uudelleen:
sudo uudelleenkäynnistys
Avaa tietokoneeltasi VNC Viewer ja muodosta yhteys Pi: hen kirjautumispiran, salasanan vadelma: Pi -työpöydän pitäisi näkyä.
Viimeistele Pi: n määritys vastaamalla asetuspaneeliin.
Kun olet vaihtanut Pi -salasanan, VNC -yhteys voi sulkeutua. Käynnistä se uudelleen käyttämällä uutta salasanaasi.
Vaihe 7: Valmistele kiintolevy
- Liitä kiintolevy tietokoneeseen.
- Avaa Windows -osionhallinta, valitse kiintolevy ja luo 2 NTFS -osiota (tai 3, jos haluat pienen vapaan tilan µSD -kortin säilyttämiseksi). Nimeän kaksi osaa esimerkiksi "loic" ja "vincent"
- Liitä kiintolevy Pi: hen: Raspbianin tulee asentaa automaattisesti 2 levyä työpöydälle. Asemat on linkitetty kansioon/media/pi/loic/ja/media/pi/vincent/
Vaihe 8: Määritä Rsync: Luo synkronointikomentosarja
avaa kehote Pi -työpöydällä
Luo komentosarja/home/pi/:
mkdir/home/pi/scriptsnano/home/pi/scripts/SB_sync
kirjoita teksti:
#!/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_ "machine Synkronointi ja kurssit: 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 "--------- -Debut: "` 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}
Määritä rivit 3-7:
- korvaa "loic" ja "vincent" asemasi nimellä
- port_distant: käytä toistaiseksi 22 etäporttina. Viimeisessä vaiheessa sinun on korvattava se toisella valitsemallasi arvolla (esimerkiksi: 34567)
tallenna tiedosto ja poistu.
Vaihe 9: Määritä Rsync: Suorita synkronointi kerran päivässä
Avaa kehotteessa crontab:
sudo crontab -u pi -e
Lisää tiedoston loppuun cron:
0 1 * * */usr/bin/flock -xn /tmp/flocktmp.lock -c "/home/pi/scripts/SB_sync"
Tässä ohjelmassa komentosarja SB_sync käynnistetään joka päivä klo 1.00. Valitse haluamasi tunti, mutta vaihda se kahden koneen välillä, jolloin 2 synkronia suoritetaan peräkkäin.
Tallenna ja sulje tiedosto.
Vaihe 10: Valmista Samba
Samba yhdistää linux -tallennustilan Windows -verkkoon.
Avaa kehote ja asenna paketit:
sudo apt-get install samba samba-common-bin -y
Anna tilin "pi" käyttöoikeus käyttääksesi Sambaa:
sudo smbpasswd -a pi
Tallenna Samban oletusasetustiedosto:
cp /etc/samba/smb.conf /etc/samba/smb.old
Avaa tiedosto:
sudo nano /etc/samba/smb.conf
Ja lisää tiedoston lopussa nämä rivit, jotta voit määrittää asemasi jaettavaksi:
[DOCUMENTS LOIC]
comment = NAS de loic path =/media/pi/loic valid users = @users force group = käyttäjät luovat maskin = 0660 hakemistomaski = 0775 vain luku = ei selattava = kyllä julkinen = kyllä
Tallenna tiedosto ja poistu.
Vaihe 11: [Valinnainen] Samba: Määritä lukuoikeus Network Drive Vincentille
Avaa Samba -määritystiedosto:
sudo nano /etc/samba/smb.conf
Ja lisää tiedoston lopussa nämä rivit määrittääksesi toisen aseman, jota haluat käyttää:
[ASIAKIRJAT VINCENT]
comment = varmuuskopio de vincent path =/media/pi/vincent valid users = @users force group = käyttäjät luovat maskin = 0660 hakemistomaski = 0775 vain luku = kyllä selattava = kyllä julkinen = kyllä
Tallenna tiedosto ja poistu.
Vaihe 12: [Valinnainen] Samba: Pääsy lokiin
Avaa Samba -määritystiedosto:
sudo nano /etc/samba/smb.conf
Ja tiedoston lopussa, lisää nämä rivit päästäksesi ikkunoista synkronointitilaan:
[LOG SYNCHRO] comment = "synkronointikoneiden lokit"
path =/home/pi/SB_sync_logs/valid users = @users force group = käyttäjät luovat maskin = 0660 hakemistomaski = 0771 vain luku = kyllä selattava = kyllä julkinen = kyllä
Tallenna tiedosto ja poistu.
Vaihe 13: [Valinnainen] Samba: Piilota hyödytön kansio "/home/pi"
Avaa Samba -määritystiedosto:
sudo nano /etc/samba/smb.conf
Etsi tiedostosta seuraavat rivit ja lisää ";" kommentoi alussa:
; [koteja]
; kommentti = Kotihakemistot; selattava = ei; vain luku = kyllä; luo maski = 0700; hakemistomaski = 0700; kelvolliset käyttäjät = %S
Tallenna tiedosto ja poistu.
Vaihe 14: Pääsy verkkoasemaan Windowsista
Avaa explorer Windows -tietokoneella.
Napsauta "Verkko" ja päivitä ikkuna.
Näyttöön tulee tietokone, jossa on Rapberry Pi -laitteesi nimi.
Avaa se käyttämällä tiliä "pi" ja salasanaasi.
Sinun pitäisi nähdä aiemmin lisätyt kansiot Samban määritystiedostossa.
Vaihe 15: Valmistele toinen kone
Ensimmäinen koneesi on valmis.
Toista edelliset vaiheet toiselle koneelle korvaamalla (esimerkiksi) "loic" sanalla "vincent".
Kun kaksi konetta on valmisteltu, sinun on vaihdettava ssh -avain salliaksesi pääsyn niiden välillä, katso seuraava vaihe.
Vaihe 16: Luo SSH paikallisen ja etäkoneen välille
SSH -avaimen jakamisen yksinkertaistamiseksi jokainen Raspberry Pi on yhdistettävä samaan ethernet -verkkoon.
Avaa jokaisen Raspberry Pi -kehote Pi -työpöydällä ja kirjoita:
ssh -keygen -q -t rsa -b 2048 -N ''
ssh-copy-id pi@IP_of_other_raspberry
Vaihe 17: Testaa synkronointi
Kaksi konetta ovat valmiina.
Voit testata synkronointia Windows -tietokoneellasi:
- lisää tiedosto paikalliseen verkkoasemaan (esim. / Rpi4-loic / documents loic / test / test.txt),
- suorita komentosarja paikallisella Pi -työpöydällä (suorita SB_sync in/home/pi/scripts)
- tarkista, että tiedostosi näkyy vara-verkkoasemassa (eli / Rpi4-vincent / documents loic / test / test.txt).
Sinun pitäisi pystyä lukemaan ja kirjoittamaan tiedostoja / Rpi4-loic / documents loic / test \, mutta vain lukemaan tiedostoja / Rpi4-vincent / documents loic / test \.
Seuraava ja viimeinen vaihe on siirtää "etä" kone toisen paikan verkon sisälle ja määrittää yhteys kahden reitittimen välille Internetin kautta.
Vaihe 18: Määritä Internet -reitit
Minun tapauksessani kotitilaa varten tilaan Internet -yhteyden, joka sisältää reitittimen ja kiinteän IP -osoitteen.
Etäkoneessa Internet -palveluntarjoaja on sama, joten määritys on helpompaa, enkä tarvitse DNS: ää.
Kodissani:
- Luon reitittimessäni portin reitin "remote_internet_fixed_IP" osoitteesta "port_34567" porttiin "my_raspberry_IP" portissa "22"
- Korvaan vadelmassani,/home/pi/scripts/SB_sync -kohdassa "port_distant" -arvon "22" arvolla "port_34567"
Syrjäisessä paikassa:
- Luon reitittimessä portin reitin "my_internet_fixed_IP" osoitteessa "port_34567" porttiin "my_raspberry_IP" portissa "22"
- Etäisessä vadelmassa,/home/pi/scripts/SB_sync, korvaa "port_distant" -arvon "22" arvolla "port_34567"
Sovellukseesi:
- Sinun on korvattava IP -osoitteet ja port_34567 omilla.
- Jos kyseessä on dynaaminen Internet -IP, sinun on tilattava DNS.
Toista edellisen vaiheen testi vadelman etäomistajan avulla.
Valmis!
Vaihe 19: Bibliografia
Asenna Raspbian µSD -kortille
Mukauta µSD -korttia alustamisen jälkeen (SSH ja WiFi)
Raspberry Pi -laitteen käyttäminen
Raspberry Pi Sync ja feralhostingin rysnc
Erityinen SSH -portti Rsyncille
Asenna ja käytä Sambaa