Btrfs

Kako napraviti sigurnosnu kopiju Btrfs snimaka na vanjskim pogonima

Kako napraviti sigurnosnu kopiju Btrfs snimaka na vanjskim pogonima

Zadane snimke snimljenih podskupina Btrfs možete pohraniti u isti Btrfs datotečni sustav, ali nije moguće pohraniti snimke jednog Btrfs datotečnog sustava izravno u drugi Btrfs datotečni sustav. Međutim, datotečni sustav Btrfs pruža vam potrebne alate za izradu sigurnosnih kopija snimaka jednog datotečnog sustava Btrfs u drugi datotečni sustav Btrfs. Ovaj vam članak pokazuje kako sigurnosno kopirati Btrfs snimke u vanjski Btrfs datotečni sustav na vanjskom pogonu.

Preduvjeti

Da biste isprobali primjere iz ovog članka, morate ispuniti sljedeće preduvjete:

Imam tvrdi disk od 20 GB, sdb, na mom Ubuntu stroju. Stvorio sam dvije particije, sdb1 i sdb2, na ovom tvrdom disku.

$ sudo lsblk -e7

Bilješka: Vaš tvrdi disk ili SSD imat će drugačije ime od mog, a isto tako i particije. Dakle, od sada pazite da ta imena zamijenite svojim.


Stvorit ću Btrfs datotečni sustav na sdb1 i sdb2 pregrade. Snimke stvorene u datotečnom sustavu Btrfs (sdb1) bit će sigurnosno kopirani u datotečni sustav Btrfs stvoren na sdb2 pregrada. Datotečni sustav Btrfs stvoren na sdb2 particija će djelovati kao vanjski pogon. Možete koristiti i USB pogon palca ili vanjski tvrdi disk; samo ga formatirajte s datotečnim sustavom Btrfs.

Za pomoć pri instaliranju Btrfs datotečnog sustava u Ubuntu, pogledajte moj članak Instaliranje i korištenje Btrfs na Ubuntu 20.04 LTS.

Za pomoć s instaliranjem Btrfs datotečnog sustava u Fedori, pogledajte moj članak Instaliranje i korištenje Btrfs na Fedori 33.

Stvaranje potrebnih datotečnih sustava Btrfs

Oblikovat ću oba sdb1 i sdb2 particije kao Btrfs. Ja ću koristiti sdb1 particiju za pohranu podataka i Btrfs snimke. Ja ću koristiti sdb2 particiju za izradu sigurnosnih kopija snimaka datotečnog sustava Btrfs stvorenog na sdb1 pregrada.

Da biste stvorili Btrfs datotečni sustav na sdb1 particiju i dajte joj podatke oznake datotečnog sustava, pokrenite sljedeću naredbu:

$ sudo mkfs.btrfs -L data / dev / sdb1

Sada bi se trebao stvoriti datotečni sustav Btrfs na sdb1 pregrada.

Da biste stvorili Btrfs datotečni sustav na sdb2 particiju i dajte joj snimke oznaka datotečnog sustava, pokrenite sljedeću naredbu:

$ sudo mkfs.btrfs -L snimke / dev / sdb2

Sada bi se trebao stvoriti datotečni sustav Btrfs na sdb2 pregrada.

Stvorite direktorije /podaci i / snimke za montažu sdb1 i sdb2 particije, kako slijedi:

$ sudo mkdir -v / podaci, snimke

Montirajte Btrfs datotečni sustav koji ste kreirali na sdb1 particiju na / data direktoriju, kako slijedi:

$ sudo mount / dev / sdb1 / data

Na isti način, montirajte datotečni sustav Btrfs koji ste kreirali na sdb2 particija na / snimke direktorij, kako slijedi:

$ sudo mount / dev / sdb2 / snimke

Kao što možete vidjeti na donjoj snimci zaslona, ​​oba Btrfs datotečna sustava (sdb1 i sdb2 particije) pravilno montirane.

$ df -h -t btrfs

Izrada snimaka datotečnog sustava Btrfs

U ovom ćemo odjeljku stvoriti lažni projekt web1 na / data / projects / web1 Btrfs potzvuk. U ovom ćemo odjeljku snimiti snimku tog podvoluma, kao i neke druge snimke u kasnijim odjeljcima ovog članka.

Prvo stvorite novi direktorij / podaci / projekti, kako slijedi:

$ sudo mkdir -v / podaci / projekti

