GNU/Linux >> Znalost Linux >  >> Ubuntu

Jaký je rozdíl mezi Rsync a BTRFS v Linuxu?

Úvod

Nedávno jsem probral několik témat o zálohování, obnově a klonování disků. Někteří ze čtenářů přišli s několika otázkami. Jedním z nich bylo, že BTRFS a Rsync se snaží zálohovat pomocí nástroje jako Grsync, Duplicity nebo Timeshift. V této příručce probereme, jaké jsou technické rozdíly mezi oběma a který z nich je lepší než druhý. Pro tuto příručku používám Debian 10 Buster Edition. Nemusíte používat totéž.

Rsync

Rsync je nástroj s malými rozměry na disku pro zálohování místních a synchronizaci vzdálených souborů ze serverů na váš místní disk. Nejen, že podporuje oddíly MBR a GPT, ale také pokrývá několik souborových systémů, jako je Ext4.

Když provedeme zálohu pomocí nástroje Rsync nebo pomocí nástroje třetí strany, který funguje nad Rsync, pak jsou mezi pravidelnými zálohami sdíleny společné soubory. To pomáhá ušetřit obrovské místo na disku.

Rsync může ukládat data kdekoli. To znamená, že pokud máte na externím disku jiný souborový systém než váš produkční systém, Rsync uloží data na oba. Největší nevýhodou Rsync je, že je o něco pomalejší než BTRFS.

Příklady Rsync

Ukázka 1. Push Operation

Zde je návod, jak se provádí operace push pomocí Rsync:

$ rsync local_file_path [email protected]:remote_file_path

V tomto příkladu posíláme místní adresář do vzdálené složky.

Je zde ještě jedno demo přetažení souboru nebo adresáře ze vzdáleného serveru do místního systému.

Ukázka 2. Operace vytažením

$ rsync [email protected]:remote_file_path local_file_path

Při této operaci uživatel jednoduše stáhne vzdálený soubor do místního počítače a vytvoří pěknou zálohu.

Ukázka 3. Ušetřete trochu šířky pásma

Teď mám tu starost. Chci ušetřit určitou šířku pásma při vytváření místních a vzdálených záloh. Rsync poskytuje plnou kontrolu nad prováděním takových operací.

$ rsync -av -e ssh --max-size='1M' /src/ [email protected]:/path/to/dst/

V tomto příkladu jasně načítám pouze soubory o velikosti maximálně 1 MB. To mi pomáhá vyhnout se jakýmkoli velkým souborům dostupným v mých archivech.

BTRFS

BTRFS znamená Better File System. Na rozdíl od Rsync, což je program, BTRFS je vlastní souborový systém. To je to, co dělá rozdíl mezi nimi. Pokusme se to pochopit na následujícím příkladu:

Pokud jste naformátovali svůj disk systémem souborů BTRFS namísto Ext3 nebo Ext4, budete moci použít metodu BTRFS k uložení dat na stejný disk.

Jakákoli záloha pořízená pomocí BTRFS šetří čas. Je rychlejší, protože ukládá data do podobného souborového systému na Linuxu. Pokud nemáte souborový systém BTRFS, budete muset vytvořit oddíl BTRFS, abyste si uchovali své zálohy.

Pokud máte systém nastavený pro BTRFS, pak je lepší použít možnost zálohování BTRFS, kdykoli to přijde. Rsync by vás v tomto scénáři zklamal.

Příklady BTRFS

Ve výše uvedené diskusi jsme se dozvěděli, že BTRFS není v kontextu zálohovací systém; spíše je to plnohodnotný souborový systém. Zde je návod, jak jej nastavit na vašem zařízení.

BTRFS není předinstalovaný, takže jej obvykle budete muset nainstalovat ručně.

Po instalaci budete mít možnost spustit BTRFS na vašem systému, například:

Příklad 1. Pořiďte snímek systému

$ btrfs subvolume snapshot ‘/btrfs/SV1’ in ‘/btrfs/SV1-snap’

Tím se vytvoří snímek dílčího svazku celého svazku systému souborů

Příklad 2. Pořiďte snímek systému pouze pro čtení

$ btrfs subvolume snapshot –r ‘/btrfs/SV1’ ‘/btrfs/SV1-rosnap’

Oba příklady ukazují, že jeden program kopíruje, zatímco druhý vytváří úložné bloky z dostupných disků.

Závěr

V této příručce jsme diskutovali o tom, jak se Rsync a BTRFS od sebe liší. Jedním je program pro vytváření záloh a druhým je celý souborový systém. Doufám, že to vyjasní koncept a nyní budete oba nástroje používat mnohem efektivněji.


Ubuntu
  1. Jaký je rozdíl mezi env a set (na Mac OS X nebo Linux)?

  2. Jaký je rozdíl mezi vyrovnávací pamětí a mezipamětí v Linuxu?

  3. Jaký je rozdíl mezi ovladačem platformy Linux a normálním ovladačem zařízení?

  1. Jaký je rozdíl mezi InnoDB a MyISAM?

  2. Jaký je rozdíl mezi ls a l?

  3. Jaký je rozdíl mezi unlink a rm?

  1. Jaký je rozdíl mezi linuxovým kontejnerem a obrázkem?

  2. Rozdíl mezi [[ $a ==Z* ]] a [ $a ==Z* ]?

  3. Jaký je rozdíl mezi příkazem locate a find v Linuxu