>Linux服務器裝好系統之後,想要知道硬盤的讀寫是否能滿足服務的需要,如果不滿足硬盤的IO就是服務的一個瓶頸。所以我們需要測試硬盤的讀寫速度,測試的方法很多,下面是使用Linux 自帶的dd命令測試硬盤的讀寫速度。
time有計時作用,dd用於複製,從if讀出,寫到of。if=/dev/zero不產生IO,因此可以用來測試純寫速度。同理of=/dev/null不產生IO,可以用來測試純讀速度。bs是每次讀或寫的大小,即一個塊的大小,count是讀寫塊的數量。
測/data目錄所在磁盤的純寫速度:
[root@nagios ~]# time dd if=/dev/zero of=/var/test bs=8k count=1000000
1000000+0 records in
1000000+0 records out
8192000000 bytes (8.2 GB) copied, 52.5749 seconds, 156 MB/s
real 0m55.841s
user 0m0.507s
sys 0m15.706s
##紅色部分是因爲使用了time命令才顯示的,因此需要time命令來計算複製的時間。
測/data目錄所在磁盤的純讀速度:
[root@nagios ~]# time dd if=/var/test of=/dev/null bs=8k count=1000000
1000000+0 records in
1000000+0 records out
8192000000 bytes (8.2 GB) copied, 49.0088 seconds, 167 MB/s
real 0m49.025s
user 0m0.559s
sys 0m6.383s
測讀寫速度:
[root@nagios ~]# time dd if=/var/test of=/tmp/test bs=8k count=1000000
125000+0 records in
125000+0 records out
8192000000 bytes (8.2 GB) copied, 129.239 seconds, 63.4 MB/s
real 2m9.251s
user 0m0.114s
sys 0m21.494s
看來這個測試結果還不錯,嘿嘿
備註:理論上測試複製量越大測試結果越準確。
正常測試的時候可能不止測試一邊,可能會需要很多遍求取平均值,這個測試結果在普通的重定向是沒有效果的 之後 google 了一下 用下面的方式重定向到一個文件
dd if=/dev/zero of=/var/test bs=8k count=1000000 2>> info
這樣測試的結果就到info文件裏面了
hdparm 測試硬盤讀寫速度
安裝:yum install hdparm
語 法:hdparm [-CfghiIqtTvyYZ][-a <快取分區>][-A < 0 或 1 >][-c <I/O模式>][-d < 0 或 1 >][-k < 0 或 1 >][-K < 0 或 1 >][-m
<分區數>][-n < 0 或 1 >][-p <PIO模式>][-P <分區數>][-r < 0 或 1 >][-S <時間>][-u < 0 或 1 >][-W < 0 或 1 >][-X
<傳輸模式>][設備] |
補充說明:hdparm可檢測,顯示與設定IDE或SCSI硬盤的參數。 |
-a<快取分區> 設定讀取文件時,預先存入塊區的分區數,若不加上<快取分區>選項,則顯示目前的設定。 |
-i 顯示硬盤的硬件規格信息,這些信息是在開機時由硬盤本身所提供。 |
-k< 0 或 1 > 重設硬盤時,保留-dmu參數的設定。 |
-K< 0 或 1 > 重設硬盤時,保留-APSWXZ參數的設定。 |
-q 在執行後續的參數時,不在屏幕上顯示任何信息。 |
-u< 0 或 1 > 在硬盤存取時,允許其他中斷要求同時執行。 |
測試硬盤的讀取速度:
普通磁盤測試:
Timing buffered disk reads: 316 MB in 3.02 seconds = 104.71 MB/sec |
Timing cached reads: 19328 MB in 1.99 seconds = 9691.24 MB/sec |
RAID0測試(兩塊盤):
Timing buffered disk reads: 622 MB in 3.01 seconds = 206.89 MB/sec |
Timing cached reads: 19632 MB in 1.99 seconds = 9844.20 MB/sec |
RAID0測試(三塊盤):
Timing buffered disk reads: 846 MB in 3.00 seconds = 281.54 MB/sec |
Timing cached reads: 18412 MB in 1.99 seconds = 9229.67 MB/sec |
RAID0測試(四塊盤)
Timing cached reads: 19608 MB in 1.99 seconds = 9832.76 MB/sec |
Timing buffered disk reads: 860 MB in 3.00 seconds = 286.35 MB/sec |
另外ARID卡測試速度後,每次會警告:
HDIO_DRIVE_CMD( null ) (wait for flush complete) failed: Inappropriate ioctl for device |
參考測試速度方法:time cp -a data2 data2