»Dd« je orodje CLI za linux. Sedanja različica »dd« je del jedra GNU, ki jo ima vsak sistem UNIX / Linux. Glavni namen tega orodja je pretvorba in kopiranje datotek. Vendar se precej razlikuje od drugih orodij za kopiranje datotek, kot je "cp".
dd funkcije "Dd" se lahko uporablja za različne namene:
Z uporabo »dd« lahko neposredno berete in / ali pišete iz / v različne datoteke, če je funkcija že implementirana v spoštovane gonilnike. Je zelo uporaben za namene, kot so varnostno kopiranje zagonskega sektorja, pridobivanje naključnih podatkov itd. Pretvorba podatkov, na primer pretvorba ASCII v kodiranje EBCDIC. dd uporaba Tu je nekaj najpogostejših in najbolj zanimivih načinov uporabe "dd". Seveda je "dd" veliko bolj sposoben od teh stvari. Če vas zanima, vedno priporočam, da preverite druge poglobljene vire na “dd”.
Lokacija
ki je dd
Kot kaže izhod, se ob vsakem zagonu »dd« zažene iz »/ usr / bin / dd«.
Osnovna uporaba Tu je struktura, ki ji sledi »dd«.
dd, če =
od = Ustvarimo na primer datoteko z naključnimi podatki. V Linuxu je nekaj vgrajenih posebnih datotek, ki so videti kot običajne datoteke, na primer “/ dev / zero”, ki ustvarja neprekinjen tok NULL, “/ dev / random”, ki ustvarja neprekinjene naključne podatke.
dd if = / dev / urandom of = ~ / Desktop / random.txt bs = 1M štetje = 5
Prve možnosti so samoumevne. Pomeni uporabo "/ dev / urandom" kot vira podatkov in "~ / Desktop / random.txt "kot cilj. Katere so druge možnosti?
Tu "bs" pomeni "velikost bloka". Ko dd piše podatke, piše v blokih. S to možnostjo lahko določite velikost bloka. V tem primeru vrednost "1M" pravi, da je velikost bloka 1 megabajt.
"Count" določa število blokov, ki jih želite zapisati. Če ni popravljeno, bo "dd" nadaljeval postopek pisanja, razen če se vhodni tok konča. V tem primeru bo »/ dev / urandom« še naprej generiral podatke neskončno, zato je bila ta možnost v tem primeru najpomembnejša.
Varnostno kopiranje podatkov S to metodo lahko s pomočjo »dd« izbrišete podatke celotnega pogona! Vse, kar potrebujete, je povedati pogon kot vir.
dd, če = od =
Če se odločite za takšna dejanja, se prepričajte, da vaš vir ni imenik. “Dd” ne ve, kako obdelati imenik, zato stvari ne bodo delovale.
“Dd” zna delati samo z datotekami. Torej, če potrebujete varnostno kopijo imenika, uporabite tar, da ga najprej arhivirate, nato pa uporabite »dd«, da ga prenesete v datoteko.
tar cvJf demo.katran.xz DemoDir /
dd, če = demo.katran.xz od = ~ / Namizje / varnostna kopija.img
V naslednjem primeru bomo izvedli zelo občutljivo operacijo: varnostno kopiranje MBR! Zdaj, če vaš sistem uporablja MBR (Master Boot Record), se nahaja na prvih 512 bajtih sistemskega diska: 466 bajtov za zagonski nalagalnik, drugi za particijsko tabelo.
Zaženite ta ukaz za varnostno kopiranje zapisa MBR.
dd if = / dev / sda of = ~ / Desktop / mbr.img bs = 512 štetje = 1
Obnovitev podatkov Za vsako varnostno kopijo je potreben način obnovitve podatkov. V primeru »dd« je postopek obnavljanja nekoliko drugačen kot katero koli drugo orodje. Datoteko varnostne kopije morate znova napisati v podobno mapo / particijo / napravo.
Na primer, imam to "varnostno kopijo.img ", ki vsebuje" demo.katran.xz ”. Da bi ga izvlekel, sem uporabil naslednji ukaz.
dd if = varnostna kopija.img of = demo.katran.xz
Ponovno se prepričajte, da izpisujete v datoteko. "Dd" ni v redu z imeniki, ne pozabite?
Podobno, če je bil za izdelavo varnostne kopije particije uporabljen »dd«, bi za njegovo obnovitev bil potreben naslednji ukaz.
dd, če = od =
Na primer, kako bi bilo z obnovitvijo MBR, ki smo ga prej varnostno kopirali?
dd, če = mbr.img of = / dev / sda
Možnosti “dd” V nekem trenutku v tem priročniku ste se soočili z nekaterimi možnostmi »dd«, kot sta »bs« in »count«, kajne? No, več jih je. Tu je ožji izbor o tem, kaj so in kako jih uporabiti.
obs: Določa velikost podatkov, ki jih je treba zapisati hkrati. Privzeta vrednost je 512 bajtov.
cbs: določa velikost podatkov, ki jih je treba pretvoriti naenkrat.
ibs: določa velikost podatkov, ki jih je treba brati hkrati. count: Kopirajte samo N blokov
iskanje: Preskoči N blokov na začetku izhoda
preskoči: preskoči N blokov na začetku vnosa
conv = ascii: Pretvori vnos datoteke iz EBCDIC v ASCII
conv = ebcdic: pretvori vnos datoteke iz ASCII v EBCDIC
conv = ibm: pretvori vnos datoteke iz ASCII v nadomestni EBCDIC
conv = lcase: pretvori vnos datoteke iz velikega v malega
conv = ucase: pretvori vnos datoteke iz malega v velikega
conv = bris: zamenjajte vsak vhodni par
Dodatne možnosti:
nocreat: ne ustvarjajte izhodne datoteke notruc: Ne okrni izhodne datoteke noerror: Nadaljujte z operacijo, tudi po napaki fdatasync: Pred zaključkom postopka v fizični pomnilnik zapišite podatke fsync: podobno kot fdatasync, vendar tudi zapisuje metapodatke iflag: Prilagodite operacijo na podlagi različnih zastavic. Razpoložljive zastavice vključujejo: dodaj pripni podatke izhodu
Dodatne možnosti:
directory: Soočenje z imenikom ne bo uspelo dsync: Sinhronizirani V / I za podatke sinhronizacija: podobno kot dsync, vendar vključuje metapodatke nocache: zahteve za spuščanje predpomnilnika. nofollow: Ne sledite nobeni simbolni povezavi
Dodatne možnosti:
count_bytes: podobno kot “count = N” iskanje_bajtov: podobno kot "iskanje = N" skip_bytes: podobno kot "preskoči = N" Kot ste videli, je mogoče v en ukaz "dd" zložiti več zastavic in možnosti, da prilagodite vedenje operacije.
dd, če = demo.txt = demo1.txt bs = 10 count = 100 conv = ebcdic iflag = dodaj, nocache, nofollow, sync
Zadnje misli Potek dela »dd« je precej preprost. Vendar, da bo "dd" resnično zasijal, je odvisno od vas. Obstaja veliko načinov, s katerimi lahko kreativne načine "dd" uporabimo za pametne interakcije.
Za podrobnejše informacije o “dd” in vseh njegovih možnostih glejte stran s podatki in informacijami.
človek dd