linux下dd命令詳解及應用例項

2021-09-22 22:17:03 字數 2424 閱讀 2552

名稱: dd

使用許可權: 任何使用者dd 這個指令在 manual 裡的定義是 convert and copy a file

使用方式:

dd [option]

檢視幫助說明

dd --help

或是info dd

檢視版本:

dd --version

輸入或輸出

dd if=[stdin] of=[stdout]

強迫輸入或輸出的size為多少bytes

bs: dd -ibs=[byte] -obs=[size]

強迫一次只做多少個 bytes

cbs=bytes

跳過一段以後才輸出

seek=blocks

跳過一段以後才輸入

skip=blocks

當然您能夠拿這個來方便的拷貝光碟(注意,您的光碟是標準的 iso9660格式才能夠這麼做唷!)

dd if=/dev/cdrom of=cdrom.iso

其中 if 後面連同 of 後面的內容依您的需求調整。

然後給系統這個指令就能夠燒了:

cdrecord -v cdrom.iso

這篇不是在講 cdrecord 的,所以上面的指令是最為簡單但是不一定能符合您的硬體環境...

功能:把指定的輸入文件拷貝到指定的輸出文件中,並且在拷貝過程中能夠進行格式轉換。能夠用該命令實現dos下的diskcopy命令的作用。先用dd命令

把軟盤上的資料寫成硬碟的乙個寄存文件,再把這個寄存文件寫入第二張軟盤上,完成diskcopy的功能。需要注意的是,應該將硬碟上的寄存文件用rm

命令刪除掉。系統預設使用標準輸入文件和標準輸出文件。

語法:dd [選項]

if =輸入文件(或裝置名稱)。

of =輸出文件(或裝置名稱)。

ibs = bytes 一次讀取bytes位元組,即讀入緩衝區的位元組數。

skip = blocks 跳過讀入緩衝區開頭的ibs*blocks塊。

obs = bytes 一次寫入bytes位元組,即寫入緩衝區的位元組數。

bs = bytes 同時配置讀/寫緩衝區的位元組數(等於配置ibs和obs)。

cbs = byte 一次轉換bytes位元組。

count=blocks 只拷貝輸入的blocks塊。

conv = ascii 把ebcdic碼轉換為ascil碼。

conv = ebcdic 把ascil碼轉換為ebcdic碼。

conv = ibm 把ascil碼轉換為alternate ebcdic碼。

conv = block 把變動位轉換成固定字元。

conv = ublock 把固定位轉換成變動位。

conv = ucase 把字母由小寫轉換為大寫。

conv = lcase 把字母由大寫轉換為小寫。

conv = notrunc 不截短輸出文件。

conv = swab 交換每一對輸入位元組。

conv = noerror 出錯時不停止處理。

conv = sync 把每個輸入記錄的大小都調到ibs的大小(用nul填充)。

例1:要把一張軟盤的內容拷貝到另一張軟盤上,利用/tmp作為臨時儲存區。把源盤插入驅動器中,輸入下述命令:

$ dd if =/dev/fd0 of = /tmp/tmpfile

拷貝完成後,將源盤從驅動器中取出,把目標盤插入,輸入命令:

$ dd if = /tmp/tmpfile of =/dev/fd0

軟盤拷貝完成後,應該將臨時文件刪除:

$ rm /tmp/tmpfile

例2:把net.i這個文件寫入軟盤中,並設定讀/寫緩衝區的數目。

(注意:軟盤中的內容會被完全覆蓋掉)

$ dd if = net.i of = /dev/fd0 bs = 16384

例3:商業資料毀屍滅跡

dd if=/dev/zero of=/dev/sda conv=notrunc

例4:製作映象

dd if=/dev/hda1 of=hdimage.img conv=noerror,notrunc

例5:轉殖硬碟

(這裡以從虛擬機器sda(2g大小)往乙隻u盤sdb(2g大小)轉殖fedora為例)

dd if=/dev/sda of=/dev/sdb notrunc,noerror

注:如果80g的硬碟(假設只有乙個分割槽)轉殖到250g的分割槽,250g的分割槽會變成80g,導致剩餘的空間未分配。這種情況可以先用partition magic或者是acronis disk director將較大的硬碟分好區

例6:網路轉殖

目標機上執行 netcat -l -p 1234 | dd of=/dev/hdc bs=16065b

源機上執行dd if=/dev/hda bs=16065b | netcat targethost-192.168.3.33 1234

linux下dd命令詳解及應用例項

名稱 dd 使用許可權 任何使用者dd 這個指令在 manual 裡的定義是 convert and copy a file 使用方式 dd option 檢視幫助說明 dd help 或是info dd 檢視版本 dd version 輸入或輸出 dd if stdin of stdout 強迫輸...

linux下dd命令詳解

linux下dd命令詳解 dd 是 linux unix 下的乙個非常有用的命令,作用是用指定大小的塊拷貝乙個檔案,並在拷貝的同時進行指定的轉換。dd 的主要選項 指定數字的地方若以下列字元結尾乘以相應的數字 b 512,c 1,k 1024,w 2,xm number m if file 輸入檔名...

linux下dd命令詳解

名稱 dd 使用許可權 所有使用者dd 這個指令在 manual 裡的定義是 convert and copy a file 使用方式 dd option dd help 或是 info dd 如果你想要看看這個版本如何 dd version 輸入或輸出 dd if stdin of stdout ...