Istnieje kilka różnych pytań i odpowiedzi na ten temat. Jednak podczas wyszukiwania nie byłem w stanie znaleźć odpowiedzi, którą można by uznać za „kanoniczną” lub która gromadziłaby różne opcje w jednym miejscu.
Chciałbym wykonać kopię zapasową zawartości mojego Raspberry Pi, aby umożliwić pełne przywrócenie w razie potrzeby, łatwo i niezawodnie.
Te funkcje byłyby idealne:
- Kopie zapasowe przechowywane w lokalizacji zewnętrznej (pamięć USB, DAS, NAS, komputer sieciowy itp.)
- Automatyzacja przyrostowa lub poprzez harmonogram
- Numeracja wersji kopii zapasowych
Klonowanie karty SD wydaje się być popularnym rozwiązaniem, ale zgodnie z tym postem Goldilocks nie jest to zalecane, ponieważ klon zawiera pliki, które są ładowane tylko w czasie wykonywania itp.
Zakładam więc, że dobre rozwiązanie wykorzystuje coś podobnego rsync
lub być może bardziej niezawodnego, narzędzie, które poradzi sobie z powyższą krytyką.
Moja szczególna sytuacja: mam Raspberry Pi w sieci LAN, gdzie mogę wykonać kopię zapasową na komputerze Mac OS X, Synology DiskStation NAS lub na karcie pamięci USB podłączonej do Raspberry. Wolałbym nie używać tego drugiego.
Odpowiedzi:
Rsnapshot spełnia następujące kryteria: 1
Może być używany lokalnie lub zdalnie.
Może być zautomatyzowany / zaplanowany.
Wykorzystuje numerowane przyrostowe kopie zapasowe.
Nie mam z tym większego osobistego doświadczenia poza faktem, że jest on używany na serwerach, na których pracuję, gdzie od czasu do czasu oszczędzał dzień, ale wydaje się, że jest tutaj miłe wprowadzenie , wiki Arch linux, która zwykle ma świetne dokumentacja, ma stronę (jestem pewien, że większość z nich odnosi się równie dobrze do innych dystrybucji), a strona główna odnosi się do HOWTO, którego nie mogę znaleźć w Internecie, ale po jej wyszukaniu pojawiły się liczne samouczki, dyskusje itp. oprócz tych linków (faktyczne instrukcje mogą być trzymane w trybie offline, aby ludzie nie mylili się przy użyciu niewłaściwego z niewłaściwą wersją).
źródło
Wypróbowałem kilka technik tworzenia kopii zapasowych. Używam 2 regularnie.
Klonuję kartę SD na komputerze Mac i kompresuję obraz. Używam tego jako kopii bezpieczeństwa lub do tworzenia duplikatów kart. Zgadzam się, że to nie jest ideał. Mój skrypt jest poniżej.
Częściej używam
rsync
do kopiowania na HD załączony do Pi. Szczegółowe informacje można znaleźć na stronie /raspberrypi//a/28087/8697 .W rzeczywistości mam nieco inne wersje do tworzenia kopii zapasowych obrazów Wheezy, Jessie i MATE (do różnych katalogów).
Próbowałem zsynchronizować rsync z komputerem Mac, ale to tylko częściowo zadziałało. Podstawowym problemem jest to, że użytkownicy komputerów Mac i Pi nie pasują, nie mówiąc już o różnicach między
rsync
różnymi platformami. Przy zmianach bezpieczeństwa w najnowszym systemie OS X prawdopodobnie miałby jeszcze więcej problemów.Z powodzeniem wykorzystałem jedno Pi do wykonania kopii zapasowej drugiego w sieci.
Nie wiem, jak to by działało na serwerze NAS, ale podejrzewam, że mogą występować problemy z hardlinkami i uprawnieniami.
źródło
Jeśli weźmiesz pod uwagę te 2 fakty, otworzysz się na inne opcje:
tmpfs
wierzchowce gdziekolwiek chcesz zamaskować katalog.Tak, istnieje wiele ścieżek, których nie chcesz tworzyć kopii zapasowej. Większość z nich można uniknąć, instalując partycję podstawową w drugim katalogu. Inni nadal będą mieć dane, których nie chcesz tworzyć kopii zapasowej
/tmp
,/dev
i/var/log
.Mój proces przebiegał tak ...
Zamontuj dokładnie, co chciałem wykonać kopię zapasową
Skopiuj dane poprzez ssh + tar
Usuń tymczasowe mocowania
Gdy jesteś zadowolony z wyników, możesz umieścić wszystko w jednym pliku, takim jak
~/backup.sh
A dzwonienie przebiega w ten sposób ...
WSKAZÓWKA: Podczas eksperymentów zmień
tar cf - *
na,tar cf - etc
aby zaoszczędzić sporo czasu na każdym uruchomieniu testowym.źródło
Miałem ten sam problem z moim Raspis @ home. Dlatego napisałem raspiBackup, który pozwala regularnie tworzyć kopie zapasowe dd, tar i rsync bez inwencji użytkownika. Po prostu daj temu szansę.
źródło