原文鏈接:http://blog.csdn.net/erazy0/article/details/6087554
問:
看了一些關於dd和cp的命令,但是我始終無法明白dd和cp之間有什么不同?
不是都可以看成是備份的作用么?還有什么區別呢?
答:
1、dd是對塊進行操作的,cp是對文件操作的。
2、比如有兩塊硬盤,要將第一個硬盤裏的數據複製到第二個硬盤上
dd if=/dev/hda of=/dev/hdc bs=4 count=1024
bs每次複製的塊大小
count要複製的次數
這樣第二塊硬盤的數據佈局和第一塊是完全一樣的(扇區級別,每個扇區上的數據和第一塊硬盤都是一樣的)
cp只是將第一個硬盤的數據複製到第二個硬盤上,由於系統寫硬盤不是順序寫的,哪裏有足夠的空間就放到哪,所以第二個硬盤相同的扇區號上的數據和第一塊硬盤有可能是不一樣的。
dd:塊界別拷貝
cp:文件目錄界別拷貝
舉個例子,如圖所示。可以看出,dd將原始數據(raw data)按照數據源的格式原封不動的拷貝到目的地;cp將文件和目錄拷貝到目的地后按照目的地的格式排列新數據。注意:對於不能以文件或目錄格式呈現的數據(如引導啟動塊的數據),cp無能為力。