linux磁碟讀寫測試

2021-08-11 13:20:34 字數 1361 閱讀 5014

time+dd 測磁碟讀寫速度

1、先熟悉兩個特殊的裝置及一些相關引數:

1) time有計時作用,dd用於複製,從if讀出,寫到of;

2) if=/dev/zero(產生字元)不產生io,因此可以用來測試純寫速度;

3) 同理of=/dev/null(**站、無底洞)不產生io,可以用來測試純讀速度;

4) 將/tmp/test拷貝到/var則同時測試了讀寫速度;

5) bs是每次讀或寫的大小,即乙個塊的大小,count是讀寫塊的數量。

當寫入到驅動盤的時候,我們簡單的從無窮無用位元組的源 /dev/zero 讀取,當從驅動盤讀取的時候,我們讀取的是剛才的檔案,並把輸出結果傳送到無用的 /dev/null。在整個操作過程中, dd 命令會跟蹤資料傳輸的速度並且報告出結果。

2、測試磁碟寫能力

time dd if=/dev/zero of=/testw.dbf bs=4k count=100000

因為/dev//zero是乙個偽裝置,它只產生空字元流,對它不會產生io,所以,io都會集中在of檔案中,of檔案只用於寫,所以這個命令相當於測試磁碟的寫能力。命令結尾新增oflag=direct將跳過記憶體快取,新增oflag=sync將跳過hdd快取。

3、測試磁碟讀能力

time dd if=/dev/sdb of=/dev/null bs=4k

因為/dev/sdb是乙個物理分割槽,對它的讀取會產生io,/dev/null是偽裝置,相當於黑洞,of到該裝置不會產生io,所以,這個命令的io只發生在/dev/sdb上,也相當於測試磁碟的讀能力。(ctrl+c終止測試)

4、測試同時讀寫能力

time dd if=/dev/sdb of=/testrw.dbf bs=4k

在這個命令下,乙個是物理分割槽,乙個是實際的檔案,對它們的讀寫都會產生io(對/dev/sdb是讀,對/testrw.dbf是寫),假設它們都在乙個磁碟中,這個命令就相當於測試磁碟的同時讀寫能力。

5、測試純寫入效能

dd if=/dev/zero of=test bs=8k count=10000 oflag=direct

6、測試純讀取效能

dd if=test of=/dev/null bs=8k count=10000 iflag=direct

示例:dd if=/dev/zero of=./largefile bs=1m count=1024   測寫

sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"  先清快取(可不執行,但別和下面一起執行)

dd if=./largefile of=/dev/null bs=4k                                       測試讀取剛才的檔案

測試磁碟讀寫效能

讀效能測試 time dd iflag direct,nonblock if dev sda2 of dev null bs 8k count 8388608 因為 dev sda2是乙個物理分割槽,對它的讀取會產生io,dev null是偽裝置,相當於黑洞,of到該裝置不會產生io,所以,這個命令...

dd命令測試linux磁碟讀寫速度

1 先熟悉兩個特殊的裝置 1 dev null 站 無底洞。2 dev zero 產生字元。2 測試磁碟寫能力 time dd if dev zero of testw.dbf bs 4k count 100000 因為 dev zero是乙個偽裝置,它只產生空字元流,對它不會產生io,所以,io都...

linux下測試磁碟的讀寫IO速度

有時候我們在做維護的時候,總會遇到類似於io特別高,但不能判定是io瓶頸還是軟體引數設定不當導致熱盤的問題.這時候通常希望能知道磁碟的讀寫速度,來進行下一步的決策.下面是兩種測試方法 1 使用hdparm命令 這是乙個是用來獲取ata ide硬碟的引數的命令,是由早期linux ide驅動的開發和維...