Skip to content

Latest commit

 

History

History
127 lines (99 loc) · 3.31 KB

File metadata and controls

127 lines (99 loc) · 3.31 KB
date 2022-05-13 16:54:58 +0800
author Rustle Karl
title hdparm 显示与设定硬盘的参数
url posts/linux/tools/tripartite/hdparm
tags
Linux
series
Linux 学习笔记
categories
学习笔记
toc true
draft false

显示与设定硬盘的参数,可用于硬盘读写测试

hdparm 命令 提供了一个命令行的接口用于读取和设置硬盘参数。

安装

apt install -y hdparm

# openwrt
opkg install hdparm

语法

hdparm(选项)(参数)

选项

-a<快取分区>: 设定读取文件时,预先存入块区的分区数,若不加上<快取分区>选项,则显示目前的设定;
-A<0或1>: 启动或关闭读取文件时的快取功能;
-c<I/O模式>: 设定IDE32位I/O模式;
-C: 检测IDE硬盘的电源管理模式;
-d<0或1>: 设定磁盘的DMA模式;
-f: 将内存缓冲区的数据写入硬盘,并清楚缓冲区;
-g: 显示硬盘的磁轨,磁头,磁区等参数;
-h: 显示帮助;
-i: 显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供;
-I: 直接读取硬盘所提供的硬件规格信息;
-k<0或1>: 重设硬盘时,保留-dmu参数的设定;
-K<0或1>: 重设硬盘时,保留-APSWXZ参数的设定;
-m<磁区数>: 设定硬盘多重分区存取的分区数;
-n<0或1>: 忽略硬盘写入时所发生的错误;
-p<PIO模式>: 设定硬盘的PIO模式;
-P<磁区数>: 设定硬盘内部快取的分区数;
-q: 在执行后续的参数时,不在屏幕上显示任何信息;
-r<0或1>: 设定硬盘的读写模式;
-S<时间>: 设定硬盘进入省电模式前的等待时间;
-t: 评估硬盘的读取效率;
-T:  评估硬盘快取的读取效率;
-u<0或1>: 在硬盘存取时,允许其他中断要求同时执行;
-v: 显示硬盘的相关设定;
-w<0或1>: 设定硬盘的写入快取;
-X<传输模式>: 设定硬盘的传输模式;
-y: 使IDE硬盘进入省电模式;
-Y: 使IDE硬盘进入睡眠模式;
-Z: 关闭某些Seagate硬盘的自动省电功能。

参数

设备文件:指定 id 驱动对应的设备文件名。

示例

测试读取

hdparm -Tt /dev/sda

显示硬盘的相关设置

hdparm /dev/sda
/dev/sda:
IO_support = 0 (default 16-bit)
readonly = 0 (off)
readahead = 256 (on)
geometry = 19457[柱面数]/255[磁头数]/63[扇区数], sectors = 312581808[总扇区数], start = 0[起始扇区数]

显示硬盘的柱面、磁头、扇区数

hdparm -g /dev/sda
/dev/sda:
geometry = 19457[柱面数]/255[磁头数]/63[扇区数], sectors = 312581808[总扇区数], start = 0[起始扇区数]

测试硬盘的读取速度

hdparm -T /dev/sda
/dev/sda:
 Timing cached reads:   4684 MB in  2.00 seconds = 2342.92 MB/sec

测试硬盘缓存的读取速度

hdparm -T /dev/xvda
/dev/xvda:
Timing cached reads: 11154 MB in 1.98 seconds = 5633.44 MB/sec

检测硬盘的电源管理模式

hdparm -C /dev/sda
/dev/sda:
drive state is: standby [省电模式]

查询并设置硬盘多重扇区存取的扇区数,以增进硬盘的存取效率

hdparm -m /dev/sda
hdparm -m    #参数值为整数值如8 /dev/sda