Zatim stvorite novo potzvuk web1 u / data / projects direktorij, kako slijedi:

$ sudo btrfs potzvuk create / data / projects / web1

Konačno, stvorite novi indeks datoteke.html u / data / projects / web1 subvolumen s uređivačem nano teksta, kako slijedi:

$ sudo nano / data / projects / web1 / index.html

U indeks upišite sljedeće retke koda.html datoteka:




Demo web stranica



Pozdrav svijete




Kada završite, pritisnite <Ctrl> + x nakon čega slijedi Y i <Unesi> za spremanje indeks.html datoteku.

Na isti način stvorite novu datoteku stil.css u / podatak / projekti / web1 podzvuk kako slijedi:

$ sudo nano / data / projects / web1 / style.css


Upišite sljedeće retke koda u stil.css datoteka:

h1
boja: zelena;

Kada završite, pritisnite <Ctrl> + x nakon čega slijedi Y i <Unesi> za spremanje stil.css datoteka.

Sada, / podatak / projekti / web1 podzvuk sadrži indeks.html i stil.css datoteku.

$ ls -lh / data / projects / web1

Sve snimke ovog datotečnog sustava Btrfs čuvat ćemo u /podaci/.snimke imenik.

Prvo stvorite /podaci/.snimke direktorij sa sljedećom naredbom:

$ sudo mkdir -v / podaci /.snimke

Zatim stvorite snimku samo za čitanje /podaci/.snimke / web1-2020-12-30 od / podatak / projekti / web1 podzvuk sa sljedećom naredbom:

$ sudo btrfs snimka podslušaja -r / data / projects / web1 / data /.snimke / web1-2020-12-30

Kao što vidite, nova snimka /podaci/.snimke / web1-2020-12-30 je stvoren.

$ sudo btrfs popis / podatak volumena

Izrada sigurnosnih kopija snimaka na vanjskom pogonu

Za sigurnosnu kopiju snimke /podaci/.snimke / web1-2020-12-30 na drugi Btrfs datotečni sustav (u ovom slučaju vanjski pogon sdb2) montiran na / snimke direktorija, pokrenite sljedeću naredbu:

$ sudo btrfs send / data /.snimke / web1-2020-12-30 | sudo btrfs primanje / snimke

Snimak /podaci/.snimke / web1-2020-12-30 treba napraviti sigurnosnu kopiju u vanjskom Btrfs datotečnom sustavu (sdb2) postavljen na / snimke imenik.

Kao što vidite, novi web podvolum1-2020-12-30 je stvoren na vanjskom Btrfs datotečnom sustavu.

$ sudo btrfs popis potprograma / snimke

The snimak web1-2020-12-30 treba imati iste datoteke/ direktoriji kao /podaci/.snimke / web1-2020-12-30 snimak.

$ stablo -a / snimke

Možete dobiti više informacija o sigurnosnoj kopiji snimke / snapshosts / web1-2020-12-30 kako slijedi:

$ sudo btrfs subvolume show / snapshots / web1-2020-12-30

Inkrementalna izrada sigurnosnih kopija snimaka na vanjskom pogonu

Ako u snimkama ima puno datoteka za sigurnosno kopiranje na vanjski pogon, tada će vam postupne sigurnosne kopije pomoći da ubrzate izradu sigurnosnih kopija. U ovom će slučaju Btrfs ažurirati samo datoteke koje su se promijenile od posljednje snimke i kopirati nove datoteke koje nisu bile dostupne na posljednjoj snimci.

U ovom odjeljku pokazat ću vam kako izvoditi inkrementalne sigurnosne kopije Btrfs snimaka na vanjske Btrfs datotečne sustave.

Prvo otvorite indeks.html datoteku od / podatak / projekti / web1 podzvuk, kako slijedi:

$ sudo nano / data / projects / web1 / index.html

Unesite sve promjene koje želite indeks.html datoteku. Kada završite, pritisnite <Ctrl> + x nakon čega slijedi Y i <Unesi> za spremanje indeks.html datoteka.

Napravite novi snimak datoteke samo za čitanje / podatak / projekti / web1 podzvuk, kako slijedi:

$ sudo btrfs snimka podslušaja -r / data / projects / web1 / data /.snimke / web1-2020-12-31

Kao što vidite, nova snimka /podaci/.snimke / web1-2020-12-31 od / podatak / projekti / web1 podzvuk je stvoren.

