Nikt nie chce stracić swoich postępów z powodu awarii systemu, dlatego niezależnie od platformy istnieje sposób na zachowanie kopii zapasowej systemu. W tym poście będziemy używaćRsyncDowykonaj kopię zapasową Raspberry Pi bezdokuczać. Nie jest to narzędzie wiersza poleceń, za pomocą którego można po prostu wykonać kopię zapasową systemu i przywrócić ją w razie potrzeby.
Zrób kopię zapasową Raspberry Pi
W tym samouczku dowiemy się, jak wykonać kopię zapasową Raspberry Pi, zaplanować ją i przywrócić przy użyciu tej kopii zapasowej.
- Użyj Rsync, aby wykonać kopię zapasową
- Utwórz pełną kopię zapasową i zaplanuj ją za pomocą Cronjob
- Przywróć za pomocą kopii zapasowej
Omówmy je szczegółowo.
1] Użyj Rsync, aby wykonać kopię zapasową
Rsync to przydatne narzędzie wiersza poleceń służące do synchronizowania i przesyłania plików. Świetnie nadaje się do tworzenia kopii zapasowych, ponieważ kopiuje tylko te części plików, które uległy zmianie. Oszczędza to czas i zasoby. Rsync jest szczególnie przydatny do tworzenia kopii zapasowych dużych plików lub folderów, które często się zmieniają.
Mimo że jest on preinstalowany w większości Raspberry Pi, nadal musimy go sprawdzić z naszej strony i zainstalować. Aby to zrobić, otwórzTerminala następnie uruchom następujące polecenie.
sudo apt-get install
Jeśli otrzymasz wiadomość mówiącąrsync to już najnowsza wersja,funkcja została zainstalowana i możesz kontynuować tworzenie kopii zapasowej.
Następnie musimy zdecydować, gdzie chcemy przechowywać kopię zapasową. Może to być dysk zewnętrzny, pamięć sieciowa (NAS), folder na komputerze lub inny komputer w sieci.
Aby wykonać kopię zapasową, musisz uruchomić następujące polecenie.
rsync -av --delete /path/to/source /path/to/destination
Teraz podzielmy dla Ciebie to polecenie.
- ALubarchiwumzachowuje uprawnienia do plików, znaczniki czasu i inne atrybuty.
- wLubgadatliwyzapewnia szczegółowe dane wyjściowe kopiowanych plików.
- -usuwaćusuwa z miejsca docelowego pliki, których już nie ma w źródle
Upewnij się, że podałeś poprawną ścieżkę źródłową i docelową, a następnie uruchom polecenie.
Jeśli chcesz zweryfikować po wykonaniu kopii zapasowej, możesz uruchomić następujące polecenie.
rsync -avn --delete /path/to/source /path/to/destination
Jeśli na liście nie ma żadnych plików, oznacza to, że kopia zapasowa jest aktualna.
2] Utwórz pełną kopię zapasową i zaplanuj ją za pomocą Cronjob
Jeśli znasz system operacyjny Linux, wiesz, że istnieje możliwość zaplanowania tworzenia kopii zapasowej w Crontab. Jednak wcześniej dowiemy się, jak wykonać pełną kopię zapasową Raspberry Pi.
Ponieważ zamierzamy wykonać pełną kopię zapasową, musisz mieć miejsce docelowe kopii zapasowej, takie jak karta SD lub dysk zewnętrzny, na którym można przechowywać kopię zapasową. Upewnij się, że dysk kopii zapasowej jest sformatowany przy użyciu systemu plików zgodnego z Linuksem, np. ext4, aby zachować uprawnienia do plików.
sudo rsync -avxhP --delete / /backup-location
Zanim jednak uruchomimy polecenie tworzenia kopii zapasowej, jeśli chcesz wykluczyć kilka katalogów, utwórz listę ich wszystkich, a następnie dodaj je do pliku, powiedzmywykluczone-katalogi.txt. Gdy już to zrobisz, możesz uruchomić następujące polecenie.
sudo rsync -avxhP --delete --exclude-from=/text-file-location/excluded-directories.txt / /home/backup/rootfs/
To polecenie wykona pełną kopię zapasową Raspberry i wykluczy katalogi wymienione w pliku wykluczonych katalogów.txt oraz/home/backup/rootfs/katalogto miejsce, w którym przechowywane są nasze pliki.
Teraz utwórzmy skrypt, aby zaplanować tworzenie kopii zapasowej, ale wcześniej utwórz nowy katalog o nazwiekopia zapasowana/dom/pilokalizacja.
#!/bin/bash # Define backup and log paths BACKUP_DIR="/home/pi/backup" LOG_PATH="logfile-location/backup.txt" # Verify if the backup directory is mounted if ! grep -qs "$BACKUP_DIR" /proc/mounts; then echo "Backup drive not mounted at $BACKUP_DIR" >> $LOG_PATH exit 1 fi # Log the current date and time echo "Backup started: $(date)" >> $LOG_PATH # Execute rsync to back up the root file system sudo rsync -avxhP --delete \ / "$BACKUP_DIR/rootfs/" \ >> $LOG_PATH 2>&1 # Confirm the backup completion echo "Backup completed: $(date)" >> $LOG_PATH echo "----------------------" >> $LOG_PATH
Pamiętaj, aby zastąpić plik logfile-location/backup.txt rzeczywistą lokalizacją kopii zapasowej.
Nazwiemy plikkopia zapasowa pełna.sh.
Zanim to zaplanujemy, pobiegnijmychmod +x kopia zapasowa-pi.sh.Aby to zaplanować, wpiszcrontab -e,a następnie dodaj linię0 14 * * 6 /lokalizacja-backupscript/backup-full.sh.
Możesz teraz zapisać plik.
3] Przywróć za pomocą kopii zapasowej
Teraz, gdy utworzyliśmy kopię zapasową i zaplanowaliśmy ją, zobaczmy, jak przywrócić system za jej pomocą. Jeśli chcesz przywrócić katalog, uruchom następujące zapytanie.
rsync -av /home/backup/rasp /home/backup/rasp1
/home/backup/raspjest miejscem docelowym, z którego kopiowane są pliki kopii zapasowych, natomiast/home/backup/rasp1to lokalizacja docelowa, do której kopiowane są pliki.
Aby przywrócić system, zainstaluj nową kopię systemu operacyjnego Raspberry Pi na nowej karcie SD. Po zainstalowaniu uruchom Pi i zakończ wstępną konfigurację. Następnie podłącz dysk kopii zapasowej do Pi. Gdy wszystko jest podłączone i działa, użyj następującego polecenia, aby przywrócić kopię zapasową.
sudo rsync -avxhP /home/backup/rootfs/ /
Po zakończeniu uruchom ponownie komputer i gotowe.
Czytać:
Jak zapisać Raspberry Pi?
Jeśli chcesz zapisać Raspberry Pi, możesz wykonać kopię zapasową systemu operacyjnego. za pomocą narzędzia poleceń Rsync. Wystarczy podłączyć kartę SD i wykonać pełną kopię zapasową za pomocą wspomnianego wcześniej polecenia.
Czytać:
Jak wyczyścić i zresetować Raspberry Pi?
Nie ma możliwości przywrócenia ustawień fabrycznych Raspberry Pi. Jedyne, co możesz w tym przypadku zrobić, to ponownie zainstalować system operacyjny Raspberry Pi na karcie SD, co spowoduje usunięcie wszystkich danych. Jeśli chcesz zachować kilka elementów przed ponowną instalacją kopii zapasowej tych katalogów, postępuj zgodnie z powyższym samouczkiem.
Przeczytaj także: