系統(tǒng)之家 - 系統(tǒng)光盤下載網(wǎng)站!

當(dāng)前位置:系統(tǒng)之家 > 系統(tǒng)教程 > DD命令測試Linux磁盤

如何使用DD命令測試Linux磁盤的性能?

時間:2015-12-25 15:59:03 作者:zhijie 來源:系統(tǒng)之家 1. 掃描二維碼隨時看資訊 2. 請使用手機瀏覽器訪問: https://m.xitongzhijia.net/xtjc/20151225/64339.html 手機查看 評論

  Linux系統(tǒng)下DD命令是常用的命令之一,同時DD命令的使用范圍也比較廣泛。除了已知的可以用DD命令來復(fù)制文件外,還可以用DD命令來測試磁盤的性能。那么如何使用DD命令測試Linux磁盤的性能?

如何使用DD命令測試Linux磁盤的性能?

  下面直接介紹幾種常見的DD命令,先看一下他的區(qū)別:

  dd bs=64k count=4k if=/dev/zero of=test

  dd bs=64k count=4k if=/dev/zero of=test; sync

  dd bs=64k count=4k if=/dev/zero of=test conv=fdatasync

  dd bs=64k count=4k if=/dev/zero of=test oflag=dsync

  這四條DD命令區(qū)別在于內(nèi)存中寫緩存的處理方式:

  1.dd bs=64k count=4k if=/dev/zero of=test

  沒有加任何參數(shù),dd默認(rèn)的方式不包括“同步(sync)”命令。也就是說,dd命令完成前并沒有讓系統(tǒng)真正把文件寫到磁盤上。所以以上命令只是單純地把這128MB的數(shù)據(jù)讀到內(nèi)存緩沖當(dāng)中(寫緩存[write cache])。所以你得到的將是一個超級快的速度。因為其實dd給你的只是讀取速度,直到dd完成后系統(tǒng)才開始真正往磁盤上寫數(shù)據(jù),但這個速度你是看不到了。所以如果這個速度很快,沒有什么作用。

  實際運行結(jié)果:

  268435456 bytes (268 MB) copied, 1.3529 seconds, 198 MB/s

  2.dd bs=64k count=4k if=/dev/zero of=test; sync

  和前面1中的完全一樣。分號隔開的只是先后兩個獨立的命令。當(dāng)sync命令準(zhǔn)備開始往磁盤上真正寫入數(shù)據(jù)的時候,前面dd命令已經(jīng)把錯誤的“寫入速度”值顯示在屏幕上了。所以你還是得不到真正的寫入速度。

  實際運行結(jié)果:

  268435456 bytes (268 MB) copied, 0.522815 seconds, 513 MB/s

  3.dd bs=64k count=4k if=/dev/zero of=test conv=fdatasync

  加入這個參數(shù)后,dd命令執(zhí)行到最后會真正執(zhí)行一次“同步(sync)”操作,所以這時候你得到的是讀取這128M數(shù)據(jù)到內(nèi)存并寫入到磁盤上所需的時間,這樣算出來的時間才是比較符合實際使用結(jié)果的。

  實際運行結(jié)果:

  268435456 bytes (268 MB) copied, 2.8046 seconds, 95.7 MB/s

  4.dd bs=64k count=4k if=/dev/zero of=test oflag=dsync

  加入這個參數(shù)后,dd在執(zhí)行時每次都會進行同步寫入操作。也就是說,這條命令每次讀取64k后就要先把這64k寫入磁盤,然后再讀取下面這64k,一共重復(fù)128次。這可能是最慢的一種方式了,因為基本上沒有用到寫緩存(write cache)。

  實際運行結(jié)果:

  268435456 bytes (268 MB) copied, 3.40069 seconds, 78.9 MB/s

  一般來說,第四種方法是最嚴(yán)格的,可以模擬數(shù)據(jù)庫的插入操作,所以很慢,也是用來測試vps硬盤性能標(biāo)準(zhǔn)的一條標(biāo)桿,一般來說測試結(jié)果,如果超過10M,對正常建站就無影響。超過50M,就是非常給力狀態(tài),看了這個vps硬盤性能非常的好,DD速度達到了78.9MB/s。

  在這幾條命令中,bs=64k表示同時讀入/輸出的塊大小為64k個字節(jié),count=4k表示拷貝塊的個數(shù)為4000個,如果測試再嚴(yán)格一點,我們運行1G數(shù)據(jù)量的DD:

  dd if=/dev/zero of=test bs=64k count=16k oflag=dsync

  表示每個塊大小為64k個字節(jié),測試16k個數(shù)量的塊,實際測試結(jié)果:

  1073741824 bytes (1.1 GB) copied, 18.9098 seconds, 56.8 MB/s

  以上就是使用DD命令測試Linux磁盤的性能的方法了,其實這個方法的原理還是使用DD命令的復(fù)制功能,通過文件轉(zhuǎn)移的速度來測試磁盤的讀寫頻率。

標(biāo)簽 磁盤測試

發(fā)表評論

0

沒有更多評論了

評論就這些咯,讓大家也知道你的獨特見解

立即評論

以上留言僅代表用戶個人觀點,不代表系統(tǒng)之家立場

其他版本軟件

熱門教程

人氣教程排行

Linux系統(tǒng)推薦

掃碼關(guān)注
掃碼關(guān)注

掃碼關(guān)注 官方交流群 軟件收錄