$ sudo btrfs popis / podatak volumena

Sada smo spremni napraviti inkrementalnu sigurnosnu kopiju.

Da biste napravili inkrementalnu sigurnosnu kopiju, trebat će vam zajednička snimka izvornog i odredišnog (vanjskog pogona) Btrfs datotečnog sustava. Uobičajena snimka obično je najnovija snimka Btrfs podvoluma. Kada napravite novu snimku na izvornom datotečnom sustavu Btrfs, nova se snimka uspoređuje s najnovijom snimkom (dostupnom na izvornom i odredišnom datotečnom sustavu Btrfs) izvornog datotečnog sustava Btrfs. Btrfs će izračunati razliku i poslati samo potrebne podatke odredišnom Btrfs datotečnom sustavu (vanjski pogon).

Na primjer, za inkrementalnu izradu sigurnosne kopije datoteke /podaci/.snimke / web1-2020-12-31 snimka, morate navesti nadređenu snimku (najnovija snimka dostupna i na izvornom i na odredišnom Btrfs datotečnom sustavu), /podaci/.snimke / web1-2020-12-30, također.

Inkrementalna sigurnosna kopija datoteke /podaci/.snimke / web1-2020-12-31 snimak se može prenijeti na vanjski Btrfs datotečni sustav, kako slijedi:

$ sudo btrfs pošalji -p / data /.snimke / web1-2020-12-30 / data /.snimke / web1-2020-12-31 | sudo btrfs primanje / snimke

Inkrementalna sigurnosna kopija datoteke /podaci/.snimke / web1-2020-12-31 treba napraviti snimak.

Kao što vidite, web1-2020-12-31 snimka je sigurnosno kopiran na vanjski Btrfs datotečni sustav montiran na / snimke imenik.

$ sudo btrfs popis potprograma / snimke

Kao što možete vidjeti na donjoj snimci zaslona, ​​promjene koje ste unijeli u indeks.html datoteku dostupni su u web1-2020-12-31 snimka koji je sigurnosno kopiran u vanjski Btrfs datotečni sustav.

$ cat / snapshots / web1-2020-12-31 / index.html

Na isti način, možete napraviti onoliko dodatnih koraka koliko želite.

Pokazat ću vam kako još jednom napraviti inkrementalnu sigurnosnu kopiju. Neću si uzeti vremena da to ponovo objasnim. Umjesto toga, samo ću vam pokazati postupak radi jasnosti.

Otvori indeks.html datoteku od / podatak / projekti / web1 podzvuk, kako slijedi:

$ sudo nano / data / projects / web1 / index.html

Unesite sve promjene koje želite indeks.html datoteku. Kada završite, pritisnite <Ctrl> + x nakon čega slijedi Y i <Unesi> za spremanje indeks.html datoteku.

Napravite novi snimak datoteke samo za čitanje / podatak / projekti / web1 podzvuk, kako slijedi:

$ sudo btrfs snimka podslušaja -r / data / projects / web1 / data /.snimke / web1-2020-12-31_2

Uzmite inkrementalnu sigurnosnu kopiju /podaci/.snimke / web1-2020-12-31_2 snimka na vanjski Btrfs datotečni sustav, kako slijedi:

$ sudo btrfs pošalji -p / data /.snimke / web1-2020-12-31 / data /.snimke / web1-2020-12-31_2 | sudo btrfs primanje / snimke

Bilješka: Sada, roditeljska snimka na koju /podaci/.snimke / web1-2020-12-31_2 snimka bit će uspoređena je /podaci/.snimke / web1-2020-12-31.

Kao što vidite, web1-2020-12-31_2 snapshot je sigurnosno kopiran u vanjski Btrfs datotečni sustav montiran na / snimke imenik.

$ sudo btrfs popis potprograma / snimke

Kao što možete vidjeti na donjoj snimci zaslona, ​​nedavne promjene u indeks.html datoteku dostupni su na web1-2020-12-31_2 snimka sigurnosno kopiran u vanjski Btrfs datotečni sustav.

$ cat / snapshots / web1-2020-12-31_2 / index.html

Održavanje stvari čistima

Ako često izrađujete sigurnosne kopije svojih Btrfs snimaka, na kraju ćete dobiti puno snimaka i njima će možda biti teško upravljati. Srećom, možete ukloniti bilo koju snimku iz datotečnog sustava Btrfs.

