日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux 磁盘I/O读写速度检测

發布時間:2025/3/21 linux 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux 磁盘I/O读写速度检测 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

生猛干貨

從系統安裝到程序員必備的Linux技能,還原真實工作場景,手把手帶你實戰演練


概述

讀取速度可以使用命令:hdparm –t 設備名(/dev/sda1)

寫入速度使用命令:time dd if=/dev/zero of=/tmp/test.dat bs=1G count=1


測試磁盤的讀寫IO速度

有時候我們在做維護的時候,總會遇到類似于IO特別高,但不能判定是IO瓶頸還是軟件參數設置不當導致熱盤的問題.這時候通常希望能知道磁盤的讀寫速度,來進行下一步的決策.

下面是兩種測試方法:

(1)使用hdparm命令

這是一個是用來獲取ATA/IDE硬盤的參數的命令,是由早期Linux IDE驅動的開發和維護人員 Mark Lord開發編寫的( hdparm has been written by Mark Lord mlord@pobox.com, the primary developer and maintainer of the (E)IDE driver for Linux, with suggestions from many netfolk).該命令應該也是僅用于Linux系統,對于UNIX系統,ATA/IDE硬盤用的可能比較少,一般大型的系統都是使用磁盤陣列的.

使用方法很簡單

[root@entel2 ~]# hdparm -Tt /dev/mapper/vg00-lvhome/dev/mapper/vg00-lvhome:Timing cached reads: 16690 MB in 2.00 seconds = 8357.37 MB/secTiming buffered disk reads: 352 MB in 3.02 seconds = 116.72 MB/sec [root@entel2 ~]# hdparm -Tt /dev/mapper/vg00-lvhomehdparm -Tt /dev/mapper/vg00-lvhome

(2)使用dd命令

這不是一個專業的測試工具,不過如果對于測試結果的要求不是很苛刻的話,平時可以使用來對磁盤的讀寫速度作一個簡單的評估.

另外由于這是一個免費軟件,基本上×NIX系統上都有安裝,對于Oracle裸設備的復制遷移,dd工具一般都是首選.

在使用前首先了解兩個特殊設備

  • /dev/null 偽設備,回收站.寫該文件不會產生IO
  • /dev/zero 偽設備,會產生空字符流,對它不會產生IO

磁盤的IO寫速度:

# time dd if=/dev/zero of=/var/test bs=2k count=1000000

測試磁盤的IO讀速度:

# time dd if=/var/test of=/dev/null bs=2k

測試IO同時讀和寫的速度

# time dd if=/dev/sda1 of=test.dbf bs=8k

命令詳解:

  • time用于計時
  • dd用于復制,從if讀出,寫到of。
  • if=/dev/zero不產生IO,因此可以用來測試純寫速度;同理of=/dev/null不產生IO,可以用來測試純讀速度。
  • bs是每次讀或寫的大小,即一個塊的大小,count是讀寫塊的數量,相乘就是讀寫數據量大小。

數據量越大越準確,多次測試取平均值。

[root@entel2 ~]# time dd if=/dev/zero of=/var/test bs=2k count=1000000 1000000+0 records in 1000000+0 records out 2048000000 bytes (2.0 GB) copied, 3.89646 s, 526 MB/sreal 0m3.910s user 0m0.122s sys 0m3.396s [root@entel2 ~]# time dd if=/var/test of=/dev/null bs=2k 1000000+0 records in 1000000+0 records out 2048000000 bytes (2.0 GB) copied, 0.92143 s, 2.2 GB/sreal 0m0.923s user 0m0.058s sys 0m0.864s[root@entel2 ~]# time dd if=/dev/sda1 of=test.dbf bs=8k 131072+0 records in 131072+0 records out 1073741824 bytes (1.1 GB) copied, 9.50776 s, 113 MB/sreal 0m9.509s user 0m0.038s sys 0m3.775s [root@entel2 ~]#

上面測試的數據量比較小,僅作為參考.

相比兩種方法:
前者是linux上專業的測試IDE/ATA磁盤的工具,但是使用范圍有局限性;(此試驗僅僅使用了測試磁盤IO的參數,對于其他參數及解釋參考man手冊)
后者可以通用,但不夠專業,也沒有考慮到緩存和物理讀的區分,測試的數據也是僅作參考,不能算是權威.s


搞定Linux核心技術

總結

以上是生活随笔為你收集整理的Linux 磁盘I/O读写速度检测的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。