'dd' kommando i Linux
dd er et kommandolinjeværktøj til Unix og Unix-lignende operativsystemer, hvis primære formål er at konvertere og kopiere filer.
- På Unix vises enhedsdrivere til hardware (såsom harddiske) og specielle enhedsfiler (såsom /dev/zero og /dev/random) i filsystemet ligesom normale filer.
- dd kan også læse og/eller skrive fra/til disse filer, forudsat at funktionen er implementeret i deres respektive drivere
- Som følge heraf kan dd bruges til opgaver såsom sikkerhedskopiering af bootsektoren på en harddisk og opnåelse af en fast mængde tilfældige data.
- dd-programmet kan også udføre konverteringer på dataene, efterhånden som de kopieres, inklusive byte-rækkefølge-bytte og konvertering til og fra ASCII- og EBCDIC-tekstkodningerne.
Anvendelse: Kommandolinjesyntaksen for dd adskiller sig fra mange andre Unix-programmer, ved at den bruger syntaksen option=værdi for dens kommandolinjeindstillinger i stedet for den mere standard -option værdi eller –option=værdi formater. Som standard læser dd fra stdin og skriver til stdout, men disse kan ændres ved at bruge if (inputfil) og af (outputfil) muligheder.
Nogle praktiske eksempler på kommandoen dd:
- Sådan sikkerhedskopieres hele harddisken: For at sikkerhedskopiere en hel kopi af en harddisk til en anden harddisk, der er tilsluttet det samme system, skal du udføre kommandoen dd som vist. I dette dd-kommandoeksempel er UNIX-enhedsnavnet på kildeharddisken /dev/hda, og enhedsnavnet på målharddisken er /dev/hdb.
- hvis repræsenterer inputfil, og af repræsenterer outputfil. Så den nøjagtige kopi af /dev/sda vil være tilgængelig i /dev/sdb .
- Hvis der er nogen fejl, vil ovenstående kommando mislykkes. Hvis du giver parameteren conv=noerror så fortsætter den med at kopiere, hvis der er læsefejl.
- Inputfil og outputfil bør nævnes meget omhyggeligt. Bare i tilfælde af, at du nævner kildeenheden i målet og omvendt, kan du miste alle dine data.
- For at kopiere, harddisk til harddisk ved hjælp af dd-kommandoen nedenfor, synkroniseringsindstilling giver dig mulighed for at kopiere alt ved hjælp af synkroniseret I/O.
# dd if=/dev/sda of=/dev/sdb conv=noerror, sync
# dd if=/dev/sda of=/dev/sdb
# dd if=/dev/hda1 of=~/partition.imgSådan oprettes et billede af en harddisk: I stedet for at tage en sikkerhedskopi af harddisken, kan du oprette en billedfil af harddisken og gemme den på andre lagerenheder. Der er mange fordele ved at sikkerhedskopiere dine data til et diskbillede, en af dem er brugervenligheden. Denne metode er typisk hurtigere end andre typer sikkerhedskopier, hvilket giver dig mulighed for hurtigt at gendanne data efter en uventet katastrofe. Den skaber billedet af en harddisk /dev/hda.
# dd if=/dev/hda of=~/hdadisk.imgSådan gendannes ved hjælp af harddiskbilledet: For at gendanne en harddisk med billedfilen fra en anden harddisk, kan følgende dd-kommando bruges
# dd if=hdadisk.img of=/dev/hdb
Billedfilen hdadisk.img er billedet af en /dev/hda, så kommandoen ovenfor vil gendanne billedet af /dev/hda til /dev/hdb. Sådan oprettes CDROM Backup: dd-kommandoen giver dig mulighed for at oprette en iso-fil fra en kildefil. Så vi kan indsætte cd'en og indtaste dd-kommandoen for at oprette en iso-fil med et cd-indhold.
# dd if=/dev/cdrom of=tgsservice.iso bs=2048
dd-kommandoen læser en blok input og behandler den og skriver den ind i en outputfil. Du kan angive blokstørrelsen for input- og outputfil. I ovenstående dd-kommandoeksempel er parameteren bs angiver blokstørrelsen for både input- og outputfilen. Så dd bruger 2048 bytes som en blokstørrelse i ovenstående kommando.
Referencer: