Linux DD -kommando

Linux DD -kommando
“DD” er et Linux CLI -verktøy. Nå er den nåværende versjonen av “DD” en del av GNU CoreUtils, er den som hver eneste UNIX/Linux -systemfunksjoner. Hovedformålet med dette verktøyet er å konvertere og kopiere filer. Imidlertid er det ganske annerledes enn andre filkopieringsverktøy som "CP".

DD -funksjoner

“DD” kan brukes til forskjellige formål:

  • Ved å bruke "DD" er det mulig å lese og/eller skrive fra/til forskjellige filer, forutsatt at funksjonen allerede er implementert i de respekterte driverne.
  • Det er super nyttig for formål som å sikkerhetskopiere oppstartssektoren, skaffe tilfeldige data osv.
  • Datakonvertering, for eksempel konvertering av ASCII til EBCDIC -koding.

DD -bruk

Her er noen av de vanligste og interessante bruken av “DD”. Selvfølgelig er "DD" langt mer dyktig enn disse tingene. Hvis du er interessert, anbefaler jeg alltid å sjekke ut andre dyptgående ressurser på "DD".

plassering

som DD

Som utdataene indikerer, lanseres den når den kjører "DD", fra "/usr/bin/dd".

Grunnleggende bruk

Her er strukturen som “DD” følger.

dd hvis = av =

La oss for eksempel opprette en fil med tilfeldige data. Det er noen innebygde spesielle filer i Linux som vises som normale filer som “/dev/null” som produserer en kontinuerlig strøm av null, “/dev/random” som produserer kontinuerlige tilfeldige data.

dd if =/dev/urandom av = ~/desktop/tilfeldig.TXT BS = 1M telling = 5

De aller første alternativene er selvforklarende. Det betyr å bruke “/dev/urandom” som en kilde til data og “~/desktop/tilfeldig.txt ”som destinasjon. Hva er de andre alternativene?

Her står “BS” for “Blokkstørrelse”. Når DD skriver data, skriver det i blokker. Ved hjelp av dette alternativet kan blokkstørrelsen defineres. I dette tilfellet sier verdien “1m” at blokkstørrelsen er 1 megabyte.

“Count” bestemmer antall blokker som skal skrives. Hvis ikke fast, "DD" vil fortsette skriveprosessen med mindre inngangsstrømmen slutter. I dette tilfellet vil “/dev/urandom” fortsette å generere data uendelig, så dette alternativet var avgjørende i dette eksemplet.

Data backup

Ved å bruke denne metoden kan “DD” brukes til å dumpe dataene til en hel stasjon! Alt du trenger er å fortelle stasjonen som kilden.

dd hvis = av =

Hvis du går etter slike handlinger, må du sørge for at kilden din ikke er en katalog. “DD” har ingen anelse om hvordan de skal behandle en katalog, så ting vil ikke fungere.

“DD” vet bare hvordan de skal jobbe med filer. Så hvis du trenger å sikkerhetskopiere en katalog, bruk TAR for å arkivere den først, og bruk "DD" for å overføre den på en fil.

TAR CVJF DEMO.tjære.xz demodir/
dd hvis = demo.tjære.xz av = ~/desktop/backup.img

I neste eksempel utfører vi en veldig følsom operasjon: sikkerhetskopiering av MBR! Hvis systemet ditt bruker MBR (Master Boot Record), er det lokalisert ved de første 512 byte av systemdisken: 466 byte for bootloader, andre for partisjonstabellen.

Kjør denne kommandoen for å sikkerhetskopiere MBR -posten.

dd if =/dev/sda av = ~/desktop/mbr.IMG BS = 512 telling = 1

Dataoppretting

For enhver sikkerhetskopi er måten å gjenopprette dataene nødvendig. Når det gjelder "DD", er gjenopprettingsprosessen litt annerledes enn noen andre verktøy. Du må skrive om sikkerhetskopifilen på en lignende mappe/partisjon/enhet på nytt.

For eksempel har jeg denne "sikkerhetskopien.IMG ”-filen som inneholder“ Demoen.tjære.XZ ”-fil. For å hente ut den, brukte jeg følgende kommando.

dd hvis = sikkerhetskopi.IMG av = demo.tjære.xz

Igjen, sørg for at du skriver utdataene til en fil. “DD” er ikke bra med kataloger, husk?

Tilsvarende, hvis "DD" ble brukt til å lage en sikkerhetskopi av en partisjon, ville det å gjenopprette den kreve følgende kommando.

dd hvis = av =

For eksempel, hva med å gjenopprette MBR vi sikkerhetskopierte tidligere?

dd hvis = mbr.img av =/dev/sda

“DD” -alternativer

På et tidspunkt i denne guiden sto du overfor noen "DD" -alternativer som "BS" og "Count", til høyre? Vel, det er flere av dem. Her er en kortliste over hva de er og hvordan du bruker dem.

  • OBS: Bestemmer størrelsen på data som skal skrives om gangen. Standardverdien er 512 byte.
  • CBS: Bestemmer størrelsen på data som skal konverteres om gangen.
  • IBS: Bestemmer størrelsen på data som skal leses om gangen.
  • Tell: Kopier bare N -blokker
  • Søk: Hopp over N -blokker i starten av utdataene
  • hopp over: hopp over n blokker i starten av inngangen
Conv = ASCII: Konverterer filinngangen fra EBCDIC til ASCII
Conv = EBCDIC: Konverterer filinngangen fra ASCII til EBCDIC
Conv = IBM: Konverterer filinngangen fra ASCII til alternativ EBCDIC
Conv = LCase: Konverterer filinngang fra store bokstaver til små bokstaver
Conv = UCase: Konverterer filinngang fra små bokstaver til store bokstaver
konv = vattpinne: Bytt hvert inngangspar

Ytterligere alternativer:

  • NoCreat: Ikke opprett utdatafilen
  • Notruc: Ikke avkort utdatafilen
  • NOEERROR: Fortsett operasjonen, selv etter å ha møtt feil
  • Fdataync: Skriv data til fysisk lagring før prosessen er ferdig
  • FSYNC: Ligner på Fdatasync, men skriver også metadataene
  • IFLAG: Tweak operasjonen basert på forskjellige flagg. Tilgjengelige flagg inkluderer: Legg til å legge til data til utdataene

Ytterligere alternativer:

  • Katalog: Messe en katalog vil mislykkes i operasjonen
  • DSYNC: Synkronisert I/O for data
  • Synkronisering: Ligner på DSYNC, men inkluderer metadata
  • Nocache: Forespørsler om å slippe cache.
  • Nofollow: Ikke følg noen symlink

Ytterligere alternativer:

  • count_bytes: ligner på “count = n”
  • Seek_bytes: Ligner på “Seek = n”
  • Skip_bytes: Ligner på “Skip = n”

Som du har sett, er det mulig å stable flere flagg og alternativer i en enkelt “DD” -kommando for å finpusse operasjonsatferden.

dd hvis = demo.txt av = demo1.txt bs = 10 telling = 100 konv = ebcdic
IFLAG = vedlegg, nocache, nofollow, synkronisering

Siste tanker

Arbeidsflyten til “DD” er ganske enkel. Men for at "DD" virkelig skal skinne, er det opp til deg. Det er mange måter kreative måter “DD” kan brukes til å utføre smarte interaksjoner.

For dybdeinformasjon om “DD” og alle alternativene, konsulter du mannen og info-siden.

mann dd