Мазмуну:

Оңой жана арзан Remote RAID үчүн 2 Raspberry Pis: 19 кадам
Оңой жана арзан Remote RAID үчүн 2 Raspberry Pis: 19 кадам

Video: Оңой жана арзан Remote RAID үчүн 2 Raspberry Pis: 19 кадам

Video: Оңой жана арзан Remote RAID үчүн 2 Raspberry Pis: 19 кадам
Video: Начало → Изучайте английский → Освойте ВСЕ ОСНОВЫ АНГЛИЙСКОГО ЯЗЫКА, которые вам НУЖНО знать! 2024, Ноябрь
Anonim
Оңой жана арзан Remote RAID үчүн 2 Raspberry Pis
Оңой жана арзан Remote RAID үчүн 2 Raspberry Pis
Оңой жана арзан Remote RAID үчүн 2 Raspberry Pis
Оңой жана арзан Remote RAID үчүн 2 Raspberry Pis

Максаты

  1. Үйдө кандайдыр бир окуя болгон учурда, мен негизги санарип документтеримди (сүрөттөр, инсандыгын тастыктоочу документтер ж.
  2. Мен бул чечимди башка бирөө менен бөлүшкүм келет (мен ишенген адам, ата -энем же досум)
  3. Мен коомдук булутка көз каранды болгум келбейт (жазылуу, төлөмдөр, өнүгүп келе жаткан GTC ж.

Принцип

  1. 2 бирдей сактоочу машинаны түзүңүз, аларды 2 башка жерге коюңуз (мисалы, 2 үй).
  2. Ар бир машинанын ар бир жерине атайын сактагыч бөлүңүз.
  3. Дайыма 2 сактоо мейкиндигин синхрондоштуруңуз.

Жабдуулар

Аппараттык

Ар бир машинада төмөнкүлөр бар:

  • 1x Raspberry Pi 4 B 1GB
  • Raspberry Pi 4 үчүн 1x куту
  • 1x электр менен камсыздоо USB C 5V 3A
  • 1x SD карта Kingston SDC10/16GB
  • 1x NAS HDD 1To WD Red Mobile
  • 1x HDD кутуча BX-2525U3

Программалык камсыздоо Windows

  • balenaEtcher
  • Raspbian buster рабочийи толгон
  • mobaxterm
  • VNC көрүүчү (милдеттүү эмес)

Пакеттер Raspbian

  • Rsync
  • самба

1 -кадам: Pro & Cons

Pro & Cons
Pro & Cons

Артыкчылыктары

  1. Бул чечим арзан: менде абоненттик төлөмдөр жок жана жабдыктар жеткиликтүү.
  2. Бул "алыскы RAID" жасоо абдан оңой. Муну аткаруу үчүн мага кошумча материалдын же инструменттин кереги жок.
  3. Raspberry Pi медиа борбору (kodi,…) же домотикалык (jeedom, domoticz,…) сыяктуу кошумча тиркемелер үчүн колдонулушу мүмкүн.
  4. Менин маалыматтарым массалык маалымат каракчылыгынын максаты болушу мүмкүн болгон коомдук булутта жок.
  5. 1To HDD колдонуп, орточо электр керектөө булут менен бирдей.
  6. Маршрутизаторумдун файрволу жана менин туташуумдун SSH шифри маалымат алмашууну камсыздайт.

Кемчиликтер/жакшыртуулар

  1. Дагы бирөөдө менин документтеримдин көчүрмөсү бар. Менин учурда, бул адам менин үй -бүлөмдөн болгондуктан мага баары бир.
  2. Мен демейки "pi" эсебин колдоном, экөө тең машинага арналган сырсөз менен. Мен "pi" эсебине караганда, ар бир тарапта өзүнчө конкреттүү эсепти колдонуу менен бир аз көбүрөөк кирүүнү камсыздай алам.
  3. Мен 2 үйдүн ортосундагы байланыштын коопсуздугу үчүн интернет кызмат көрсөтүүчүмө жана SSH шифрине таянам. Коопсуздук деңгээлин жогорулатуу үчүн изилдөө жүргүзүлүшү мүмкүн.
  4. Азырынча мен бир дискке 2 гана бөлүк жасадым. Кичинекей 3 -бөлүк (~ 5Go) µSD картасын сактоо үчүн башка Raspbian ишмердүүлүгү үчүн пайдалуу болушу мүмкүн.

2 -кадам: SD даярдоо: Raspbian жүктөө

Компьютерден (менин учурда Windows 10), "Raspbian Buster with desktop" орнотуу үчүн расмий орнотуу көрсөтмөсүн аткарыңыз (https://www.raspberrypi.org/downloads/raspbian/).

"/Boot/" дискине "ssh" аттуу бош файлды кошуңуз

"/Boot/" дискине "wpa_supplicant.conf" аттуу файлды кошуңуз

Wpa_supplicant.conf ачып, текстти киргизиңиз:

өлкө = АКШ

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

Файлды сактап, жабыңыз.

3 -кадам: SD даярдоо: Картаны ыңгайлаштыруу

SD даярдоо: Картаны ыңгайлаштыруу
SD даярдоо: Картаны ыңгайлаштыруу

"/Boot/" дискине "ssh" аттуу бош файлды кошуңуз

"/Boot/" дискине "wpa_supplicant.conf" аттуу файлды кошуңуз

Wpa_supplicant.conf ачып, текстти киргизиңиз:

өлкө = АКШ

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

Файлды сактап, жабыңыз.

4 -кадам: Raspberry Pi даярдаңыз

SD картаңызды Pi'ге салыңыз

Raspberry Pi'ди күйгүзүңүз, рабочийди ачуунун жолун тандаңыз:

  1. HDMI кабелин, экранды, клавиатураны жана чычканды колдонуу
  2. VNCди компьютериңизден колдонуу.

Кошумча маалымат алуу үчүн https://projects.raspberrypi.org/en/projects/raspberry-pi-using/1 дарегине баш багыңыз

5 -кадам: 1 -жол: Пи менен экранга, клавиатурага, чычканга туташыңыз

1 -ыкма: Пи менен экранга, клавиатурага, чычканга туташыңыз
1 -ыкма: Пи менен экранга, клавиатурага, чычканга туташыңыз
1 -ыкма: Пи менен экранга, клавиатурага, чычканга туташыңыз
1 -ыкма: Пи менен экранга, клавиатурага, чычканга туташыңыз

Raspberry Pi портун HDMI0 микро-hdmi менен hdmi кабели бар экранга туташтырыңыз

USB клавиатурасын жана чычканды сайыңыз (же "Rii Mini i8 Wireless" сыяктуу зымсыз мини клавиатура)

USB C энергия булагын сайыңыз жана Raspberry Pi'ни күйгүзүңүз.

Raspbian экраныңыздан башталат.

Иш столу пайда болгондон кийин, конфигурация панелине жооп берип, Пиңиздин конфигурациясын бүтүрүңүз.

6 -кадам: 2 -жол: Компьютериңизден VNCди колдонуу менен Piге туташыңыз

2 -жол: Компьютериңизден VNCди колдонуу менен Пи -ге туташыңыз
2 -жол: Компьютериңизден VNCди колдонуу менен Пи -ге туташыңыз
2 -жол: Компьютериңизден VNCди колдонуу менен Пи -ге туташыңыз
2 -жол: Компьютериңизден VNCди колдонуу менен Пи -ге туташыңыз
2 -жол: Компьютериңизден VNCди колдонуу менен Пи -ге туташыңыз
2 -жол: Компьютериңизден VNCди колдонуу менен Пи -ге туташыңыз

Raspberry Pi'ди ethernet тармагыңызга туташтырыңыз (wifi же кабель аркылуу).

Компьютериңизден Mobaxtermди (же шпаклевканы) ачыңыз, жаңы ssh туташуусун баштаңыз (логин пи, малинанын сырсөзү) жана Piңизди конфигурациялаңыз:

ssh pi@raspberry_ip

sudo raspi-config

  • Interfacing опциясында / VNC: Ооба деп коюңуз
  • Өркүндөтүлгөн тандоолордо / Чечимде: DMT Mode 82 1920x1080 60Hz 16: 9 коюңуз
  • Өркүндөтүлгөн тандоолордо / GL драйверинде: G1 Legacy Original GL эмес рабочий дискти коюңуз

Сактоо жана raspi-configдан чыгуу

Пиди кайра жүктөө:

sudo өчүрүп күйгүзүү

Компьютериңизден VNC Viewer программасын ачыңыз жана кирүү пи, малинанын сырсөзү аркылуу Piге туташыңыз: Pi столунун көрүнүшү керек.

Пиңиздин конфигурациясын бүтүрүү үчүн конфигурация панелине жооп бериңиз.

Pi сырсөзүн өзгөрткөндөн кийин, VNC байланышы жабылышы мүмкүн. Жаңы сырсөзүңүздү колдонуп, аны өчүрүп күйгүзүңүз.

7 -кадам: HDDди даярдаңыз

HDDди даярдаңыз
HDDди даярдаңыз
HDDди даярдаңыз
HDDди даярдаңыз
  1. HDDди компьютериңизге туташтырыңыз.
  2. Windows бөлүм башкаруучусун ачыңыз, HDDиңизди тандап, 2 NTFS бөлүгүн түзүңүз (же 3, эгер сиз µSD картасын сактоо үчүн кичинекей бош орун керек болсо). Мисалы, мен 2 бөлүктү "loic" жана "vincent" деп атайм
  3. HDDди Pi'ге туташтырыңыз: Raspbian столуна автоматтык түрдө 2 дискти орнотушу керек. Дисктер папкага/медиа/pi/loic/жана/media/pi/vincent/шилтемеленген.

8 -кадам: Rsyncти конфигурациялоо: Synchro Script түзүү

Rsyncти конфигурациялоо: Synchro Script түзүү
Rsyncти конфигурациялоо: Synchro Script түзүү

Pi столунда чакыруу ачыңыз

/Home/pi/ичинде скрипт түзүңүз:

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

текстти киргизиңиз:

#!/bin/sh

######## Конфигуратор ############ 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 = `дата+"%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} ech Синхрондоштуруу: $ {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 "--------- -Дебут: "` дата +"%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

echo "---------- Fin:" `date +"%Y-%m-%d%T "" "----------" >> $ {log_local}/ 1. $ {machine_locale} _vers _ $ {machine_distante}.log

$ {log_local} /0.synchro_en_cours _ $ {machine_locale} _vers _ $ {machine_distante}

3төн 7ге чейинки саптарды конфигурациялоо:

  • дисктердин аты менен "loic" жана "vincent" алмаштырыңыз
  • port_distant: азырынча 22ди алыскы порт катары колдонуңуз. Акыркы кадамда сиз аны тандаган башка мааниге алмаштырышыңыз керек болот (мисалы: 34567)

файлды сактоо жана чыгуу.

9 -кадам: Rsyncти конфигурациялоо: Күнүнө бир жолу синхронду аткарыңыз

Ишаратта, crontab ачыңыз:

sudo crontab -u pi -e

файлдын аягында cron кошуңуз:

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

Бул крондо SB_sync сценарийи күн сайын түнкү 1де башталат. Каалаган саатты тандаңыз, бирок аны 2 машинанын ортосунда өзгөртүңүз, андыктан 2 синхронизация биринин артынан бири аткарылат.

Файлды сактап, жабыңыз.

10 -кадам: Самбаны даярдаңыз

Samba Linux сактагычын Windows тармагына туташтырат.

Ишаратты ачыңыз жана пакеттерди орнотуңуз:

sudo apt-get samba samba-common-bin -y орнотуу

Самбага кирүү үчүн "pi" эсебин авторизациялоо:

sudo smbpasswd -a pi

Демейки Samba конфигурация файлын сактаңыз:

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

Файлды ачыңыз:

sudo nano /etc/samba/smb.conf

Жана файлдын аягында, дискти бөлүшүү үчүн конфигурациялоо үчүн бул саптарды кошуңуз:

[DOCUMENTS LOIC]

комментарий = NAS de loic path =/media/pi/loic жарактуу колдонуучулар = @users force group = колдонуучулар маска түзүшөт = 0660 каталог маскасы = 0775 окуу үчүн гана = жок серептөө = ооба коомдук = ооба

Файлды сактоо жана чыгуу.

11 -кадам: [Милдеттүү эмес] Samba: Винсент тармагына окуу мүмкүнчүлүгүн конфигурациялоо

Samba конфигурация файлын ачыңыз:

sudo nano /etc/samba/smb.conf

Жана файлдын аягында, киргиңиз келген башка дискти конфигурациялоо үчүн бул саптарды кошуңуз:

[DOCUMENTS VINCENT]

комментарий = камдык де винсент жолу =/медиа/пи/винсент жарактуу колдонуучулар = @users force group = колдонуучулар маска түзүү = 0660 каталог маскасы = 0775 окуу үчүн гана = ооба карап чыгуу = ооба коомдук = ооба

Файлды сактоо жана чыгуу.

12 -кадам: [Милдеттүү эмес] Samba: Журналга кирүү

Samba конфигурация файлын ачыңыз:

sudo nano /etc/samba/smb.conf

Жана файлдын аягында, терезелерден синхрондуу абалына кирүү үчүн бул саптарды кошуңуз:

[LOG SYNCHRO] comment = "машиналардын синхрондук журналдары"

path =/home/pi/SB_sync_logs/valid users = @users force group = колдонуучулар маска түзүү = 0660 каталог маскасы = 0771 окуу үчүн гана = ооба карап чыгуу = ооба коомдук = ооба

Файлды сактоо жана чыгуу.

13 -кадам: [Милдеттүү эмес] Samba: Пайдасыз папканы жашыруу "/home/pi"

Samba конфигурация файлын ачыңыз:

sudo nano /etc/samba/smb.conf

Файлда төмөнкү саптарды таап, ";" кошуңуз. башында комментарий жазыңыз:

; [үйлөр]

; комментарий = Үй каталогдору; карап чыгуу = жок; окуу үчүн гана = ооба; маска түзүү = 0700; каталог маскасы = 0700; жарактуу колдонуучулар = %S

Файлды сактоо жана чыгуу.

14 -кадам: Windows тартып Network Drive жетүү

Windows тартып Network Drive жетүү
Windows тартып Network Drive жетүү

Windows компьютеринен изилдөөчүнү ачыңыз.

"Тармакты" чыкылдатып, терезени жаңыртыңыз.

Сиздин Rapberry Pi деген аталыштагы компьютер пайда болот.

Аны "pi" эсебин жана сырсөзүңүздү колдонуп ачыңыз.

Сиз Samba конфигурация файлында мурда кошулган папкаларды көрүшүңүз керек.

15 -кадам: 2 -машинаны даярдаңыз

Сиздин 1чи машинаңыз даяр.

2 -машина үчүн мурунку кадамдарды кайталаңыз, "мисал" "винсент" менен алмаштырыңыз.

2 машина даярдалгандан кийин, алардын ортосундагы кирүүгө уруксат берүү үчүн ssh ачкычын алмаштырышыңыз керек болот, кийинки кадамды караңыз.

16 -кадам: Жергиликтүү жана алыскы машинанын ортосунда SSH түзүңүз

SSH ачкычын бөлүшүүнү жөнөкөйлөтүү үчүн, ар бир Raspberry Pi бир эле Ethernet тармагына туташуусу керек.

Ар бир Raspberry Pi'де, Pi столунда чакырууну ачып, киргизиңиз:

ssh -keygen -q -t rsa -b 2048 -N ''

ssh-copy-id pi@IP_of_other_raspberry

17 -кадам: Synchro сыноо

Synchro сыноо
Synchro сыноо
Synchro сыноо
Synchro сыноо
Synchro сыноо
Synchro сыноо

Сиздин 2 машина даяр.

Сиз Windows компьютериңизде синхронду текшере аласыз:

  1. жергиликтүү тармак тутумуңузга файл кошуңуз (б.а. / Rpi4-loic / документтер loic / test / test.txt),
  2. скриптти жергиликтүү Pi столунда иштетиңиз (SB_syncти/home/pi/скрипттерде аткарыңыз)
  3. Сиздин файл камдык тармактык дискте пайда болгонун текшериңиз (б.а. / Rpi4-vincent / документтер loic / test / test.txt).

Сиз файлдарды / Rpi4-loic / document loic / test / файлында окуп жана жаза билишиңиз керек, бирок файлдарды / Rpi4-vincent / документтерде loic / test / файлында гана окушуңуз керек.

Кийинки жана акыркы кадам - "алыскы" машинаны башка жердин тармагына жылдыруу жана интернет аркылуу 2 роутердин ортосундагы байланышты конфигурациялоо.

18 -кадам: Интернет жолдорун конфигурациялоо

Менин учурда, үйдөгү жергиликтүү машина үчүн, мен роутерди жана туруктуу IPди камтыган интернетке жазылам.

Алыскы машина үчүн Интернет провайдери бирдей, андыктан конфигурация оңой жана мага DNS кереги жок.

Менин үйүмдө:

  • Менин роутеримде, "port_34567" дарегиндеги "remote_internet_fixed_IP" дан "22" портунда "my_raspberry_IP" га чейин порт каттамын түзөм.
  • Менин малинамда,/home/pi/scripts/SB_sync, мен "port_distant" маанисин "22" менен "port_34567" алмаштырам

Алыскы жерде:

  • Роутерде мен "my_internet_fixed_IP" дан "port_34567" ден "my_raspberry_IP" га "22" портунан маршрут түзөм.
  • Алыскы малинада,/home/pi/scripts/SB_sync, мен "port_distant" маанисин "22" менен "port_34567" алмаштырам

Сиздин арыз үчүн:

  • Сиз IP жана port_34567'ди өзүңүзгө алмаштырышыңыз керек.
  • Динамикалык интернет IP болгон учурда, сиз DNSке жазылууңуз керек.

Алыскы малинанын ээсинин жардамы менен мурунку кадамдын тестин кайталаңыз.

Бүттү!

19 -кадам: Библиография

Raspbian программасын µSD картасына орнотуңуз

Форматталгандан кийин µSD картасын ыңгайлаштыруу (SSH жана WiFi)

Сиздин Raspberry Pi колдонуу

Raspberry Pi Sync, rysnc менен feralhosting аркылуу

Rsync үчүн атайын SSH порту

Samba орнотуу жана колдонуу

Сунушталууда: