Klonování disků – porovnání nástrojů.

Pro tuto operaci, sloužící zejména k přenášení instalovaných operačních systémů, tak aby nebylo třeba provádět náročnou novou instalaci se všemi aplikacemi a nastaveními, dnes existuje slušné množství nástrojů a zdálo by se, že není co řešit. Ale vzhledem k tomu, že tuto cestu volíme proto, abychom ušetřili čas a práci oproti nové instalaci a kustomizaci OS, tak jsem, dle níže popsaných kritérií, vybral několik nejznámějších nástrojů a udělal jsem několik testů, abych je porovnal právě z hlediska výše zmíněných atributů.

Pro lepší pochopení rámce tohoto článku nebude od věci uvést, jak a proč tento článek vznikl:
Velmi kvalitní notebook Dell Latitude e6420 jsem vybavil starším, ale nikdy nepoužitým SSD Crucial m4 256 GB, který měl kdysi velmi dobré recenze. Po instalaci Linuxu i Windows 7 do dualbootu jsem si liboval v nové rychlosti, než jsem si uvědomil, že mi tam něco nesedí. Stále jsem slyšel zvuk podobný práci klasického pevného disku. Zjistil jsem, že to nedělá ten disk, ale základní deska a také zdroj se začal nově projevovat vrčivými a pískavými zvuky. Vrátil jsem tedy do ntb původní HDD 250 GB a tyto zvuky ustaly.
Bylo čistě intuitivně jasné podívat se na spotřebu obou disků. K hrůze jsem zjistil, že zatímco na HDD je uvedena hodnota 700mA na SSD 2A. Závěr byl takový, že obvody desky ntb na takovouto spotřebu nejsou normovány a že SSD půjde do stolního PC. Byl vybrán též kvalitní a spolehlivý stroj HP Compaq 6200 Pro SFF. Bohužel výsledek byl stejný – PC začal různě škrkat a pískat. Padla tedy volba na koupi novějšího SSD s nižší spotřebou a naklonování staršího SSD na nový.
A tady začalo hledání způsobu, neboť u SSD je kvůli amortizaci a zachování výkonu důležité, aby oddíly zůstaly zarovnané (alignment). Ne každý nástroj toto dovede ošetřit. Situaci jsem, po konzultaci se zkušenými členy českého fóra Ubuntu, nakonec vyhodnotil tak, že půjdu na jistotu a zvolím klonování po sektorech pomocí známé utility DD, kterou je v základu vybavena snad každá linuxová distribuce a existuje i alternativa pro Win.
Po použití příkazu:
dd if=/dev/sdX of=/dev/sdY status=progress
jsem zjistil, že rychlost kopírování je konstantních 32,5 MB/s přestože rychlosti čtení a zápisu obou SSD přesahují 400 MB/s a oba byly připojeni via SATA III s propustností 600 MB/s. Celkový čas byl 135 minut. Tomu jsem se podivil a podělil se o to, načež jsme došli k tomu, že by nás zajímalo, jak je to u jiných nástrojů.

Podmínky pro výběr nástrojů pro klonování disků byly tyto:
– nevyžadují Windows ani macOS
– nevyžadují jakýkoliv nainstalovaný OS
– jsou k dispozici pro OS na bázi Debianu
– jsou zdarma či alespoň víceméně volně dostupné
Dostalo se tak tedy na nástroje, které jsou použitelné buď v live Linuxu nebo mají možnost použití ve formě bootovacího média.

Po zvážení ještě několika podružných věcí, které částečně vyplynou z dalšího pojednání, jsem se rozhodl pro tentokrát pracovat s cílovým HDD 250 GB a padla volba na srovnání těchto nástrojů:
DD, Clonezilla, Acronis True Image 2016 a AOMEI Backupper Linux.
Rozvržení zdrojového disku bylo následující:
25 MB / 100 MB – ntfs
35,25 GB / 62,2 GB – ntfs
62,18 GB / 143,08 GB – ntfs
8,25 GB / 32,65 GB – ext4
Naměřená rychlost zápisu cílového disku:
min. 67,8 MB/s, max. 125,1 MB/s, prům. 104,3 MB/s

První dva nástroje jsou vhodné pro více pokročilé uživatele a profesionály, zatímco pro běžného uživatele v takovém případě spíše doporučím použít Acronis či AOMEI, kde se pracuje velmi intuitivně, s tím, že ohledně dořešení nutných dodatečných úprav v případě přenosu Linuxu (viz níže), se obrátí na zkušenější uživatele prostřednictvím fóra své oblíbené distribuce. Pro středně pokročilé lze doporučit i na závěr doplňkově zmíněný GParted.
Samotný závěr, co komu ušetří více práce, času či jejich vzájemný poměr, nechám na zvážení každého, dle svých individuálních dispozic a potřeb 😉

