ubuntuusers.de

Du betrachtest eine alte Revision dieser Wikiseite.

hddtemp

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/terminal.png hddtemp 🇬🇧 ist ein kleines Programm, das die Temperatur einer Festplatte über die in der Platte eingebauten S.M.A.R.T.-Sensoren auslesen kann. Mittels hddtemp können die gewonnenen Daten entweder im Syslog ausgegeben oder als Serverdienst im Hintergrund abgefragt werden.

Installation

Folgendes Paket muss installiert [1] werden:

  • hddtemp (universe)

Befehl zum Installieren der Pakete:

sudo apt-get install hddtemp 

Oder mit apturl installieren, Link: apt://hddtemp

⚓︎

Konfiguration

Nach der Installation muss man hddtemp an die eigenen Bedürfnisse anpassen. Dazu führt man in einem Terminal [2] den folgenden Befehl aus:

sudo dpkg-reconfigure hddtemp 

Anschließend bekommt man mehrere Fragen gestellt. Im Nachfolgenden wird die richtige Konfiguration für den Einsatz von hddtemp auf einem Desktop-Rechner geschildert. Andere Einsatzzwecke bedürfen evtl. einer anderen Konfiguration.

  • Soll hddtemp mit root-Rechten arbeiten?: Nein

  • Ausgabe in Syslog schreiben: 0

  • hddtemp als Dienst starten: Ja

  • Netzwerkschnittstelle an der hddtemp lauschen soll: 127.0.0.1

  • Port-Nummer: 7634

Danach wird der Dienst direkt gestartet. Nun werden standardmäßig die Temperaturen aller S.M.A.R.T.-fähigen Festplatten 1x pro Minute abgefragt. Leider führt jede S.M.A.R.T.-Abfrage dazu, dass die Platte wieder aufgeweckt wird, obwohl eigentlich keine Daten von den Magnetscheiben gelesen werden müssen. Einige Festplatten können ihren Lese/Schreibkopf parken und verbrauchen so weniger Strom. Zusätzlich ist bei vielen Festplatten nur eine gewisse Anzahl von Parkvorgängen vorgesehen, so dass die Festplatte evtl. früher als normal kaputt ist.

Als Lösung bietet sich an, die besagte Platte vom Monitoring auszuschließen. Hierzu ist die Konfigurationsdatei /etc/default/hddtemp zu editieren [3] und dieser Abschnitt so anzupassen, dass nur noch die gewünschte Platte von hddtemp abgefragt werden:

# List of devices you want to use with hddtemp. If none specified,
# hddtemp will probe standard devices.
DISKS="/dev/sda"

Mit diesem Beispiel wird nur noch die Festplatte /dev/sda von hddtemp abgefragt. Natürlich kann weiterhin manuell mit

sudo smartctl -A /dev/sda 

den S.M.A.R.T.-Status der Platte abfragen.

Dienst steuern

Nachdem hddtemp konfiguriert wurde, wird der Dienst automatisch neu gestartet. Soll der Dienst manuell gestartet werden, kann man ihn auf der Kommandozeile steuern:

sudo /etc/init.d/hddtemp 

Nun werden die verfügbaren Optionen wie start, stop usw. ausgegeben. Mehr Informationen zu diesem Thema findet man im Wiki unter Dienste und SysVinit.

⚓︎

Temperatur abfragen

Ist der Dienst konfiguriert und gestartet, kann man die Temperaturen abfragen:

sudo hddtemp /dev/sda 
/dev/sda: SAMSUNG SP2014N: 42°C

Natürlich können auch weitere Programme und Dienste die Temperaturdaten anzeigen. Mehr dazu unter Lm sensors und inxi.

Problembehebung

Festplatte wurde nicht erkannt

Hinter hddtemp steckt kein Festplattenkonzern oder eine große Firma. Die Entwickler des Programms besitzen daher nicht die Eckdaten sämtlicher Festplatten der Welt. So kann es daher vorkommen, dass Festplatten nicht erkannt werden. Allerdings kann man die Daten der Platten meist selber zur Datenbank hinzufügen. Sollte man beim Auslesen der Temperatur einer Festplatte also diese Meldung bekommen:

WARNING: Drive /dev/sda doesn't appear in the database of supported drives
WARNING: But using a common value, it reports something.
WARNING: Note that the temperature shown could be wrong.
WARNING: See --help, --debug and --drivebase options.
WARNING: And don't forget you can add your drive to hddtemp.db
/dev/sda: ST3300622AS:  47°C or °F

so ist die betroffene Festplatte noch nicht in der Datenbank von hddtemp aufgenommen. Wie man sieht, erkennt hddtemp jedoch die Festplatte und die Temperatur. In diesem Fall kann man die Festplatte problemlos zur Datenbank hinzufügen. Dazu führt man hddtemp im debug-Modus aus.

sudo hddtemp /dev/sda --debug 
================= hddtemp 0.3-beta15 ==================
Model: ST3300622AS
field(1)         = 187
field(3)         = 0
field(4)         = 125
field(5)         = 0
field(7)         = 1
field(9)         = 107
field(10)        = 0
field(12)        = 131
field(187)       = 0
field(189)       = 0
field(190)       = 47
field(194)       = 47
field(195)       = 150
field(197)       = 0
field(198)       = 0
field(199)       = 1
field(200)       = 0
field(202)       = 0
If one of the field value seems to match the temperature, be sure to read
the hddtemp man page before sending a report (section REPORT). Thanks.

Man erkennt also das Festplattenmodell "ST3300622AS" und dass die Temperatur von 47°C entweder zu Feld 190 oder 194 passt. Mit diesen Infos öffnet man anschließend die hddtemp-Datenbank /etc/hddtemp.db in einem Editor mit Rootrechten [3] und fügt die Platte als neue Zeile hinzu. Im Beispiel wäre dies also die mittlere Zeile:

########################################
############# Seagate drives
########################################
...
"ST330621A"                             194  C  "Seagate ST330621A"
"ST3300622AS"                           194  C  "Seagate ST3300622AS"
"ST330630A"                             194  C  "Seagate Barracuda ST330630A"
...

Hier erkennt man auch die passende Feld-Nummer. Seagate scheint wohl hauptsächlich die Nummer 194 zu benutzen. Andere Festplattenhersteller oder Modelle benötigen sicherlich eine andere Feld-Nummer. Abschließend muss hddtemp neu gestartet werden (s.o.) und schon sollte die Festplatte korrekt ausgelesen werden.

Hinweis:

Ist die Festplatte erfolgreich zur hddtemp-Datenbank hinzugefügt worden, sollte die Debug-Ausgabe an den Autor von hddtemp geschickt werden. Die Kontaktdaten finden sich auf der Homepage von hddtemp 🇬🇧 . Dieser kann dann die Daten in hddtemp aufnehmen und in Zukunft müssen Benutzer dieser Festplatte die Daten nicht mehr von Hand hinzufügen. Danke!

Diese Revision wurde am 28. März 2016 15:25 von aasche erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Hardware, System, Server