"Dd" je linux CLI alat. Sada je trenutna verzija "dd" dio GNU coreutilsa, ona koju imaju svaki pojedini UNIX / Linux sustav. Primarna svrha ovog alata je pretvaranje i kopiranje datoteka. Međutim, sasvim je drugačiji od ostalih alata za kopiranje datoteka poput "cp".
dd značajke "Dd" se može koristiti u razne svrhe:
Korištenjem "dd" moguće je izravno čitati i / ili pisati iz / u različite datoteke pod uvjetom da je funkcija već implementirana u poštovane upravljačke programe. Iznimno je koristan u svrhe poput izrade sigurnosne kopije boot sustava, dobivanja slučajnih podataka itd. Pretvorba podataka, na primjer, pretvaranje ASCII u EBCDIC kodiranje. dd korištenje Evo nekoliko najčešćih i najzanimljivijih upotreba "dd". Naravno, "dd" je daleko sposobniji od ovih stvari. Ako ste zainteresirani, uvijek preporučujem provjeru drugih detaljnih izvora na “dd”.
Mjesto
koji dd
Kao što izlaz pokazuje, kad god pokrene “dd”, pokreće se iz “/ usr / bin / dd”.
Osnovna upotreba Evo strukture koju slijedi "dd".
dd ako =
od = Na primjer, stvorimo datoteku sa slučajnim podacima. U Linuxu postoje neke ugrađene posebne datoteke koje se pojavljuju kao normalne datoteke poput "/ dev / zero" koja stvara kontinuirani tok NULL, "/ dev / random" koji stvara kontinuirane slučajne podatke.
dd if = / dev / urandom od = ~ / Desktop / random.txt bs = 1M count = 5
Prve opcije su same po sebi razumljive. Znači koristiti "/ dev / urandom" kao izvor podataka i "~ / Desktop / random.txt ”kao odredište. Koje su druge mogućnosti?
Ovdje "bs" znači "veličina bloka". Kada dd piše podatke, piše u blokovima. Pomoću ove opcije može se definirati veličina bloka. U ovom slučaju vrijednost "1M" govori da je veličina bloka 1 megabajt.
"Count" određuje broj blokova koji će se zapisati. Ako se ne popravi, "dd" će nastaviti postupak pisanja ako ulazni tok ne završi. U ovom će slučaju "/ dev / urandom" nastaviti generirati podatke beskonačno, pa je ova opcija bila najvažnija u ovom primjeru.
Sigurnosna kopija podataka Koristeći ovu metodu, "dd" se može koristiti za izbacivanje podataka cijelog pogona! Sve što trebate je reći pogonu kao izvoru.
dd ako = od =
Ako idete na takve radnje, pobrinite se da vaš izvor nije direktorij. “Dd” nema ideju kako obraditi direktorij, tako da stvari neće funkcionirati.
"Dd" zna samo raditi s datotekama. Dakle, ako vam je potrebna sigurnosna kopija direktorija, upotrijebite tar da biste ga prvo arhivirali, a zatim upotrijebite "dd" za prijenos u datoteku.
katran cvJf demo.katran.xz DemoDir /
dd ako je = demo.katran.xz od = ~ / Desktop / backup.img
U sljedećem ćemo primjeru izvesti vrlo osjetljivu operaciju: izradu sigurnosne kopije MBR-a! Sada, ako vaš sustav koristi MBR (Master Boot Record), on se nalazi na prvih 512 bajtova sistemskog diska: 466 bajta za bootloader, ostali za particijsku tablicu.
Pokrenite ovu naredbu za sigurnosno kopiranje MBR zapisa.
dd ako = / dev / sda od = ~ / Desktop / mbr.img bs = 512 broj = 1
Vraćanje podataka Za bilo koju sigurnosnu kopiju potreban je način vraćanja podataka. U slučaju "dd", postupak obnavljanja malo se razlikuje od bilo kojeg drugog alata. Datoteku sigurnosne kopije morate ponovo napisati na sličnu mapu / particiju / uređaj.
Na primjer, imam ovu „sigurnosnu kopiju.img ”koja sadrži“ demo.katran.xz ”datoteka. Da bih ga izvukao, koristio sam sljedeću naredbu.
dd if = sigurnosna kopija.img of = demo.katran.xz
Opet, provjerite pišete li izlaz u datoteku. "Dd" nije dobro s direktorijima, sjetite se?
Slično tome, ako se za izradu sigurnosne kopije particije koristi “dd”, tada bi za njezino vraćanje bila potrebna sljedeća naredba.
dd ako = od =
Na primjer, što kažete na vraćanje MBR-a za koji smo napravili sigurnosnu kopiju ranije?
dd ako je = mbr.img od = / dev / sda
Opcije „dd“ U jednom ste se trenutku u ovom vodiču suočili s nekim "dd" opcijama poput "bs" i "count", zar ne? Pa, ima ih više. Evo užeg izbora o tome što su i kako ih koristiti.
obs: Određuje veličinu podataka koji se istodobno zapisuju. Zadana vrijednost je 512 bajtova.
cbs: Određuje veličinu podataka koji se istovremeno pretvaraju.
ibs: Određuje veličinu podataka koji se istodobno čitaju. count: Kopirajte samo N blokova
traži: Preskoči N blokova na početku izlaza
preskoči: preskoči N blokova na početku unosa
conv = ascii: Pretvara unos datoteke iz EBCDIC u ASCII
conv = ebcdic: Pretvara unos datoteke iz ASCII u EBCDIC
conv = ibm: pretvara unos datoteke iz ASCII u zamjenski EBCDIC
conv = lcase: pretvara unos datoteke iz velikog u mala slova
conv = ucase: pretvara unos datoteke iz malog u velika slova
conv = bris: zamijenite svaki ulazni par
Dodatne mogućnosti:
nocreat: Ne stvarajte izlaznu datoteku notruc: Nemojte krčiti izlaznu datoteku noerror: Nastavite s operacijom, čak i nakon što se suočite s pogreškom fdatasync: Zapišite podatke u fizičku pohranu prije nego što postupak završi fsync: Slično fdatasync, ali također zapisuje metapodatke iflag: dotjerajte operaciju na temelju različitih zastavica. Dostupne zastavice uključuju: dodavanje Dodati podatke na izlaz
Dodatne mogućnosti:
direktorij: Suočavanje s direktorijom neće uspjeti dsync: Sinkronizirani I / O za podatke sync: Slično dsync-u, ali uključuje metapodatke nocache: Zahtjevi za ispuštanje predmemorije. nofollow: Ne slijedite nijednu simboličku vezu
Dodatne mogućnosti:
count_bytes: Slično "count = N" bajtovi_bajta: Slično "tražiti = N" skip_bytes: Slično "preskočiti = N" Kao što ste vidjeli, moguće je složiti više zastavica i opcija u jednu naredbu "dd" da biste podesili ponašanje u radu.
dd ako je = demo.txt od = demo1.txt bs = 10 count = 100 conv = ebcdic iflag = dodati, nocache, nofollow, sync
Završne misli Tok rada "dd" prilično je jednostavan. Međutim, na tome hoće li "dd" zasvijetliti, na vama je. Postoji mnoštvo načina na koje se kreativni načini na koje se „dd“ može koristiti za obavljanje pametnih interakcija.
Za detaljnije informacije o “dd” i svim njegovim opcijama, potražite stranicu s informacijama o čovjeku.
čovjek dd