Ako koristite dovoljno velik vanjski pogon za čuvanje sigurnosnih kopija Btrfs snimaka, tada možete zadržati nekoliko snimaka na svom datotečnom sustavu Btrfs i sigurnosne kopije svih snimaka na vanjskom pogonu.

Ako upotrebljavate manji vanjski pogon, tada možete na vanjskom pogonu sigurnosno kopirati samo najvažnije snimke.

Da biste izvršili sigurnosne kopije svojih Btrfs snimaka, morate zadržati barem najnoviju snimku na oba izvora (/podaci/.snimke) i odredište (/ snimke - vanjski pogon) Btrfs datotečni sustavi. Dakle, slobodno uklonite sve snimke osim najnovije snimke s oba kraja.

Na primjer, u ovom je slučaju najnovija snimka web1-2020-12-31_2. Dakle, da bi se izvršile inkrementalne sigurnosne kopije, ovaj snimak mora se čuvati na izvornom i odredišnom (vanjskom pogonu) Btrfs datotečnom sustavu.

Pretpostavimo da želite ukloniti /podaci/.snimke / web1-2020-12-30 snimak.

Da biste to učinili, pokrenite sljedeću naredbu:

$ sudo btrfs subvolume delete / data /.snimke / web1-2020-12-30

Snimka Btrfs /podaci/.snimke / web1-2020-12-30 sada treba ukloniti.

Na isti način možete ukloniti /podaci/.snimke / web1-2020-12-31 snimka, kako slijedi:

$ sudo btrfs subvolume delete / data /.snimke / web1-2020-12-31

Sada je samo najnovija snimka, /podaci/.snimke / web1-2020-12-31_2, je dostupan na datotečnom sustavu Btrfs, montiranom na /podaci imenik. Ostale su snimke sigurnosno kopirane na vanjskom pogonu montiranom na / snimke imenik.

$ sudo btrfs popis / podatak volumena
$ sudo btrfs popis potprograma / snimke

Vraćanje snimaka s vanjskog pogona

Ako ste sigurnosne kopije svojih snimaka napravili na vanjskom pogonu, možete ih vratiti u bilo kojem trenutku s vanjskog pogona.

Na primjer, uklonio sam web1-2020-12-30 snimka iz mog Btrfs datotečnog sustava, postavljenog na /podaci imenik. Ali, ova je snimka sigurnosno kopirana na vanjskom pogonu montiranom na / snimke imenik. Vratimo ovu snimku.

$ sudo btrfs popis potprograma / snimke

Da biste obnovili web1-2020-12-30 snimka s vanjskog pogona pokrenite sljedeću naredbu:

$ sudo btrfs send / snapshots / web1-2020-12-30 | sudo btrfs primanje / podaci /.snimke

The snimak web1-2020-12-30 treba obnoviti na datotečnom sustavu Btrfs montiranom na /podaci imenik.

Kao što vidite, web1-2020-12-30 snimka se obnavlja na datotečnom sustavu Btrfs montiranom na /podaci imenik.

$ sudo btrfs popis / podatak volumena

I, kao što vidite, sadržaj datoteke indeks.html datoteka iz web1-2020-12-30 snimka. Ovo je prva verzija indeks.html dosje od prije.

$ mačka / podaci /.snimke / web1-2020-12-30 / index.html

Zaključak

U ovom ste članku naučili kako sigurnosno kopirati snimke svog datotečnog sustava Btrfs na vanjski pogon. Također ste naučili kako inkrementalne sigurnosne kopije svojih Btrfs snimaka prenijeti na vanjski pogon. Napokon ste naučili kako ukloniti postojeće snimke iz Brtfs datotečnog sustava i vratiti snimke s vanjskog pogona, kao i.

Kako razviti igru ​​na Linuxu
Prije deset godina malo je Linux korisnika predviđalo da će njihov omiljeni operativni sustav jednog dana biti popularna platforma za igranje komercij...
Luke komercijalnih igara s otvorenim kodom
Besplatne igre s otvorenim kodom i više platformi mogu se koristiti za igranje starih, kao i nekih prilično nedavnih naslova igara. U ovom će se člank...
Najbolje igre naredbenog retka za Linux
Naredbeni redak nije samo vaš najveći saveznik pri korištenju Linuxa - on također može biti izvor zabave jer ga možete koristiti za igranje mnogih zab...