DD
Toto je čistě příkazová záležitost, probíhající v terminálu a je třeba dávat opravdu dobrý pozor na správné označení jednotek. Tato utilita neumí klonovat proporčně, tedy nelze přímo klonovat na menší cílový disk a vůbec přenos dat na disk jiné velikosti je celkem komplikovaný a vyžaduje pokročilejší znalosti či orientaci pro vyhledání možných způsobů na internetu.
dd if=/dev/sdX of=/dev/sdY status=progress
se rychlost pohybovala v průměru na 20 MB/s, při použití
dd if=/dev/sdX of=/dev/sdY bs=512 status=progress
se rychlost kopírování nezměnila – zde jsem to logicky předpokládal, vzhledem k tomu, že je to základní velikost logického sektoru. Při
dd if=/dev/sdX of=/dev/sdY bs=2048 status=progress
také nedošlo ke změně rychlosti – to už mě překvapilo – čekal jsem dvojnásobné zrychlení, ale u
dd if=/dev/sdX of=/dev/sdY bs=4096 status=progress
se už pohybovala až ke 120 MB/s, tedy k hranici možností cílového disku.
V tomto případě tedy cca 4x rychleji – již dle očekávané linearity, která se ukázala, že neplatí za všech okolností. Je to nejspíše proto, že velikost fyzického sektoru je oněch 4096 bajtů a v případě kopírování po 2048 bajtech musí utilita stejně číst každý logický sektor zvlášť.
Nevím ovšem jistě, jestli v případě, že by i cílové médium bylo SSD a při použití větší velikosti bloku, by bylo zachováno zarovnání oddílů. Je velmi pravděpodobné, že ano, neboť zvolená čísla jsou násobkem 512 a velikost fyzického sektoru je právě těch 4096 bajtů.

Clonezilla
Je možné použít buď Clonezilla Live – tedy samostatné distro postavené na Debianu nebo na Ubuntu (alternative):
https://clonezilla.org/downloads.php
Také je součástí distribuce Parted Magic, která je postavená na Ubuntu, ale je placená.
A nebo nainstalovat na jakékoliv distro založené na debianové bázi. Pokud je v repozitáři:
sudo apt install --install-recommends clonezilla
Zde však mohou nastat potíže – např. u Ubuntu 18.04 popsané v následujícím odkazu, kde je zároveň vysvětleno, proč je použit argument v příkazu:
https://forum.ubuntu.cz/index.php/topic,84890.msg570298.html#msg570298
V Debianu 9.11 také bylo třeba ještě něco dořešit, takže toto má smysl pouze, když si někdo sestavuje vlastní obraz live nebo instalačního média.
Tato aplikace – tedy spíše komplex utilit, řízený interaktivním skriptem má, co se týče klonování, oproti ostatním velkou výhodu v tom, že zachová UUID oddílů a nemusí se toto u linuxových OS řešit dodatečně.
Nevýhodou je, že neumí pracovat se zarovnáním oddílů, nelze přímo klonovat na menší cílový disk (toho lze docílit jen skrze zálohu do obrazu a jeho obnovu- obojí s vhodně zvolenými parametry v expertním módu) a také absence grafického rozhraní, kdy vše probíhá v textovém módu a vyžaduje si to pokročilejší úroveň orientace a angličtiny. Klonoval jsem tedy pouze oddíl s ext4 s parametrem -q1 (force sector by sector), který by toto v případě SSD – SSD mohl ošetřit a rychlost se pohybovala až k hodnotám 115 MB/s, tedy opět k hranici možnosti cílového disku. Na stránkách vývojáře je rozsáhlá dokumentace včetně mnoha návodů a příkladů s obrázky.

