Klonovanie disku pomocou DD

Približný čas čítania: 2 minút

dd je command-line utilita pre Unix a Unix-like operačné systémy ktorej hlavným účelom je konvertovať a kopírovať súbory. V Unix-like systémoch sa zobrazujú ovládače zariadení pre hardvér (ako sú jednotky pevného disku) a špeciálne súbory zariadení (napríklad /dev/zero a /dev/random) rovnako ako bežné súbory; dd môže tiež čítať a / alebo zapisovať z / do týchto súborov za predpokladu, že je táto funkcia implementovaná v ich príslušnom ovládači. dd sa dá teda použiť a je jeden z nalepších, dostupných, klonovacích nástrojov zdarma. V nasledujúcich riadkoch spomeniem rôzne použitia tohto programu práve pri klonovaní diskov.

POZOR: Neodporúča sa využívanie dd na živom file-systéme (napríklad počas behu operačného systému, zavedeného práve z tohto disku) a celkom reálne hrozí poškodenie súborov. Dôvodom je absolutné nechápanie zmien na strane dd ktoré môžu v živom file-systéme prebiehať a tým pádom aj ich nulová korekcia zo strany programu (napr. pri databázach).

Rôzne použitia programu dd

Niektoré uvedené príklady sa budú opierať o fakt, že na sda je disk plný dát a na sdb je prázdny disk. Systém (aby sa zamedzilo vyššie uvedenému) je live, nabótovaný a používaný z USB kľúča (napr: Linux Mint, Debian, Ubuntu a pod.).

Jednoduché spustenie klonovania bez parametrov.

dd if=/dev/sda of=/dev/sdb

Jednoduché spustenie klonovania disku do súboru (imidžu).

dd if=/dev/sda of=obraz.img

Obnovenie obrazu z imidžu späť na disk.

dd if=obraz.img of=/dev/sdb

Pre ušetrenie miesta, môžeme komprimovať imidž za behu.

dd if=/dev/sda | gzip -c  > /obraz.img

Následne obnovovanie imidžu späť do disku

gunzip -c /obraz.img.gz | dd of=/dev/sdb

Poslanie imidžu po sieti prostredníctvom ssh ako prúd dát.

dd if=/dev/sda | ssh user@server "cat > zaloha.img"

Poslanie imidžu po sieti prostredníctvom ssh ako prúd komprimovaných dát.

dd if=/dev/sda | gzip -c --fast | ssh user@host.domain 'dd of=/home/user/sda.img.gz'

 Obnovenie imidžu zo siete na lokálny disk

ssh user@host.domain 'dd if=/home/user/sda.img.gz' | gunzip -1 - | dd of=/dev/sdb

Tvorba ISO imidžu z CD/DVD-ROM

dd if=/dev/dvd of=/opt/my_linux_image.iso

Parametre programu dd

conv=sync – hovorí dd, že každý blok má byť vyplnený nulami v prípade, že dáta nie je možné zo zdroju čítať (napr.: bad-blocks) tak, že je zachovaná aspoň pôvodná veľkosť bloku.

conv=sync,noerror – nezastavovať vykonávanie príkazu v prípade narazenia na chybu (napr. pri čítaní)

bs=1M | 10M | 512  – block size – veľkosť bloku. Je „žiadúce“ nastaviť správnu veľkosť podľa typu média z/do ktorého kopírujeme pre optimálizáciu rýchlosti.

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

Táto webová stránka používa Akismet na redukciu spamu. Získajte viac informácií o tom, ako sú vaše údaje z komentárov spracovávané.