Domyślnie możesz przechowywać migawki, które podwodne BTRFS w tym samym systemie plików BTRFS, ale nie jest możliwe przechowywanie migawek jednego systemu plików BTRFS bezpośrednio do innego systemu plików BTRFS BTRFS. Jednak system plików BTRFS zapewnia niezbędne narzędzia do tworzenia kopii zapasowych migawek jednego systemu plików BTRFS do innego systemu plików BTRFS. W tym artykule pokazuje, jak tworzyć kopie zapasowe migawek BTRFS na zewnętrzny system plików BTRFS na zewnętrznym dysku.
Wymagania wstępne
Aby wypróbować przykłady zawarte w tym artykule, musisz spełnić następujące warunki wstępne:
Mam dysk twardy 20 GB, SDB, na mojej maszynie Ubuntu. Stworzyłem dwie partycje, SDB1 I SDB2, na tym dysku twardym.
$ sudo lsblk -e7
Notatka: Twój dysk twardy lub SSD będą miały inną nazwę niż moje, podobnie jak partycje. Pamiętaj więc, aby odtąd zastąpić te nazwy na swoje.
Utworzę systemy plików BTRFS na SDB1 i SDB2 partycje. Migawki utworzone na systemie plików BTRFS (SDB1) zostanie poparta do systemu plików BTRFS utworzonego na SDB2 przegroda. System plików BTRFS utworzony na SDB2 Partycja będzie działać jako napęd zewnętrzny. Możesz również użyć dysku kciuka USB lub zewnętrznego dysku twardego; Po prostu sformatuj go z systemem plików BTRFS.
Aby uzyskać pomoc w instalacji systemu plików BTRFS w Ubuntu, sprawdź mój artykuł Zainstaluj i użyj BTRFS na Ubuntu 20.04 LTS.
Aby uzyskać pomoc w instalacji systemu plików BTRFS w Fedora, sprawdź mój artykuł Zainstaluj i użyj BTRFS na Fedora 33.
Tworzenie wymaganych systemów plików BTRFS
Sformatuję oba SDB1 I SDB2 partycje jako BTRFS. Użyję SDB1 partycja do przechowywania migawek danych i BTRFS. Użyję SDB2 partycja do tworzenia kopii zapasowej migawek systemu plików BTRFS utworzonego na SDB1 przegroda.
Aby utworzyć system plików BTRFS na SDB1 partycja i podaj mu dane etykiety systemu plików, uruchom następujące polecenie:
$ sudo mkfs.BTRFS -L Data /Dev /SDB1
Na system plików BTRFS powinien być teraz utworzony na SDB1 przegroda.
Aby utworzyć system plików BTRFS na SDB2 partycja i podaj mu migawki etykiety systemu plików, uruchom następujące polecenie:
$ sudo mkfs.BTRFS -L Migawki /Dev /SDB2
Na system plików BTRFS powinien być teraz utworzony na SDB2 przegroda.
Utwórz katalogi /dane I /migawki do montażu SDB1 I SDB2 partycje odpowiednio w następujący sposób:
$ sudo mkdir -v /dane, migawki
Zamontować system plików BTRFS, który utworzyłeś na SDB1 partycja w katalogu /danych, w następujący sposób:
$ sudo mount /dev /sdb1 /dane
W ten sam sposób zamontuj system plików BTRFS, który utworzyłeś na SDB2 partycja na /migawki katalog, jak następuje:
$ sudo Mount /dev /sdb2 /migawki
Jak widać na zrzucie ekranu poniżej, oba systemy plików BTRFS (SDB1 I SDB2 partycje) zostały poprawnie zamontowane.
$ df -h -t btrfs
W tej sekcji utworzymy manekin Web1 na /Data/Projects/Web1 BTRFS Subvolume. W tej sekcji zrobimy migawkę tej subWolume, a także kilka innych migawek w późniejszych sekcjach tego artykułu.
Najpierw utwórz nowy katalog /Data/Projects, następująco:
$ sudo mkdir -v /dane /projekty
Następnie utwórz nowe Subvolume Web1 w /Data/Projects Directory, następująco:
$ sudo btrfs subvolume tworzenie/dane/projekty/Web1
Na koniec utwórz nowy indeks plików.HTML w /Data/Projects/Web1 subvolume z edytorem tekstu nano, w następujący sposób:
$ sudo nano/data/projekty/web1/indeks.html
Wpisz w następujących wierszach kodu w indeksie.plik HTML:
Po zakończeniu naciśnij <klawisz kontrolny> + X śledzony przez Y I <Wchodzić> Aby zapisać indeks.plik HTML.
W ten sam sposób utwórz nowy plik styl.CSS w /Data/Projects/Web1 Subvolume następująco:
$ sudo nano/data/projekty/web1/styl.CSS
Wpisz następujące wiersze kodu w styl.CSS plik:
Po zakończeniu naciśnij <klawisz kontrolny> + X śledzony przez Y I <Wchodzić> Aby zapisać styl.CSS plik.
Teraz /Data/Projects/Web1 Subvolume zawiera indeks.html I styl.plik CSS.
$ LS -LH/Data/Projects/Web1
Będziemy przechowywać wszystkie migawki tego systemu plików BTRFS w /dane/.migawki informator.
Najpierw stwórz /dane/.migawki Katalog z następującym poleceniem:
$ sudo mkdir -v /dane /.migawki
Następnie utwórz migawkę tylko do odczytu /dane/.Migawki/Web1-2020-12-30 z /Data/Projects/Web1 Subvolume Z następującym poleceniem:
$ sudo btrfs subvolume migawka -r/data/projekty/web1/data/.Migawki/Web1-2020-12-30
Jak widać, nowa migawka /dane/.Migawki/Web1-2020-12-30 został stworzony.
$ sudo btrfs lista /dane
Tworzenie kopii zapasowych migawek do napędu zewnętrznego
Aby zapasować migawkę /dane/.Migawki/Web1-2020-12-30 do innego systemu plików BTRFS (w tym przypadku napędu zewnętrznego SDB2 /migawki Directory, uruchom następujące polecenie:
$ sudo btrfs wyślij /dane /.Migawki/Web1-2020-12-30 | sudo btrfs odbieranie /migawki
Migawka /dane/.Migawki/Web1-2020-12-30 powinien być zapasowy do zewnętrznego systemu plików BTRFS (SDB2) zamontowany na /migawki informator.
Jak widać, Nowy subvolume Web1-2020-12-30 został utworzony na zewnętrznym systemie plików BTRFS.
$ sudo btrfs lista /migawki
Snapshot Web1-2020-12-30 powinien mieć te same pliki/katalogi jak /dane/.Migawki/Web1-2020-12-30 migawka.
$ Tree -a /migawki
Możesz uzyskać więcej informacji na temat zabezpieczania zapasowego /Snapshosts/Web1-2020-12-30 następująco:
$ sudo btrfs subvolume show /migawki /Web1-2020-12-30
Przyrostowe tworzenie kopii zapasowych migawek na napęd zewnętrzny
Jeśli w migawkach jest wiele plików do kopii zapasowej na napęd zewnętrzny, przyrostowe kopie zapasowe pomogą przyspieszyć operację tworzenia kopii zapasowej. W takim przypadku BTRFS zaktualizuje tylko pliki, które zmieniły się od ostatniej migawki i skopiują nowe pliki, które nie były dostępne w ostatniej migawce.
W tej sekcji pokażę, jak wykonać przyrostowe kopie zapasowe migawek BTRFS na zewnętrzne systemy plików BTRFS.
Najpierw otwórz indeks.plik HTML z /Data/Projects/Web1 Subvolume, następująco:
$ sudo nano/data/projekty/web1/indeks.html
Wprowadzić wszelkie zmiany, które chcesz indeks.plik HTML. Po zakończeniu naciśnij <klawisz kontrolny> + X śledzony przez Y I <Wchodzić> Aby zapisać indeks.html plik.
Weź nową migawkę tylko do odczytu /Data/Projects/Web1 Subvolume, następująco:
$ sudo btrfs subvolume migawka -r/data/projekty/web1/data/.Migawki/Web1-2020-12-31
Jak widać, nowa migawka /dane/.Migawki/Web1-2020-12-31 z /Data/Projects/Web1 Subvolume został stworzony.
$ sudo btrfs lista /dane
Teraz jesteśmy gotowi zrobić przyrostową kopię zapasową.
Aby wykonać przyrostową kopię zapasową, będziesz potrzebować wspólnej migawki zarówno systemów plików BTRFS źródłowych, jak i. Wspólna migawka jest zwykle najnowszą migawką podwole BTRFS. Kiedy zrobisz nową migawkę w źródłowym systemie plików BTRFS, nowa migawka jest porównywana z najnowszą migawką (dostępną zarówno w źródle, jak i docelowym systemie plików) źródłowego systemu plików BTRFS. BTRFS obliczy różnicę i wyśle tylko wymagane dane do docelowego systemu plików BTRFS (dysk zewnętrzny).
Na przykład, aby wykonać przyrostową kopię zapasową /dane/.Snapshots/Web1-2020-12-31, Musisz określić migawkę nadrzędną (najnowsza migawka dostępna zarówno w źródłowym, jak i docelowym systemie plików BTRFS), /dane/.Migawki/Web1-2020-12-30, również.
Przyrostowa kopia zapasowa /dane/.Migawki/Web1-2020-12-31 Migawkę można przejąć na zewnętrzny system plików BTRFS, w następujący sposób:
$ sudo btrfs wyślij -p /dane /.migawki/Web1-2020-12-30/Data/.Migawki/Web1-2020-12-31 | sudo btrfs odbieranie /migawki
Przyrostowa kopia zapasowa /dane/.Migawki/Web1-2020-12-31 Należy zrobić migawkę.
Jak widać, Migawka Web1-2020-12-31 został zapasowy do zewnętrznego systemu plików BTRFS zamontowanego na /migawki informator.
$ sudo btrfs lista /migawki
Jak widać na zrzucie ekranu poniżej, zmiany wprowadzone w indeks.plik HTML są dostępne w Migawka Web1-2020-12-31 który został zapasowy do zewnętrznego systemu plików BTRFS.
$ cat/migawki/Web1-2020-12-31/indeks.html
W ten sam sposób możesz wziąć tyle przyrostowych kopii migawek, ile chcesz.
Jeszcze raz pokażę, jak wykonać przyrostową kopię zapasową. Nie poświęcę czasu, aby to wyjaśnić. Zamiast tego po prostu pokażę ci proces jasności.
Otworzyć indeks.plik HTML z /Data/Projects/Web1 Subvolume, następująco:
$ sudo nano/data/projekty/web1/indeks.html
Wprowadzić wszelkie zmiany, które chcesz indeks.plik HTML. Po zakończeniu naciśnij <klawisz kontrolny> + X śledzony przez Y I <Wchodzić> Aby zapisać indeks.plik HTML.
Weź nową migawkę tylko do odczytu /Data/Projects/Web1 Subvolume, następująco:
$ sudo btrfs subvolume migawka -r/data/projekty/web1/data/.migawki/Web1-2020-12-31_2
Weź przyrostowy zapas /dane/.Snapshot/Web1-2020-12-31_2 do zewnętrznego systemu plików BTRFS, w następujący sposób:
$ sudo btrfs wyślij -p /dane /.migawki/Web1-2020-12-31/Data/.migawki/Web1-2020-12-31_2 | sudo btrfs odbieranie /migawki
Notatka: Teraz migawka nadrzędna, do której /dane/.Snapshot/Web1-2020-12-31_2 zostanie porównywane /dane/.Migawki/Web1-2020-12-31.
Jak widać, Web1-2020-12-31_2 Snapshot został zapasowy do zewnętrznego systemu plików BTRFS zamontowanego na /migawki informator.
$ sudo btrfs lista /migawki
Jak widać na zrzucie ekranu poniżej, ostatnie zmiany wprowadzone w indeks.plik HTML są dostępne na Migawka Web1-2020-12-31_2 kopie zapasowe do zewnętrznego systemu plików BTRFS.
$ cat/migawki/Web1-2020-12-31_2/indeks.html
Utrzymywanie rzeczy w czystości
Jeśli często tworzysz kopie migawki BTRFS, skończysz z wieloma migawkami i może być trudne do zarządzania nimi. Na szczęście możesz usunąć dowolną migawkę z systemu plików BTRFS.
Jeśli używasz wystarczająco dużego napędu zewnętrznego do przechowywania kopii zapasowych migawek BTRFS, możesz przechowywać kilka migawek na systemie plików BTRFS i tworzyć kopię zapasową wszystkich migawek na napędu zewnętrznym.
Jeśli używasz mniejszego napędu zewnętrznego, możesz selektywnie trzymać tylko najważniejsze migawki zapasowe na napędu zewnętrznym.
Aby wykonać kopie zapasowe migawek BTRFS, musisz zachować przynajmniej najnowszą migawkę na obu źródłach (/dane/.migawki) i miejsce docelowe (/migawki - napęd zewnętrzny) BTRFS FileSystems. Nie krępuj się usunąć migawek innych niż najnowsza migawka na obu końcach.
Na przykład w tym przypadku najnowsza migawka to Web1-2020-12-31_2. Tak więc, aby wykonać przyrostowe kopie zapasowe, ta migawka musi być przechowywana na źródłach i docelowym (napędu zewnętrznym) systemów plików BTRFS.
Załóżmy, że chcesz usunąć /dane/.Snapshots/Web1-2020-12-30.
Aby to zrobić, uruchom następujące polecenie:
$ sudo btrfs subvolume usuń /dane /.Migawki/Web1-2020-12-30
Migawka BTRFS /dane/.Migawki/Web1-2020-12-30 należy teraz usunąć.
W ten sam sposób możesz usunąć /dane/.Snapshots/Web1-2020-12-31, następująco:
$ sudo btrfs subvolume usuń /dane /.Migawki/Web1-2020-12-31
Teraz tylko najnowsza migawka, /dane/.migawki/Web1-2020-12-31_2, jest dostępny na systemie plików BTRFS, zamontowanym na /dane informator. Pozostałe migawki są kopie zapasowe na napędu zewnętrznym, zamontowane na /migawki informator.
$ sudo btrfs lista /dane
$ sudo btrfs lista /migawki
Przywracanie migawek z napędu zewnętrznego
Jeśli wykonałeś kopię zapasową migawek na napędu zewnętrznym, możesz je przywrócić w dowolnym momencie z napędu zewnętrznego.
Na przykład usunąłem Migawka Web1-2020-12-30 z mojego systemu plików BTRFS, zamontowany na /dane informator. Ale ta migawka jest kopowana na napędu zewnętrznym, zamontowanym na /migawki informator. Przywróćmy tę migawkę.
$ sudo btrfs lista /migawki
Przywrócić Migawka Web1-2020-12-30 Z napędu zewnętrznego uruchom następujące polecenie:
$ sudo btrfs wyślij /migawki /Web1-2020-12-30 | sudo btrfs odbieraj /dane /.migawki
Snapshot Web1-2020-12-30 należy przywrócić na systemie plików BTRFS zamontowany na /dane informator.
Jak widać, Migawka Web1-2020-12-30 jest przywrócony na systemie plików BTRFS zamontowanych na /dane informator.
$ sudo btrfs lista /dane
I, jak widać, zawartość indeks.html plik z Migawka Web1-2020-12-30. To jest pierwsza wersja indeks.html plik z wcześniej.
$ cat /data /.migawki/Web1-2020-12-30/indeks.html
Wniosek
W tym artykule nauczyłeś się tworzyć kopie zapasowe migawek systemu plików BTRFS na napęd zewnętrzny. Nauczyłeś się również, jak robić przyrostowe kopie zapasowe migawek BTRFS na napęd zewnętrzny. Na koniec nauczyłeś się usuwać istniejące migawki z systemu plików BRTFS i przywrócić migawki z napędu zewnętrznego.