Acronis True Image 2016 – bootovací disk
Jedná se sice o placený nástroj, ale následující odkazy šlo dohledat nebo – v posledním případě dohledat základ a syntetizovat 😉
http://dl2.acronis.com/s/AcronisTrueImage2016_6569.iso
Zde odkazy na novější verze:
http://dl2.acronis.com/s/AcronisTrueImage2019_14690.iso
https://dl.acronis.com/u/AcronisTrueImage2020_20770.iso
Tento nástroj pracuje plně v GUI a je vybaven češtinou. Lze v něm pohodlně zvolit, co chceme dělat a průvodce spolu s grafickým znázorněním zajišťuje snadnou orientaci i pro běžného uživatele bez nějakých zvláštních zkušeností a znalostí. Umí pracovat s oddíly proporcionálně – lze tedy klonovat z většího disku na menší a má funkci pro zarovnání oddílů, je-li cílový disk SSD. Nevýhodou je, že oddílům vytvořeným na cílovém disku přiděluje náhodná UUID a v případě linuxového OS je posléze třeba udělat úpravy. Buď změnit UUID oddílů v souladu se zdrojovým diskem nebo přepsat UUID v záznamech souboru fstab. Také lze z live média použít nástroj Boot Repair a možná, že by to zvládl grub-doctor obsažený ve starších distribucích Parted Magic nebo SalineOS, což je skriptový nástroj, který ovšem vyžaduje specifické prostředí, které je v případě doplnění do jiné distribuce také třeba doinstalovat. Je to takové trochu šroubování. V obou případech je ale už třeba trochu vědět, co člověk dělá.
Další nevýhodou je, že v případě oddílu ext4 neumí rozpoznat obsazení a tím pádem nelze klonovat proporčně a kopíruje se pouze po sektorech.
V případě proporčního, víceméně automatického klonování celého disku dosáhl tento nástroj průměrné rychlosti 91 MB/s. Celkový čas tvořil 26 minut. Při volbě klonování pouze oddílu ext4 (v režimu image sector) byla rychlost kolem 120 MB/s – tedy zase hraniční.
Při využití volby ručního nastavení oddílů pro proporcionální klonování se vyskytl malý neduh, že se na konci cílového disku vytvořilo cca 6 MB nevyužité místo.
Ve verzi 2020 je plná podpora ext4 oddílů. Bohužel má zase funkci automatického vyhledávání záloh a tak tam, pokud je člověk na základní obrazovce, pořád chroupe HDD jako ve Win10, přestože je možné lokalizovat zálohy ručně. A to i po té, co dochroupal a dojde k opětovnému přepnutí na úvodní screen – začne hledat znovu, protože si trouba nepamatuje, že nic nenašel.

AOMEI Backupper – Linux live disk
https://www.ubackup.com/download-iso.html
http://www2.aomeisoftware.com/download/adb/amlnx.iso
Zde lze napsat prakticky to samé co u Acronis, ale s tím, že je opravdu free.
Má stejné potíže s ext4, nectí UUID a při ruční úpravě oddílů pro proporční klonování vytváří nevyužité místo a dokonce i mezi oddíly.
Při proporčním klonování disku s automatikou dosáhl průměrné rychlosti 55 MB/s a celkový čas byl 41 minut. Při kopírování pouze particie ext4 s volbou pro sector by sector byla rychlost v průměru 91 MB/s.
Zde je zvláštní, že při klonování program indikoval hodnoty kolem 120 MB/s nicméně celkový čas tomu neodpovídal a byl vypočten na výše uvedené číslo.

GParted
Pro ucelenost zmíním ještě tento nástroj, který není přímo pro toto určený, nicméně má přehledné GUI a mnoho funkcí, takže při pokročilejších znalostech se dá k přenášení z jednoho disku na druhý celkem pohodlně využít s tím, že se pak dodatečně obnoví bootsector.

Štítky , .Záložka pro permanentní odkaz.

3 reakce na Klonování disků – porovnání nástrojů.

  1. Old Bobby říká:

    Při této příležitosti bych se zastavil u GParted, což je nástroj, který je transparentní a trochu zkušenější borec s ním dokáže odvést dobrou práci.
    U toho „klonování“ bych rád upřesnil:
    Na zdrojovém disku je třeba 13 particií, ale na cílový disk nepotřebuji přesunout/kopírovat všechny. Tak začnu z levé strany – 1. partyšnu označím, dám kopírovat a přepnu se na cílový disk a dám Paste. Tak pokračuji i s následujícími oddíly, které se budou kopírovat. Na cílovém disku pak bude např. jen 9 particií a budou poskládané za sebou. Jenže po 3. kopírování musím na cílovém disku vytvořit logický (extended) oddíl a do něj postupně zkopírovat ten zbytek.
    Nakonec dám obnovit bootsector a disk by měl být připraven. Podotýkám, že všechny oddíly (kromě swapu) jsou ext4, některé FAT32 (což jsou datové sklady).
    Dá se to tak udělat?

    • Ventero říká:

      Pakliže má disk tolik oddílů, tak musí buď být v GPT a nebo se nakonec stejně jedná o to, že obsahuje jeden rozšířený oddíl, kde jsou ty zbývající logické. Pak by neměl být problém tento rozšířený odd. kopírovat jako celek. Pokud by bylo třeba proporcionality – tvůj případ, pak bych si na cílovém disku všechny oddíly předpřipravil a pak kopíroval po jednom obsah pomocí kopírovat/vložit – mám za to, že tohle GParted umí – pamatuji si matně, že jsem to takhle kdysi udělal.

  2. Snapshot říká:

    V MX-linuxu je přímo nástroj Snapshot tool:

    http://mxlinuxguide.blogspot.com/p/blog-page_39.html