“ hdparm ”(即硬盘参数)是Linux的命令行程序之一,用于处理磁盘设备和硬盘。借助此命令,您可以获得有关硬盘,更改写入间隔,声学管理和DMA设置的统计信息。它还可以设置与驱动器高速缓存,睡眠模式,电源管理,声学管理和DMA设置相关的参数。
安装hdparm
[root@instance-z78bdmwa ~]# yum install hdparm -y L
句法:
hdparm [选项] [设备]
注意:如果未指定标志,则假定为acdgkmnru。
选项:
-a:用于获取/设置文件系统预读部分的枚举,该部分用于增强对大小文件的不间断读取的完成。
-A:它禁用/启用IDE驱动器的read-look-ahead属性,该属性通常在默认情况下正常运行。
-b:用于获取/设置总线状态,其中,(0 ==关,1 ==开,2 = =三态)。
-B:它用于设置高级电源管理(APM)特性,但仅限于驱动器可以承受它。如果它的值很低那么APM是暴力的,如果值很高那么它会给出更好的成就。要禁用APM,您需要将值设置为255。
-c:它查询/启用(E)IDE 32位I / O支持。这里,32位暗示通过PCI或VLB总线传输输入。
-C:用于检查正在进行的IDE电源模式位置。标志-S,-Y,-y和-Z用于以熟练的方式控制IDE电源技术。
-d:禁用或启用“DMA”驱动器使用的标志。它通过结合驱动器和PCI来运行。
-D:启用或禁用驱动器缺陷管理属性。
-E:设置SD / DVD驱动器速度。为了使其工作,您需要在选项之后分配速度编号。通常,使用的数量是两个或四个。
-f:用于在其插座上同步和清除设备的缓冲区高速缓存。该性能可以作为-t和-T时序的一部分执行。
-g:用于显示驱动器的配置,驱动器的扩展以及设备从驱动器起始点的起始偏移量。
-h:显示帮助信息并退出。
-i:这会显示在启动时从驱动器获取的识别数据。
-I:它直接从驱动器中搜索识别数据,它显示的功能比-i标志更多。
-k:这有助于获取/设置驱动器的keep_settings_over_reset标志。
-K:设置驱动器的keep_features_over_reset标志。并非所有驱动器都提供此功能。
-m:用于获取/设置驱动器上多个扇区I / O的扇区数。要禁用此功能,您需要将值设置为零。
-M:这有助于获取/设置自动声学管理(AAM)设置。此功能是实验性的,未经过有效测试,因此必须自行承担使用风险。
-n:用于获取/设置“ 忽略写错误 ”标志。如果不首先解码驱动程序的源代码,就不应该使用此功能。
-r:用于获取/设置设备的只读标志。设置此选项后,设备上不会批准写入操作。
-S:设置驱动器的待机超时。当该值设置为零时,它将关闭。
-T:它执行高速缓存读取的时序,用于标准和差异化目的。它在没有访问磁盘的情况下直接从Linux缓存的缓冲区中读取读取速度,您需要执行此操作两到三次以获得更好的结果。
-t:这与-T标志具有相同的目的,除了它在没有任何先前的输入缓存的情况下揭示通过缓冲区高速缓存读取到磁盘的速度。如果此处也定义了-T标志,则在-T操作时出现的结果中将包括在-T后果上完成的整流。
-u:当值设置为1时,它用于获取/设置驱动器的中断 - 取消屏蔽标志,然后驱动程序可以取消屏蔽磁盘中断处理中发生的其他干预。此属性可能导致巨大的文件系统损坏,因此使用风险自负。
-v:这会显示除-i之外的所有设置。
-w:它有助于设备重置。
-W:它禁用/启用IDE驱动器的写入缓存特性。
-y:它强制IDE驱动器立即进入低功耗待机模式,通常会导致它停止运转。可以使用-C标志检查当前的电源模式状态。
-Y:这会使IDE加压以中断进入低功耗睡眠模式,以便完全关闭它,这里可以在-C标志的帮助下检测当前的电源模式状态。
-z:这会强制内核重新读取指定设备的分区表。
-Z:禁用自动节电功能。
例子:
用于显示硬盘驱动器信息的命令:这是显示硬盘驱动器详细信息的最重要功能之一,您需要在此处使用-I选项和硬盘驱动器。
[root@baremetal-2-113 ~]# hdparm -I /dev/vda
/dev/sda:
SG_IO: bad/missing sense data, sb[]: 70 00 05 00 00 00 00 0d 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ATA device, with non-removable media
Standards:
Likely used: 1
Configuration:
Logical max current
cylinders 0 0
heads 0 0
sectors/track 0 0
--
Logical/Physical Sector size: 512 bytes
device size with M = 1024*1024: 0 MBytes
device size with M = 1000*1000: 0 MBytes
cache/buffer size = unknown
Capabilities:
IORDY not likely
Cannot perform double-word IO
R/W multiple sector transfer: not supported
DMA: not supported
PIO: pio0
用于显示所有选项的命令:
[root@instance-z78bdmwa ~]# hdparm -h
hdparm - get/set hard disk parameters - version v9.43, by Mark Lord.
Usage: hdparm [options] [device ...]
Options:
-a Get/set fs readahead
-A Get/set the drive look-ahead flag (0/1)
-b Get/set bus state (0 == off, 1 == on, 2 == tristate)
-B Set Advanced Power Management setting (1-255)
-c Get/set IDE 32-bit IO setting
-C Check drive power mode status
-d Get/set using_dma flag
-D Enable/disable drive defect management
-E Set cd/dvd drive speed
-f Flush buffer cache for device on exit
-F Flush drive write cache
-g Display drive geometry
-h Display terse usage information
-H Read temperature from drive (Hitachi only)
-i Display drive identification
-I Detailed/current information directly from drive
-J Get/set Western DIgital "Idle3" timeout for a WDC "Green" drive (DANGEROUS)
-k Get/set keep_settings_over_reset flag (0/1)
-K Set drive keep_features_over_reset flag (0/1)
-L Set drive doorlock (0/1) (removable harddisks only)
-m Get/set multiple sector count
-M Get/set acoustic management (0-254, 128: quiet, 254: fast)
-n Get/set ignore-write-errors flag (0/1)
-N Get/set max visible number of sectors (HPA) (VERY DANGEROUS)
-p Set PIO mode on IDE interface chipset (0,1,2,3,4,...)
-P Set drive prefetch count
-q Change next setting quietly
-Q Get/set DMA queue_depth (if supported)
-r Get/set device readonly flag (DANGEROUS to set)
-R Get/set device write-read-verify flag
-s Set power-up in standby flag (0/1) (DANGEROUS)
-S Set standby (spindown) timeout
-t Perform device read timings
-T Perform cache read timings
-u Get/set unmaskirq flag (0/1)
-U Obsolete
-v Use defaults; same as -acdgkmur for IDE drives
-V Display program version and exit immediately
-w Perform device reset (DANGEROUS)
-W Get/set drive write-caching flag (0/1)
-x Obsolete
-X Set IDE xfer mode (DANGEROUS)
-y Put drive in standby mode
-Y Put drive to sleep
-z Re-read partition table
-Z Disable Seagate auto-powersaving mode
用于测试硬盘驱动器速度的命令:
[root@instance-z78bdmwa ~]# hdparm -t /dev/vda
/dev/vda:
Timing buffered disk reads: 374 MB in 3.01 seconds = 124.35 MB/sec
测量硬盘缓存读取速度的命令:
[root@instance-z78bdmwa ~]# hdparm -T /dev/vda
/dev/vda:
Timing cached reads: 16566 MB in 2.00 seconds = 8292.96 MB/sec
启用预读的命令:
[root@instance-z78bdmwa ~]# hdparm -A 1 /dev/vda
用于将驱动器切换到最低功耗管理的命令:
[root@instance-z78bdmwa ~]# hdparm -B 254 /dev/vda
获取当前设置的命令:
[root@instance-z78bdmwa ~]# hdparm -d /dev/vda
为设备设置DMA的命令:
[root@instance-z78bdmwa ~]# hdparm -d1 /dev/vda
通过降低磁盘性能来降低某些传统硬盘产生的噪音的命令:
[root@instance-z78bdmwa ~]# hdparm -M 128 /dev/vda
检测硬盘的电源管理模式:
[root@instance-z78bdmwa ~]# hdparm -C /dev/vda
查询并设置硬盘多重扇区存取的扇区数,以增进硬盘的存取效率:
[root@instance-z78bdmwa ~]# hdparm -m /dev/vda
附:硬盘坏道修复方法
检查:smartctl -l selftest /dev/vda
卸载:umount /dev/vda*
修复:badblocks /dev/vda
关于运维学习、分享、交流,笔者开通了微信公众号【运维猫】,感兴趣的朋友可以关注下,欢迎加入,建立属于我们自己的小圈子,一起学运维知识。