Linux命令dd与cp的区别

 

  原文链接: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无能为力。
 
posted @ 2017-04-16 15:53  蜀云泉  阅读(6169)  评论(0编辑  收藏  举报