hdparm (linux parancs)

Tartalom

 

Adatok

Licenc: 
Verziószám: 9.51
Fejlesztő/tulajdonos: Mark Lord

Rövid leírás:

A hdparm linux parancs manual oldala és súgója. A parancs segítségével kiolvashatjuk vagy írhatjuk a SATA/IDE merevlemezek paramétereit.

 

 

Man oldal kimenet

man hdparm
HDPARM(8)                       System Manager's Manual                       HDPARM(8)

NAME
       hdparm - get/set SATA/IDE device parameters

SYNOPSIS
       hdparm [options] [device ...]

DESCRIPTION
       hdparm  provides a command line interface to various kernel interfaces supported
       by the Linux SATA/PATA/SAS "libata" subsystem and the older IDE  driver  subsys‐
       tem.   Many  newer  (2008 and later) USB drive enclosures now also support "SAT"
       (SCSI-ATA Command Translation) and therefore may also work  with  hdparm.   E.g.
       recent  WD  "Passport" models and recent NexStar-3 enclosures.  Some options may
       work correctly only with the latest kernels.

OPTIONS
       When no options are given, -acdgkmur is assumed.  For "Get/set" options, a query
       without  the optional parameter (e.g. -d) will query (get) the device state, and
       with a parameter (e.g., -d0) will set the device state.

       -a     Get/set sector count for filesystem (software) read-ahead.  This is  used
              to improve performance in sequential reads of large files, by prefetching
              additional blocks in anticipation of them being  needed  by  the  running
              task.  Many IDE drives also have a separate built-in read-ahead function,
              which augments this filesystem (software) read-ahead function.

       -A     Get/set the IDE drive´s read-lookahead feature (usually ON  by  default).
              Usage: -A0 (disable) or -A1 (enable).

       -b     Get/set bus state.

       -B     Get/set  Advanced  Power  Management feature, if the drive supports it. A
              low value means aggressive power management and a high value means better
              performance.   Possible  settings  range from values 1 through 127 (which
              permit spin-down), and values 128 through 254 (which do not permit  spin-
              down).  The highest degree of power management is attained with a setting
              of 1, and the highest I/O performance with a setting of 254.  A value  of
              255  tells  hdparm to disable Advanced Power Management altogether on the
              drive (not all drives support disabling it, but most do).

       -c     Get/set (E)IDE 32-bit I/O support.  A numeric parameter can  be  used  to
              enable/disable  32-bit I/O support.  Currently supported values include 0
              to disable 32-bit I/O support, 1 to enable 32-bit data transfers,  and  3
              to  enable 32-bit data transfers with a special sync sequence required by
              many chipsets.  The value 3 works with nearly all  32-bit  IDE  chipsets,
              but  incurs  slightly  more  overhead.  Note that "32-bit" refers to data
              transfers across a PCI or VLB bus to the interface card only; all  (E)IDE
              drives still have only a 16-bit connection over the ribbon cable from the
              interface card.

       -C     Check the current IDE power mode status, which  will  always  be  one  of
              unknown (drive does not support this command), active/idle (normal opera‐
              tion), standby (low power mode, drive has spun down), or sleeping (lowest
              power  mode,  drive  is  completely  shut  down).  The -S, -y, -Y, and -Z
              options can be used to manipulate the IDE power modes.

       -d     Get/set the "using_dma" flag for this drive.  This option now works  with
              most  combinations  of  drives  and  PCI interfaces which support DMA and
              which are known to the kernel IDE driver.  It is also a good idea to  use
              the  appropriate  -X  option  in  combination with -d1 to ensure that the
              drive itself is programmed for the correct DMA mode, although most  BIOSs
              should  do  this for you at boot time.  Using DMA nearly always gives the
              best performance, with fast I/O throughput and low CPU usage.  But  there
              are  at  least  a few configurations of chipsets and drives for which DMA
              does not make much of a difference, or may  even  slow  things  down  (on
              really messed up hardware!).  Your mileage may vary.

       --dco-freeze
              DCO  stands for Device Configuration Overlay, a way for vendors to selec‐
              tively disable certain features of a drive.  The --dco-freeze option will
              freeze/lock  the current drive configuration, thereby preventing software
              (or malware) from changing any DCO settings until after the next power-on
              reset.

       --dco-identify
              Query  and  dump information regarding drive configuration settings which
              can be disabled by the vendor or  OEM  installer.   These  settings  show
              capabilities  of  the  drive  which  might  be disabled by the vendor for
              "enhanced compatibility".  When disabled, they are otherwise  hidden  and
              will  not  show  in  the -I identify output.  For example, system vendors
              sometimes disable 48_bit addressing on large  drives,  for  compatibility
              (and  loss of capacity) with a specific BIOS.  In such cases, --dco-iden‐
              tify will show that the drive is 48_bit capable, but -I will not show it,
              and nor will the drive accept 48_bit commands.

       --dco-restore
              Reset  all  drive  settings,  features, and accessible capacities back to
              factory defaults and full capabilities.  This command will fail if DCO is
              frozen/locked,  or  if  a -Np maximum size restriction has also been set.
              This is EXTREMELY DANGEROUS and will very likely cause  massive  loss  of
              data.  DO NOT USE THIS COMMAND.

       --direct
              Use  the kernel´s "O_DIRECT" flag when performing a -t timing test.  This
              bypasses the page cache, causing the reads to go directly from the  drive
              into  hdparm's  buffers,  using so-called "raw" I/O.  In many cases, this
              can produce results that appear much faster than  the  usual  page  cache
              method, giving a better indication of raw device and driver performance.

       --drq-hsm-error
              VERY  DANGEROUS,  DON'T  EVEN  THINK  ABOUT USING IT.  This option causes
              hdparm to issue an IDENTIFY command to the kernel, but incorrectly marked
              as  a  "non-data" command.  This results in the drive being left with its
              DataReQust(DRQ) line "stuck" high.  This confuses the kernel drivers, and
              may  crash  the  system  immediately  with massive data loss.  The option
              exists to help in testing and fortifying the kernel against similar real-
              world drive malfunctions.  VERY DANGEROUS, DO NOT USE!!

       -D     Enable/disable  the on-drive defect management feature, whereby the drive
              firmware tries to automatically manage defective  sectors  by  relocating
              them  to  "spare"  sectors  reserved by the factory for such.  Control of
              this feature via the -D option is not supported for  most  modern  drives
              since ATA-4; thus this command may fail.

       -E     Set  cd/dvd drive speed.  This is NOT necessary for regular operation, as
              the drive will automatically switch speeds on its own.  But if  you  want
              to  play  with it, just supply a speed number after the option, usually a
              number like 2 or 4.  This can be useful in some cases, though, to  smooth
              out DVD video playback.

       -f     Sync  and  flush the buffer cache for the device on exit.  This operation
              is also performed internally as part of the -t and -T timings  and  other
              options.

       --fallocate
              This  option currently works only on ext4 and xfs filesystem types.  When
              used, this must be the only option given.  It  requires  two  parameters:
              the  desired  file  size in kilo-bytes (byte count divided by 1024), fol‐
              lowed by the pathname for the new file.  It will create a new file of the
              specified  size,  but  without  actually  having to write any data to the
              file.  This will normally complete very quickly,  and  without  thrashing
              the storage device.

              E.g. Create a 10KByte file: hdparm --fallocate 10 temp_file

       --fibmap
              When  used,  this must be the only option given.  It requires a file path
              as a parameter, and will print out a list of the  block  extents  (sector
              ranges) occupied by that file on disk.  Sector numbers are given as abso‐
              lute LBA numbers, referenced from sector 0 of the physical device  rather
              than from the partition or filesystem.  This information can then be used
              for a variety of purposes, such as examining the degree  of  fragmenation
              of  larger files, or determining appropriate sectors to deliberately cor‐
              rupt during fault-injection testing procedures.

              This option uses the new FIEMAP (file extent map) ioctl() when available,
              and  falls  back  to the older FIBMAP (file block map) ioctl() otherwise.
              Note that FIBMAP suffers from a 32-bit block-number interface,  and  thus
              not work beyond 8TB or 16TB.  FIBMAP is also very slow, and does not deal
              well with  preallocated  uncommitted  extents  in  ext4/xfs  filesystems,
              unless a sync() is done before using this option.

       --fwdownload
              When used, this should be the only option given.  It requires a file path
              immediately after the option, indicating where  the  new  drive  firmware
              should be read from.  The contents of this file will be sent to the drive
              using the (S)ATA DOWNLOAD MICROCODE command, using either transfer proto‐
              col  7 (entire file at once), or, if the drive supports it, transfer pro‐
              tocol 3 (segmented download).  This command is  EXTREMELY  DANGEROUS  and
              could  destroy  both  the drive and all data on it.  DO NOT USE THIS COM‐
              MAND.  The --fwdownload-mode3 , --fwdownload-mode3-max  ,  and  --fwdown‐
              load-mode7  variations  on  basic --fwdownload allow overriding automatic
              protocol detection in favour of forcing hdparm to use a specific transfer
              protocol, for testing purposes only.

       -F     Flush  the  on-drive  write  cache buffer (older drives may not implement
              this).

       -g     Display the drive geometry (cylinders, heads, sectors), the size (in sec‐
              tors)  of  the device, and the starting offset (in sectors) of the device
              from the beginning of the drive.

       -h     Display terse usage information (help).

       -H     Read the temperature from some (mostly Hitachi) drives.  Also reports  if
              the  temperature  is  within  operating  condition range (this may not be
              reliable). Does not cause the drive to spin up if idle.

       -i     Display the identification info which the kernel  drivers  (IDE,  libata)
              have  stored from boot/configuration time.  This may differ from the cur‐
              rent information obtainable directly from the drive itself  with  the  -I
              option.  The data returned may or may not be current, depending on activ‐
              ity since booting the system.  For a more detailed interpretation of  the
              identification  info,  refer  to AT Attachment Interface for Disk Drives,
              ANSI ASC X3T9.2 working draft, revision 4a, April 19/93, and  later  edi‐
              tions.

       --idle-immediate
              Issue  an ATA IDLE_IMMEDIATE command, to put the drive into a lower power
              state.  Usually the device remains spun-up.

       --idle-unload
              Issue an ATA IDLE_IMMEDIATE_WITH_UNLOAD command, to unload  or  park  the
              heads  and  put  the  drive into a lower power state.  Usually the device
              remains spun-up.

       -I     Request identification info directly from the drive, which  is  displayed
              in  a  new  expanded  format  with considerably more detail than with the
              older -i option.

       --Istdin
              This is a special variation on the -I option, which accepts a drive iden‐
              tification block as standard input instead of using a /dev/hd* parameter.
              The format of this block must be exactly the same as that  found  in  the
              /proc/ide/*/hd*/identify  "files",  or  that  produced  by  the --Istdout
              option described below.  This variation is designed  for  use  with  col‐
              lected  "libraries"  of drive identification information, and can also be
              used on ATAPI drives which may give media errors with the standard mecha‐
              nism.  When --Istdin is used, it must be the *only* parameter given.

       --Istdout
              This option dumps the drive's identify data in hex to stdout, in a format
              similar to that from /proc/ide/*/identify, and  suitable  for  later  use
              with the --Istdin option.

       -J     Get/set  the  Western  Digital  (WD) Green Drive's "idle3" timeout value.
              This timeout controls how often the drive parks its heads  and  enters  a
              low  power  consumption state.  The factory default is eight (8) seconds,
              which is a very poor choice for  use  with  Linux.   Leaving  it  at  the
              default  will  result in hundreds of thousands of head load/unload cycles
              in a very short period of time.  The drive mechanism is  only  rated  for
              300,000 to 1,000,000 cycles, so leaving it at the default could result in
              premature failure, not to mention the performance  impact  of  the  drive
              often having to wake-up before doing routine I/O.

              WD  supply  a  WDIDLE3.EXE DOS utility for tweaking this setting, and you
              should use that program instead  of  hdparm  if  at  all  possible.   The
              reverse-engineered  implementation  in  hdparm  is not as complete as the
              original official program, even though it does seem to work on at a least
              a  few  drives.  A full power cycle is required for any change in setting
              to take effect, regardless of which program is used to tweak things.

              A setting of 30 seconds is recommended for Linux use.   Permitted  values
              are  from 8 to 12 seconds, and from 30 to 300 seconds in 30-second incre‐
              ments.  Specify a value of zero (0) to disable the WD  idle3  timer  com‐
              pletely (NOT RECOMMENDED!).

       -k     Get/set  the  "keep_settings_over_reset"  flag  for the drive.  When this
              flag is set, the drive will preserve the -dmu settings over a soft reset,
              (as  done  during  the error recovery sequence).  This option defaults to
              off, to prevent drive reset loops which could be caused  by  combinations
              of  -dmu  settings.  The -k option should therefore only be set after one
              has achieved confidence in correct system operation with a chosen set  of
              configuration  settings.  In practice, all that is typically necessary to
              test a configuration (prior to using -k) is to verify that the drive  can
              be  read/written,  and that no error logs (kernel messages) are generated
              in the process (look in /var/log/messages on most systems).

       -K     Set the drive´s "keep_features_over_reset" flag.   Setting  this  enables
              the  drive  to retain the settings for -APSWXZ over a soft reset (as done
              during the error recovery sequence).  Not all drives  support  this  fea‐
              ture.

       -L     Set  the  drive´s  doorlock  flag.   Setting this to 1 will lock the door
              mechanism of some removable hard drives (e.g. Syquest, ZIP, Jazz..),  and
              setting  it  to  0 will unlock the door mechanism.  Normally, Linux main‐
              tains the door locking mechanism automatically, depending on drive  usage
              (locked  whenever a filesystem is mounted).  But on system shutdown, this
              can be a nuisance if the root partition is on a removable disk, since the
              root  partition is left mounted (read-only) after shutdown.  So, by using
              this command to unlock the door after the root  filesystem  is  remounted
              read-only,  one  can then remove the cartridge from the drive after shut‐
              down.

       -m     Get/set sector count for multiple sector I/O on the drive.  A setting  of
              0 disables this feature.  Multiple sector mode (aka IDE Block Mode), is a
              feature of most modern IDE hard drives, permitting the transfer of multi‐
              ple  sectors  per  I/O  interrupt,  rather  than the usual one sector per
              interrupt.  When this feature is enabled, it typically reduces  operating
              system  overhead  for  disk I/O by 30-50%.  On many systems, it also pro‐
              vides increased data throughput of anywhere from 5% to 50%.  Some drives,
              however (most notably the WD Caviar series), seem to run slower with mul‐
              tiple mode enabled.  Your mileage may vary.  Most drives support the min‐
              imum  settings  of 2, 4, 8, or 16 (sectors).  Larger settings may also be
              possible, depending on the drive.  A setting of 16 or 32 seems optimal on
              many  systems.   Western  Digital  recommends lower settings of 4 to 8 on
              many of their drives, due tiny (32kB)  drive  buffers  and  non-optimized
              buffering algorithms.  The -i option can be used to find the maximum set‐
              ting supported by an installed drive (look for MaxMultSect  in  the  out‐
              put).   Some drives claim to support multiple mode, but lose data at some
              settings.  Under rare circumstances, such failures can result in  massive
              filesystem corruption.

       --make-bad-sector
              Deliberately  create  a  bad  sector  (aka.  "media  error") on the disk.
              EXCEPTIONALLY DANGEROUS. DO NOT USE THIS OPTION!!  This can be useful for
              testing  of  device/RAID error recovery mechanisms.  The sector number is
              given as a (base10) parameter after the option.  Depending on the device,
              hdparm  will  choose  one of two possible ATA commands for corrupting the
              sector.  The WRITE_LONG works on most drives, but only up to  the  28-bit
              sector  boundary.   Some  very  recent  drives (2008) may support the new
              WRITE_UNCORRECTABLE_EXT command, which works for any  LBA48  sector.   If
              available,  hdparm  will  use  that  in  preference  to  WRITE_LONG.  The
              WRITE_UNCORRECTABLE_EXT command itself presents a choice of how  the  new
              bad  sector  should  behave.  By default, it will look like any other bad
              sector, and the drive may take some time to retry and fail on  subsequent
              READs  of the sector.  However, if a single letter f is prepended immedi‐
              ately in front of the first digit of the sector  number  parameter,  then
              hdparm  will  issue a "flagged" WRITE_UNCORRECTABLE_EXT, which causes the
              drive to merely flag the sector as bad  (rather  than  genuinely  corrupt
              it),  and  subsequent  READs  of the sector will fail immediately (rather
              than after several retries).  Note also that the  --repair-sector  option
              can  be used to restore (any) bad sectors when they are no longer needed,
              including sectors that were genuinely bad (the drive  will  likely  remap
              those to a fresh area on the media).

       -M     Get/set Automatic Acoustic Management (AAM) setting. Most modern harddisk
              drives have the ability to speed down the head movements to reduce  their
              noise output.  The possible values are between 0 and 254. 128 is the most
              quiet (and therefore slowest) setting and 254 the fastest (and  loudest).
              Some  drives  have  only two levels (quiet / fast), while others may have
              different levels between 128 and 254.  At the moment,  most  drives  only
              support  3  options,  off, quiet, and fast.  These have been assigned the
              values 0, 128, and 254 at present, respectively, but  integer  space  has
              been incorporated for future expansion, should this change.

       -n     Get  or  set  the  "ignore_write_errors" flag in the driver.  Do NOT play
              with this without grokking the driver source code first.

       -N     Get/set max visible number of sectors, also known as the  Host  Protected
              Area  setting.   Without  a  parameter,  -N displays the current setting,
              which is reported as two values: the first gives the current max  sectors
              setting,  and  the  second shows the native (real) hardware limit for the
              disk.  The difference between these two values indicates how many sectors
              of  the  disk are currently hidden from the operating system, in the form
              of a Host Protected Area (HPA).  This area is often used by computer mak‐
              ers to hold diagnostic software, and/or a copy of the originally provided
              operating system for recovery purposes.  Another possible use is to  hide
              the  true  capacity  of  a very large disk from a BIOS/system that cannot
              normally cope with drives of that size (eg.  most  current  {2010}  BIOSs
              cannot deal with drives larger than 2TB, so an HPA could be used to cause
              a 3TB drive to report itself as a 2TB drive).  To change the current  max
              (VERY  DANGEROUS,  DATA  LOSS IS EXTREMELY LIKELY), a new value should be
              provided (in base10) immediately following the -N option.  This value  is
              specified  as a count of sectors, rather than the "max sector address" of
              the drive.  Drives have the concept of  a  temporary  (volatile)  setting
              which  is  lost  on  the next hardware reset, as well as a more permanent
              (non-volatile) value which survives resets and power cycles.  By default,
              -N  affects  only the temporary (volatile) setting.  To change the perma‐
              nent (non-volatile) value, prepend  a  leading  p  character  immediately
              before the first digit of the value.  Drives are supposed to allow only a
              single permanent change per session.  A hardware reset (or  power  cycle)
              is required before another permanent -N operation can succeed.  Note that
              any attempt to set this value may fail if the disk is being  accessed  by
              other  software  at  the  same  time.   This is because setting the value
              requires a pair of back-to-back drive commands, but there is  no  way  to
              prevent  some  other command from being inserted between them by the ker‐
              nel.  So if it fails initially, just try again.  Kernel support for -N is
              buggy  for  many  adapter  types  across many kernel versions, in that an
              incorrect (too small) max size value is sometimes reported.   As  of  the
              2.6.27 kernel, this does finally seem to be working on most hardware.

       --offset
              Offsets  to  given number of GiB (1024*1024*1024) when performing -t tim‐
              ings of device reads.  Speed changes (about twice) along many  mechanical
              drives.  Usually the maximum is at the beginning, but not always.  Solid-
              state drives (SSDs) should show similar timings regardless of offset.

       -p     Attempt to reprogram the IDE interface  chipset  for  the  specified  PIO
              mode,  or  attempt  to auto-tune for the "best" PIO mode supported by the
              drive.  This feature is supported in the kernel for only  a  few  "known"
              chipsets,  and  even then the support is iffy at best.  Some IDE chipsets
              are unable to alter the PIO mode for a single drive, in which  case  this
              option  may  cause  the  PIO  mode  for  both drives to be set.  Many IDE
              chipsets support either fewer or more than the standard six (0 to 5)  PIO
              modes,  so the exact speed setting that is actually implemented will vary
              by chipset/driver sophistication.  Use with extreme caution!   This  fea‐
              ture includes zero protection for the unwary, and an unsuccessful outcome
              may result in severe filesystem corruption!

       -P     Set the maximum sector count for the drive´s internal prefetch mechanism.
              Not all drives support this feature, and it was dropped from the official
              spec as of ATA-4.

       --prefer-ata12
              When using the SAT  (SCSI  ATA  Translation)  protocol,  hdparm  normally
              prefers  to  use  the 16-byte command format whenever possible.  But some
              USB drive enclosures don't work correctly with  16-byte  commands.   This
              option  can  be  used  to force use of the smaller 12-byte command format
              with such drives.  hdparm will  still  revert  to  16-byte  commands  for
              things  that cannot be done with the 12-byte format (e.g. sector accesses
              beyond 28-bits).

       -q     Handle the next option quietly, suppressing normal output (but not  error
              messages).   This is useful for reducing screen clutter when running from
              system startup scripts.  Not applicable to the -i  or  -v  or  -t  or  -T
              options.

       -Q     Get  or  set  the device's command queue_depth, if supported by the hard‐
              ware.  This only works with 2.6.xx (or  later)  kernels,  and  only  with
              device  and  driver  combinations which support changing the queue_depth.
              For SATA disks, this is the Native Command Queuing (NCQ) queue depth.

       -r     Get/set read-only flag for the device.  When set, Linux  disallows  write
              operations on the device.

       -R     Get/set  Write-Read-Verify feature, if the drive supports it.  Usage: -R0
              (disable) or -R1 (enable).  This feature is intended to  have  the  drive
              firmware automatically read-back any data that is written by software, to
              verify that  the  data  was  successfully  written.   This  is  generally
              overkill, and can slow down disk writes by as much as a factor of two (or
              more).

       --read-sector
              Reads from the specified sector number, and dumps the contents in hex  to
              standard  output.   The  sector  number must be given (base10) after this
              option.  hdparm will issue a low-level  read  (completely  bypassing  the
              usual  block layer read/write mechanisms) for the specified sector.  This
              can be used to definitively check whether a given sector  is  bad  (media
              error)  or  not (doing so through the usual mechanisms can sometimes give
              false positives).

       --repair-sector
              This is an alias for the --write-sector option.  VERY DANGEROUS.

       -s     Enable/disable the power-on in  standby  feature,  if  supported  by  the
              drive.   VERY  DANGEROUS.   Do  not use unless you are absolutely certain
              that both the system BIOS (or firmware) and the operating  system  kernel
              (Linux >= 2.6.22) support probing for drives that use this feature.  When
              enabled, the drive is powered-up in the standby mode to  allow  the  con‐
              troller  to  sequence  the spin-up of devices, reducing the instantaneous
              current draw burden when many drives share a power supply.  Primarily for
              use in large RAID setups.  This feature is usually disabled and the drive
              is powered-up in the active mode (see -C above).  Note that a  drive  may
              also  allow  enabling this feature by a jumper.  Some SATA drives support
              the control of this feature by pin 11 of the  SATA  power  connector.  In
              these cases, this command may be unsupported or may have no effect.

       -S     Put the drive into idle (low-power) mode, and also set the standby (spin‐
              down) timeout for the drive.  This timeout value is used by the drive  to
              determine how long to wait (with no disk activity) before turning off the
              spindle motor to save power.  Under such  circumstances,  the  drive  may
              take as long as 30 seconds to respond to a subsequent disk access, though
              most drives are much quicker.  The encoding of the timeout value is some‐
              what peculiar.  A value of zero means "timeouts are disabled": the device
              will not automatically enter standby mode.  Values from 1 to 240  specify
              multiples  of  5 seconds, yielding timeouts from 5 seconds to 20 minutes.
              Values from 241 to 251 specify from 1 to 11 units of 30 minutes, yielding
              timeouts  from 30 minutes to 5.5 hours.  A value of 252 signifies a time‐
              out of 21 minutes. A value of 253 sets a  vendor-defined  timeout  period
              between  8  and  12  hours, and the value 254 is reserved.  255 is inter‐
              preted as 21 minutes plus 15 seconds.  Note that some  older  drives  may
              have very different interpretations of these values.

       -t     Perform  timings  of  device reads for benchmark and comparison purposes.
              For meaningful results, this operation should be repeated 2-3 times on an
              otherwise  inactive  system  (no  other active processes) with at least a
              couple of megabytes of free memory.  This displays the speed  of  reading
              through  the  buffer cache to the disk without any prior caching of data.
              This measurement is an indication of  how  fast  the  drive  can  sustain
              sequential  data  reads under Linux, without any filesystem overhead.  To
              ensure accurate measurements, the buffer cache is flushed during the pro‐
              cessing of -t using the BLKFLSBUF ioctl.

       -T     Perform  timings  of  cache  reads for benchmark and comparison purposes.
              For meaningful results, this operation should be repeated 2-3 times on an
              otherwise  inactive  system  (no  other active processes) with at least a
              couple of megabytes of free memory.  This displays the speed  of  reading
              directly  from the Linux buffer cache without disk access.  This measure‐
              ment is essentially an indication of the  throughput  of  the  processor,
              cache, and memory of the system under test.

       --trim-sector-ranges
              For  Solid State Drives (SSDs).  EXCEPTIONALLY DANGEROUS. DO NOT USE THIS
              OPTION!!  Tells the drive firmware  to  discard  unneeded  data  sectors,
              destroying  any  data that may have been present within them.  This makes
              those sectors available for immediate use by the firmware's garbage  col‐
              lection  mechanism,  to improve scheduling for wear-leveling of the flash
              media.  This option expects one or more sector  range  pairs  immediately
              after  the  option:  an LBA starting address, a colon, and a sector count
              (max 65535), with no intervening spaces.  EXCEPTIONALLY DANGEROUS. DO NOT
              USE THIS OPTION!!

              E.g.  hdparm --trim-sector-ranges 1000:4 7894:16 /dev/sdz

       --trim-sector-ranges-stdin
              Identical  to  --trim-sector-ranges  above,  except the list of lba:count
              pairs is read from stdin rather than being specified on the command line.
              This  can  be used to avoid problems with excessively long command lines.
              It also permits batching of many more sector ranges into single  commands
              to  the  drive,  up  to the currently configured transfer limit (max_sec‐
              tors_kb).

       -u     Get/set the interrupt-unmask flag for the drive.  A setting of 1  permits
              the  driver to unmask other interrupts during processing of a disk inter‐
              rupt,  which  greatly  improves  Linux´s  responsiveness  and  eliminates
              "serial  port  overrun"  errors.   Use  this  feature  with caution: some
              drive/controller combinations do not tolerate the increased I/O latencies
              possible  when  this  feature is enabled, resulting in massive filesystem
              corruption.  In particular, CMD-640B and RZ1000 (E)IDE interfaces can  be
              unreliable  (due to a hardware flaw) when this option is used with kernel
              versions earlier than 2.0.13.  Disabling  the  IDE  prefetch  feature  of
              these  interfaces  (usually  a BIOS/CMOS setting) provides a safe fix for
              the problem for use with earlier kernels.

       -v     Display some basic settings, similar to -acdgkmur for IDE.  This is  also
              the default behaviour when no options are specified.

       -V     Display program version and exit immediately.

       --verbose
              Display extra diagnostics from some commands.

       -w     Perform  a  device reset (DANGEROUS).  Do NOT use this option.  It exists
              for unlikely situations where a reboot might otherwise be required to get
              a confused drive back into a useable state.

       --write-sector
              Writes zeros to the specified sector number.  VERY DANGEROUS.  The sector
              number must be given (base10) after this option.   hdparm  will  issue  a
              low-level  write  (completely  bypassing the usual block layer read/write
              mechanisms) to the specified sector.  This can be used to force  a  drive
              to repair a bad sector (media error).

       -W     Get/set the IDE/SATA drive´s write-caching feature.

       -X     Set  the IDE transfer mode for (E)IDE/ATA drives.  This is typically used
              in combination with -d1 when enabling DMA to/from a drive on a  supported
              interface  chipset,  where -X mdma2 is used to select multiword DMA mode2
              transfers and -X sdma1 is used to select simple  mode  1  DMA  transfers.
              With  systems  which  support UltraDMA burst timings, -X udma2 is used to
              select UltraDMA mode2 transfers (you´ll need to prepare the  chipset  for
              UltraDMA beforehand).  Apart from that, use of this option is seldom nec‐
              essary since most/all modern IDE drives  default  to  their  fastest  PIO
              transfer  mode  at power-on.  Fiddling with this can be both needless and
              risky.  On drives which support alternate transfer modes, -X can be  used
              to  switch  the  mode  of the drive only.  Prior to changing the transfer
              mode, the IDE interface should be jumpered or programmed (see -p  option)
              for  the new mode setting to prevent loss and/or corruption of data.  Use
              this with extreme caution!  For the PIO (Programmed Input/Output)  trans‐
              fer modes used by Linux, this value is simply the desired PIO mode number
              plus 8.  Thus, a value of 09 sets PIO mode1, 10 enables PIO mode2, and 11
              selects  PIO  mode3.  Setting 00 restores the drive´s "default" PIO mode,
              and 01 disables IORDY.  For multiword DMA, the value used is the  desired
              DMA mode number plus 32.  for UltraDMA, the value is the desired UltraDMA
              mode number plus 64.

       -y     Force an IDE drive to immediately enter the low power consumption standby
              mode, usually causing it to spin down.  The current power mode status can
              be checked using the -C option.

       -Y     Force an IDE drive to immediately  enter  the  lowest  power  consumption
              sleep  mode, causing it to shut down completely.  A hard or soft reset is
              required before the drive can be accessed again  (the  Linux  IDE  driver
              will  automatically  handle issuing a reset if/when needed).  The current
              power mode status can be checked using the -C option.

       -z     Force a kernel re-read of the partition table of the specified device(s).

       -Z     Disable the automatic power-saving function  of  certain  Seagate  drives
              (ST3xxx  models?),  to prevent them from idling/spinning-down at inconve‐
              nient times.

       ATA Security Feature Set

       These switches are DANGEROUS to experiment with, and might not  work  with  some
       kernels.  USE AT YOUR OWN RISK.

       --security-help
              Display terse usage info for all of the --security-* options.

       --security-freeze
              Freeze  the  drive´s  security  settings.   The drive does not accept any
              security commands until next power-on reset.  Use this function in combi‐
              nation  with --security-unlock to protect drive from any attempt to set a
              new password. Can be used standalone, too.  No other options are  permit‐
              ted on the command line with this one.

       --security-prompt-for-password
              Prompt  for  the --security PWD rather than getting from the command line
              args.  This avoids having passwords  show  up  in  shell  history  or  in
              /proc/self/cmdline during execution.

       --security-unlock PWD
              Unlock  the  drive,  using  password  PWD.  Password is given as an ASCII
              string and is padded with NULs to reach 32 bytes.  The  applicable  drive
              password  is  selected  with  the --user-master switch (default is "user"
              password).  No other options are permitted on the command line with  this
              one.

       --security-set-pass PWD
              Lock  the drive, using password PWD (Set Password) (DANGEROUS).  Password
              is given as an ASCII string and is padded with NULs to  reach  32  bytes.
              Use  the  special password NULL to set an empty password.  The applicable
              drive password is selected with  the  --user-master  switch  (default  is
              "user"  password)  and  the applicable security mode with the --security-
              mode switch.  No other options are permitted on  the  command  line  with
              this one.

       --security-disable PWD
              Disable drive locking, using password PWD.  Password is given as an ASCII
              string and is padded with NULs to reach 32 bytes.  The  applicable  drive
              password  is  selected  with  the --user-master switch (default is "user"
              password).  No other options are permitted on the command line with  this
              one.

       --security-erase PWD
              Erase  (locked) drive, using password PWD (DANGEROUS).  Password is given
              as an ASCII string and is padded with NULs to reach 32  bytes.   Use  the
              special  password  NULL  to  represent an empty password.  The applicable
              drive password is selected with  the  --user-master  switch  (default  is
              "user"  password).   No  other  options are permitted on the command line
              with this one.

       --security-erase-enhanced PWD
              Enhanced erase (locked) drive, using password PWD (DANGEROUS).   Password
              is  given  as  an ASCII string and is padded with NULs to reach 32 bytes.
              The applicable drive password is selected with the  --user-master  switch
              (default is "user" password).  No other options are permitted on the com‐
              mand line with this one.

       --user-master USER
              Specifies which password (user/master) to select.  Defaults to user pass‐
              word.  Only useful in combination with --security-unlock, --security-set-
              pass, --security-disable, --security-erase or --security-erase-enhanced.
                      u       user password
                      m       master password

       --security-mode MODE
              Specifies which security mode (high/maximum) to set.  Defaults  to  high.
              Only useful in combination with --security-set-pass.
                      h       high security
                      m       maximum security

              THIS FEATURE IS EXPERIMENTAL AND NOT WELL TESTED. USE AT YOUR OWN RISK.

FILES
       /etc/hdparm.conf

BUGS
       As noted above, the -m sectcount and -u 1 options should be used with caution at
       first, preferably on a read-only filesystem.  Most drives work well  with  these
       features,  but  a  few  drive/controller  combinations  are not 100% compatible.
       Filesystem corruption may result.  Backup everything before experimenting!

       Some options (e.g. -r for SCSI) may not  work  with  old  kernels  as  necessary
       ioctl()´s were not supported.

       Although  this  utility  is  intended  primarily for use with SATA/IDE hard disk
       devices, several of the options are also valid (and permitted) for use with SCSI
       hard disk devices and MFM/RLL hard disks with XT interfaces.

       The  Linux  kernel up until 2.6.12 (and probably later) doesn´t handle the secu‐
       rity unlock and disable commands gracefully and will segfault and in some  cases
       even panic. The security commands however might indeed have been executed by the
       drive. This poor kernel behaviour makes the PIO data  security  commands  rather
       useless at the moment.

       Note  that the "security erase" and "security disable" commands have been imple‐
       mented as two consecutive PIO data commands and will not  succeed  on  a  locked
       drive because the second command will not be issued after the segfault.  See the
       code for hints how patch it to work around this problem. Despite the segfault it
       is  often  still possible to run two instances of hdparm consecutively and issue
       the two necessary commands that way.

AUTHOR
       hdparm has been written by Mark Lord  <mlord@pobox.com>,  the  original  primary
       developer and maintainer of the (E)IDE driver for Linux, and current contributor
       to the libata subsystem, along with suggestions and patches from many netfolk.

       The  disable  Seagate  auto-powersaving  code  is  courtesy  of  Tomi  Leppikan‐
       gas(tomilepp@paju.oulu.fi).

       Security freeze command by Benjamin Benz, 2005.

       PIO  data  out  security  commands  by Leonard den Ottolander, 2005.  Some other
       parts by Benjamin Benz and others.

SEE ALSO
       http://www.t13.org/ Technical Committee T13 AT Attachment (ATA/ATAPI) Interface.

       http://www.serialata.org/ Serial ATA International Organization.

       http://www.compactflash.org/ CompactFlash Association.

Version 9.51                          January 2017                            HDPARM(8)

 

 

Súgó kimenet

hdparm -h
hdparm - get/set hard disk parameters - version v9.51, 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
 --dco-freeze      Freeze/lock current device configuration until next power cycle
 --dco-identify    Read/dump device configuration identify data
 --dco-restore     Reset device configuration back to factory defaults
 --dco-setmax      Use DCO to set maximum addressable sectors
 --direct          Use O_DIRECT to bypass page cache for timings
 --drq-hsm-error   Crash system with a "stuck DRQ" error (VERY DANGEROUS)
 --fallocate       Create a file without writing data to disk
 --fibmap          Show device extents (and fragmentation) for a file
 --fwdownload            Download firmware file to drive (EXTREMELY DANGEROUS)
 --fwdownload-mode3      Download firmware using min-size segments (EXTREMELY DANGEROUS)
 --fwdownload-mode3-max  Download firmware using max-size segments (EXTREMELY DANGEROUS)
 --fwdownload-mode7      Download firmware using a single segment (EXTREMELY DANGEROUS)
 --fwdownload-modee      Download firmware using mode E (min-size segments) (EXTREMELY DANGEROUS)
 --fwdownload-modee-max  Download firmware using mode E (max-size segments) (EXTREMELY DANGEROUS)
 --idle-immediate  Idle drive immediately
 --idle-unload     Idle immediately and unload heads
 --Istdin          Read identify data from stdin as ASCII hex
 --Istdout         Write identify data to stdout as ASCII hex
 --make-bad-sector Deliberately corrupt a sector directly on the media (VERY DANGEROUS)
 --offset          use with -t, to begin timings at given offset (in GiB) from start of drive
 --prefer-ata12    Use 12-byte (instead of 16-byte) SAT commands when possible
 --read-sector     Read and dump (in hex) a sector directly from the media
 --repair-sector   Alias for the --write-sector option (VERY DANGEROUS)
 --sanitize-antifreeze-lock  Block sanitize-freeze-lock command until next power cycle
 --sanitize-block-erase      Start block erase operation
 --sanitize-crypto-scramble  Change the internal encryption keys that used for used data
 --sanitize-freeze-lock      Lock drive's sanitize features until next power cycle
 --sanitize-overwrite  PATTERN  Overwrite the internal media with constant PATTERN
 --sanitize-status           Show sanitize status information
 --security-help             Display help for ATA security commands
 --trim-sector-ranges        Tell SSD firmware to discard unneeded data sectors: lba:count ..
 --trim-sector-ranges-stdin  Same as above, but reads lba:count pairs from stdin
 --verbose                   Display extra diagnostics from some commands
 --write-sector              Repair/overwrite a (possibly bad) sector directly on the media (VERY DANGEROUS)

 

Kapcsolódó tartalom

 

Címkék