我当前为虚拟机环境,部分物理硬件信息会被虚拟化层屏蔽,无法完全展示。
readonly=0:磁盘不是只读;readahead(on)预读功能开启,最后是磁盘容量。
作用:快速查看磁盘型号、读写缓存状态、支持的io模式等基本信息。
2. 查看磁盘详细硬件参数
备注:图片是虚拟机环境,真实环境和这有区别。
#部分机器hdparm显示的不全,可以使用lsblk命令lsblk -o NAME,TYPE,SIZE,VENDOR,MODEL,SERIAL
作用:这是硬件验真与信息核验的终极命令。主要需要关心:
rotation rate:显示hdd转速(如 7200 RPM)或ssd,虚拟机此处永远不识别SSD,仅物理机生效
model number、cache/buffer size:核对是否与采购配置一致。
nominal media rotation rate:明确标识固态盘。
接口速率、支持的高级特性等。
3. 测试磁盘读取速度(定位性能瓶颈)
作用:测试磁盘真实顺序读取速度。机械硬盘通常在100-200 MB/s,sata ssd 可达500 MB/s 以上。数值远低于理论值,则可能遇到硬件瓶颈。
4. 分层测试:区分磁盘与缓存问题
作用:性能分层定位的关键。
-T:测试系统缓存读取速度(内存 -> CPU)。
-t:测试磁盘物理读取速度(磁盘 -> 内存)。
诊断逻辑:如果 -T正常而 -t极低,问题在磁盘;若两者都低,需查系统配置或总线。
通过dd命令也可以通过虚拟机测试宿主机的硬盘是机械盘还是固态硬盘。
dd if=/dev/sdb of=/dev/null bs=1M count=500 iflag=direct
5. 查看磁盘读写缓存状态(虚拟机无效)
作用:查看磁盘读写缓存是否开启,开启状态 (-c1) 能显著提升小性能。
6. 基础安全优化(针对老旧设备)
hdparm -c1 /dev/sda#开启dma模式 (现代系统默认最优)hdparm -d1 /dev/sda
注意:这些优化对新型ssd效果有限,主要针对老式ide/sata机械盘。
场景1:业务卡顿,快速锁定IO瓶颈
现象:应用响应慢,top显示 %wa(io等待)高现象。
操作:立即执行 hdparm -tT /dev/sdX。
判断:若磁盘读取速度 (-t) 远低于该型号标准值,可快速将问题锚定在磁盘硬件,避免在应用层空耗时间。
场景2:新服务器验收,核对硬件配置
操作:登录新机,执行 hdparm -I /dev/sdX。
核对:对比输出中的型号、缓存大小、转速与采购合同,防范硬件采购出错。
场景3:老旧服务器优化,缓解io压力
操作:对性能要求不高的老旧服务器,执行 hdparm -c1 -d1 /dev/sdX。
效果:无需成本,小幅提升磁盘io效率,为老旧设备续命。
场景4:磁盘异常预判,规避数据风险
现象:磁盘频繁报错,文件系统异常。
操作:使用 hdparm -I查看,若关键参数(如转速、缓存)信息错乱或无法读取。
判断:很可能是磁盘物理故障前兆,立即备份,准备更换。
五、hdpram避坑警告