Syntax

hdparm   [ Optionen ] Gerätedatei

Beschreibung

hdparm stellt eine Kommandozeilen-Schnittstelle für verschiedenste Festplatten ioctls zur Verfügung, die vom Linux- ATA/IDE Treibersystem unterstützt werden. Einige Optionen arbeiten wahrscheinlich nur mit den modernsten Kernels zusammen. Um die besten Ergebnisse zu erhalten sollte hdparm mit den Include-Dateien des verwendeten Kernels kompiliert werden.

Optionen

Wenn keine Optionen angegeben werden, dann wird -acdgkmnru angenommen. Den meisten Optionen kann ein entsprechender Wert folgen.
-a
Ließt oder verändert die Anzahl der Sektoren, die bei einem Lesevorgang zusätzlich gelesen werden. Das wird benutzt, um die Performance von sequentiellen Zugriffen auf große Dateien zu verbessern, indem zusätzliche Blocks bereits vor der eigentlichen Anweisung gelesen werden. In den aktuellen Kernelversionen (ab 2.0.10) hat diese Einstellung den Default-Wert 8 Sektoren, also 4 KByte. Dieser Wert scheint für die meisten Fälle der beste zu sein, aber in Systemen, in denen die meisten Dateizugriffe wahlfrei stattfinden kann ein kleinerer Wert die Performance etwas steigern. Manche IDE-Platten haben bereits eine eingebaute Read-Ahead Funktion, die die Notwendigkeit dieses Features außer Kraft setzt. Ohne angegebenen Wert wird die Anzahl der read-ahead Sektoren ausgegeben. Folgt dem -a eie Zahl, so wird sie als Sektoranzahl gewertet. Eine 0 schaltet das Feature ab.
-A
Schaltet die Read-Ahead Eigenschaft der IDE-Platten ein oder aus. Standardmäßig ist diese Eigenschaft eingeschaltet. Dem -A folgt eine 0 zum Ausschalten oder eine 1 zum Einschalten des Features.
-b
Ließt oder setzt den Bus-Status
-B
Ließt die Einstellungen des Advanced Power Management Features (1-255) sofern die angegebene Platte es unterstützt.
-c
Abfrage oder Aktivierung der (E)IDE 32-Bit IO-Unterstützung. Ein nummerischer Parameter kann benutzt werden, um die 32-Bit IO Unterstützung ein- oder auszuschalten. Aktuell werden folgende Parameter unterstützt: 0 schaltet die Unterstützung ab. 1 schaltet die Unterstützung ein und 3 schaltet die Unterstützung zusammen mit einer speziellen Synchronisationssequenz ein, den viele Chipsets verlangen. Der Wert 3 arbeitet mit beinahe allen 32-Bit IDE-Chipsets, erzeugt aber ein bißchen mehr zusätzliche Daten (Overhead). Der Begriff 32-Bit IO bezieht sich nur auf den Transfer über einen PCI oder VLB Bus zum Interface. Alle (E)IDE Laufwerke selbst haben weiterhin nur eine 16 Bit Verbindung über das Flachbandkabel zum Interface.
-C
Checken des aktuellen IDE-Power Modus Status, der immer einer von unknown (Laufwerk unterstützt den Befehl nicht), active/idle (normaler Betrieb), standby (Low-Power Modus – Laufwerk wurde runtergefahren) oder sleeping (Tiefster Zustand – Laufwerk wurde komplett abgschaltet). Die Optionen -S, -y, -Y und -Z können benutzt werden, um den Powermodus einzustellen.
-d
Schaltet die DMA-Unterstützung des Laufwerks ein oder aus. Diese Option arbeitet nur mit wenigen Kombinationen von Laufwerken und Schnittstellen zusammen, die DMA unterstützen und dem IDE-Treiber bekannt sind. Speziell der Intel Triton Chipsatz wird für Busmaster DMA Operationen unterstützt (experimentel). Es ist auch eine gute Idee, die -X34 Option zusammen mit -d1 zu benützen, um sicherzustellen, daß das Laufwerk für Multiword DMA Mode2 programmiert ist. DMA zu benutzen bedeutet keine automatische Verbesserung des Durchsatzes oder der Performance, aber viele Leute schwören darauf.
-D
Schaltet das laufwerkseigene Schadensmanagement Feature ein oder aus, bei dem die Firmware des Laufwerks versucht, defekte Sektoren automatisch durch Ersetzen mit für diesen Zweck vorgesehene Ersatzsektoren auszugleichen.
-E
Setzt die CDROM Geschwindigkeit. Das ist für normale Operationen nicht notwendig, da die Laufwerke automatisch ihre Geschwindigkeit einstellen. Aber um damit zu spielen kann einfach eine Nummer nach dem -E angegeben werden, etwa 2 oder 4.
-f
Der Buffercache wird beim Verlassen synchonisiert und geleert. Diese Operation ist auch Teil der -t und -T Option.
-g
Zeigt die Plattengeometrie des Laufwerks (Zylinder, Köpfe, Sektoren), die Größe (in Sektoren) und den Start-Offset (in Sektoren).
-h
Zeigt einen kurzen Hilfetext.
-i
Zeigt die Identifikationsinformation, die vom Laufwerk beim Booten ausgegeben wurde. Das ist ein Feature moderner IDE-Laufwerke, das von älteren Laufwerken womöglich nicht unterstützt wird. Die Information muß nicht zwangsläufig richtig sein, je nach den Aktivitäten, die seit dem Booten vorgenommen wurden.
-I
Holt Informationen direkt vom Laufwerk, was eine wesentlich detailliertere Ausgabe als die der -i Option bietet.
-k
Ließt oder schreibt das „keep_settings_over_reset Flag“ für das Laufwerk. Wenn dieses Flag gesetzt ist, wird der Treiber die -dmu Optionen nach einem Soft-Reset (z.B. nach einer Fehlerbehebungssequenz) behalten. Die Voreinstellung ist 0 (ausgeschaltet) um Drive-Reset Endlosschleifen zu verhindern, die durch Kombinationen von -dru Einstellungen entstehen können. Die -k Option sollte also nur eingesetzt werden, wenn man sicher ist, daß die eingestellten Konfigurations-Optionen korrekt arbeiten.
-K
Setzt das „keep_features_over_reset Flag“ des Laufwerks. Mit dieser Einstellung ist es möglich, die Einstellungen der -APSWXZ Optionen nach einem Soft-Reset zu behalten. Nicht alle Laufwerke unterstützen dieses Feature.
-L
Setzt das „doorlock-Flag“ des Laufwerks. Wird diese Option auf 1 gesetzt, so wird der Verschlußmechanismus einiger Wechselplatten (Syquest, ZIP, Jazz…) aktiviert. Wird es auf 0 gesetzt, so wird der Verschlußmechanismus automatisch gehandhabt, also versperrt, wenn das Laufwerk gemountet ist.
-m
Ließt oder schreibt den Sektor-Zähler für Vielfach-Sektor IO. Die Angabe 0 schaltet dieses Feature ab. Multiple Sector IO (oder auch IDE Block-Mode) ist ein Feature der meisten modernen IDE-Festplatten, daß den Transfer mehrerer Sektoren über den IO-Interrupt erlaubt, statt für jeden Interrupt nur einen Sektor zu übertragen. Dieser Schalter kann den Overhead um 30-50 Prozent herabsetzen. Auch der Datendurchsatz kann um 5-50 Prozent erhöht werden. Manche Laufwerke (speziell die WD Caviar Serie) werden aber auch langsamer. Die meisten Laufwerke unterstützen die minimalen Einstellungen von 2, 4, 8 oder 16 Sektoren. Abhängig vom Laufwerk können auch größere Angaben funktionieren. In vielen Systemen scheint eine Einstellung von 16 oder 32 optimal zu sein. Der -i Flag kann verwendet werden, um herauszufinden, welche die maximale Einstellung des Laufwerks ist (MaxMultSect in der Ausgabe). Manche Laufwerke behaupten von sich, den MulpipleMode zu unterstützen, verlieren aber dabei Daten. Unter manchen Umständen kann das zu massiven Fehlern im Dateisystem führen.
-n
ließt oder schreibt das „ignore write errors“ Flag im Treiber. Mit diesem Punkt sollte nicht experimentiert werden, ohne den Quellcode des Treibers genau gelesen zu haben!
-p
Das IDE Chipset wird umprogrammiert um einen bestimmten PIO Modus zu nutzen, oder um automatisch den besten PIO-Modus herauszufinden, den das Laufwerk unterstützt. Dieses Feature wird vom Kernel nur für ein paar wenige bekannte Chipsätze unterstützt und selbst dann ist die Unterstützung höchstens zweifelhaft. Manche IDE Chipsätze sind nicht in der Lage, den PIO-Modus für ein einzelnes Laufwerk zu ändern, was in diesem Fall dazu führen würde, daß der PIO-Modus für beide angeschlossenen Laufwerke verändert würde. Manche Chipsätze unterstützen entweder weniger oder mehr als die sechs Standardmodi (0-5). Dieser Parameter sollte also mit absoluter Vorsicht verwendet werden, denn er kann massive Fehler im Dateisystem hervorrufen, wenn ein Laufwerk mit einem nicht unterstützten Modus angesprochen wird.
-P
Setzt die maximale Sektoranzahl für den Laufwerkseigenen Prefetch-Mechanismus. Nicht alle Laufwerke unterstützen dieses Feature.
-q
Der dem q folgende Parameter wird leise (ohne Ausgabe) verarbeitet. Nütlich, wenn hdparm über init-scripts aufgerufen wird. Kann nicht auf die Parameter -i, -v, -t oder -T angewandt werden.
-r
Ließt oder setzt das Read-Only Flag des Laufwerks. Wenn dieses Flag gesetzt ist (1) dann sind Schreiboperationen auf ihm nicht möglich.
-R
Registrierung eines IDE-Interfaces. Gefährlich! Siehe den -U Parameter für weitere Informationen.
-S
Setzt den Standby-Timeout Wert für das Laufwerk. Dieser Wert wird vom Laufwerk benutzt, um festzulegen, wie lange gewartet werden soll (während keiner Disk-Aktivität) bis der Motor des Laufwerks abgeschaltet wird um Energie zu sparen. Wenn der Motor einmal ausgeschaltet ist, kann ein Laufwerk bis zu 30 Sekunden benötigen, um wieder betriebsbereit zu sein, obwohl die meisten Laufwerke viel schneller sind. Die Angaben für den Timeout sind etwas eigentümlich. Ein Wert von 0 meint ausgeschaltet. Werte von 1 bis 240 werden als Vielfache von 5 Sekunden angenommen, so daß hiermit Timeout-Werte von 5 Sekunden (1) bis 20 Minuten (240) möglich sind. Werte von 241 bis 251 spezifizieren 1 bis 11 Einheiten von je 30 Minuten für Timeout Werte von 30 Minuten bis 5,5 Stunden. Ein Wert von 252 legt einen Timeout Wert von 21 Minuten fest, 253 setzt einen herstellerabhängigen Timeoutwert fest und 255 wird als 21 Minuten und 15 Sekunden interpretiert.
-T
Führt einen Cache-Lesetest als Vergleichs- und Benchmarktest durch. Für tatsächlich relevante Werte sollte dieser Test mindestens 2-3 Mal durchgeführt werden, während keine anderen Prozesse im System laufen. Es sollten einige Megabyte Speicher zur Verfügung stehen. Die Ausgabe ist die Geschwindigkeit eines Lesevorgangs aus dem Linux-Buffer, ohne auf das Laufwerk selbst zuzugreifen.
-t
Ähnlich wie -T, nur daß diesmal direkt von der Platte gelesen wird.
-u
Ließt oder schreibt das interrupt-unmask Flag der Platte. Die Angabe von 1 erlaubt es dem Treiber, andere Interrupts zu nutzen, während er einen Platteninterrupt bearbeitet. Das kann die Verlässlichkeit von Linux steigern und „serial port overrun“ Fehler eliminieren. Dieses Feature muß mit Vorsicht benutzt werden! Manche Laufwerke/Controller können damit nicht umgehen und verursachen so schwerwiegende Dateisystemfehler.
-U
Ein IDE-Interface wird „unregistriert“. Gefährlich! Das Gegenstück zur -R Option. Diese Option ist für die seltenen Fälle von Hardware gedacht, die für „Hot-Swaping“ ausgelegt sind. Nur benutzen, wenn Sie wissen, was sie tun und immer mit größter Vorsicht anwenden.
-v
Zeigt alle Einstellungen außer die von -i (entspricht einem -acdgkmnru für IDE, -gr für SCSI oder -adgr for XT). Das ist auch die voreingestellte Aufrufform, wenn keine Parameter angegeben wurden.
-W
Schaltet den laufwerkseigenen Schreibcache an oder aus. Der voreingestellte Modus ist nicht festgelegt, Herstellerabhängig.
-X
Setzt den IDE-Transfermodus für neuere (E)IDE/ATA2 Laufwerke. Dieser Parameter wird typischerweise zusammen mit -d1 benutzt um DMA-Zugriff zu erlauben. Hierbei wird -X34 benutzt, um Multiword DMA Mode2 Transfers zu ermöglichen. Systeme, die Ultra-DMA erlauben können mit -X66 diesen Modus ermöglichen (wenn er im BIOS eingestellt wurde). Außer diesen beiden Fällen ist die Benutzung von -x selten nötig, weil die meisten modernen IDE-Platten sowieso den schnellstmöglichen PIO-Transfer beim Anschalten aktivieren. Um mit diesem Parameter PIO-Modi anzuschalten wird die gewünschte PIO-Modusnummer plus 8 angegeben. Ein Wert von 9 meint also PIO-Mode 1, 10 meint PIO2, 11 entsprechend PIO3… Ein angegebener Wert vo 0 aktiviert den voreingestellten Wert der Platte und 1 schaltet PIO ab. Für Multiword DMA wird der gewünschte DMA-Modus plus 32 angegeben, für Ultra DMA wird 64 addiert.
-y
Zwingt ein IDE-Laufwerk sofort in den Energiesprmodus Standby, in dem gewöhnlich der Motor abgeschaltet wird. Der aktuelle Power-Modus kann mit -C ausgegeben werden.
-Y
Zwingt ein IDE-Laufwerk sofort in den Energiesprmodus Sleep, der das Laufwerk total abschaltet.
-Z
Schaltet die automatische Energiesparfunktion bestimmter Seagate-Platten ab.

Autor

hdparm wurde von Mark Lord <mlord@pobox.com> geschrieben.