Czy jest możliwe wykonanie kopii zapasowej działającego systemu Debian do jakiegoś pliku obrazu, który można po prostu zapisać z powrotem na inny dysk twardy przy użyciu dd w przypadku awarii oryginalnego (zapasowego) systemu Debian?
Szczególnie szukam narzędzia bezpośrednio dostępnego w repozytoriach, ponieważ mam Debian Wheezy działający na raspberry pi i dlatego potrzebuję wsparcia dla architektury ARM, która jest dość niezawodna dla pakietów repozytoriów Debiana.
mount -o remount,ro
napędu kopiowania jeśli zdecydują się nadd
,dump
lub podobny. Kopiowanie z użyciem systemu plików za pomocąrsync
dowolnej innej metody, w tym systemu,cp
jest bezpieczne dla systemu na żywo.Odpowiedzi:
dd
jest dobry, jeśli nie masz nic przeciwko generowaniu pliku obrazu, który ma dokładnie rozmiar Twojego surowego dysku.rsync
jest dobry, jeśli chcesz mieć łatwy dostęp na poziomie plików. Ale standardowym sposobem tworzenia kopii zapasowej systemu plików jestdump
irestore
(aptitude install dump
).Dla urządzenia takiego jak Raspberry Pi, wykonałbym kopię zapasową w następujący sposób, zakładając, że tablica partycji MS-DOS i dysk to / dev / sda:
dd if=/dev/sda of=sda-boot-sectors.img count=2048
aby uzyskać obraz sekcji rozruchowej dysku.fdisk -lu /dev/sda >sda-partition-table.txt
do późniejszego odniesienia do człowieka.dump -0af sda1-root-level0.dump /dev/sda1
i powtórz dla każdej partycji, dla której chcesz utworzyć kopię zapasową.Następnie możesz skompresować partię i zostawić ją w bezpiecznym miejscu. Aby przywrócić, należy
dd
przywrócić tablicę partycji i sektory rozruchowe, ponownie załadować tablicę partycji, utworzyć nowy system (systemy) plików i użyćcd /mnt/new-filesystem; restore -rf /some-location/sda1-root-level0.dump
.Plusy:
dump
pobiera pełną kopię systemu plików, w tym listy ACL, rozszerzone atrybuty, własność, rzadkie pliki, specjalne atrybuty systemu plików - wszystko jest zrzucane bez zmian.Wady:
rsync
kopiom zapasowym).ext3
plików i przywrócić go wext4
jednym, ale możesz zrzucić dowolny typ systemu plików. Większość dojrzałych systemów plików ma swoje własnedump
wersje. Standardowy Debian todump
robiext2
,ext3
iext4
. Jeśli używasz systemu plików specyficznego dla Flasha, twoje opcje mogą być inne.źródło
dump
że system plików nie powinien być zapisywany. To brzmi jak rozsądne ograniczenie, ale szkoda, że nie wspomniano o tym na stronie podręcznika, aby ktoś mógł popełnić ten błąd ...mkfs.ext4 /dev/sda1; mount /dev/sda1 /mnt/disk; cd /mnt/disk; dump -0af - /dev/sda5 | restore -rf -
Użyj
dd
dla sektora rozruchowego irsync -aHS
dla plików. Musisz wykluczyć „wirtualne” systemy plików, takie jak / proc / sys i wszelkie dyski RAM (tmpfs).Jeśli chcesz również zachować partycjonowanie, możesz to zrzucić
sfdisk
lub odtworzyć za pomocąparted
.źródło
W przypadku Debiana tak naprawdę wystarczy wykonać kopię zapasową danych i plików konfiguracyjnych .
Aby wykonać kopię zapasową istniejącego stanu:
dpkg --get-selections > dpkg_selections
.sudo debconf-get-selections > debconf_selections
.Aby zastosować to do nowego systemu:
sudo debconf-set-selections < debconf_selections
.dpkg --set-selections < dpkg_selections
.apt-get dselect-upgrade
.Twoje dane powinny być przede wszystkim
/home
i/var
(na przykład/var/lib/mysql
dla MySQL,/var/www
Apache, etc.). Powinieneś być w stanie dowiedzieć się, które aplikacje są dla Ciebie ważne.Konfiguracja będzie przede wszystkim w
/etc
. Znów nie powinno być trudno wybrać to, co jest dla Ciebie ważne.źródło
debconf-get-selection
uruchomićapt-get install debconf-utils
Nie wiem, czy dobrze to zrobić, gdy system jest uruchomiony, ale to właśnie robię.
jak powiedziałem, być może istnieje lepsze rozwiązanie, w takim przypadku chciałbym je również poznać!
źródło
Próbowałem tyle oprogramowania do tworzenia kopii zapasowych i przywracania i nigdy nie byłem szczęśliwy. Oto co teraz robię: mam drugi Debian zainstalowany na zapasowym komputerze (ten sam MB, karta NIC itp.). Każdego wieczoru synchronizuję z komputerem A na komputer B. Są pewne pliki, które wstrzymuję (/ etc / network / interfaces, / etc / hosts, / etc / hostname), ponieważ nie chcę konfliktów między dwoma uruchomionymi systemami. Właściwie mam ich kopie w innym folderze. Wyłączam także niektóre usługi, których nie muszę uruchamiać na komputerze B (postfix, mysql itp.). Mam skrypt napisany na komputerze B, który w zasadzie zamieni go w komputer A (zastąpi pliki, które wstrzymałem), uruchomi ponownie kartę sieciową i włączy usługi, które zostały wyłączone. Oczywiście, maszyna A musi być wyłączona, kiedy uruchamiam skrypt, bo w przeciwnym razie nastąpi spustoszenie. Testuję maszynę B co miesiąc, wyłączając maszynę A, uruchamiając skrypt, i przeprowadzanie testów, aby upewnić się, że jest aktualne i działa poprawnie. To działa jak urok!
źródło
Sprawdź Clonezilla. Widzę to na liście w standardowych repozytoriach Debiana. http://clonezilla.org/
Edycja: Prawdopodobnie nie, wymagania listy Clonezilla na pierwszej stronie: „Procesor X86 lub x86-64”
źródło
Aby wykonać kopię zapasową mojego pi, wyjmuję kartę microSD i podłączam ją do laptopa. Następnie uruchom a,
dd
aby utworzyć plik na moim laptopie na całym dysku, jak wyżej:źródło
Użyj przywracania systemu. Mam go działającego nawet przy debian stretch. Daje ci ładną pamięć rozruchową na żywo z dokładnie skonfigurowanym pulpitem.
źródło