28.11.2007
|
Software
|
0 Kommentare
Moderne Festplatten verfügen mit
S.M.A.R.T. über eine Schnittstelle, mit der wichtige Daten der Platte permanent überwacht werden können. So kann man früh erkennen, ob seine Platten wohl bald den Geist aufgeben werden und ggf. die betroffene Platte tauschen.
Aber wie richtet man eine permanente Überwachung dafür unter Kubuntu (oder anderen Linux-Systemen) ein?
Zuerst installiert man das Paket smartmontools mit
sudo aptitude install smartmontools
Aptitude verrät folgendes über dieses Paket:
Das Paket smartmontools enthält zwei Werkzeuge (smartctl und smartd) zur Kontrolle und Überwachung von Speichersystemen mittels dem »Self-Monitoring, Analysis and Reporting Technology System« (S.M.A.R.T.), das in die meisten modernen ATA- und SCSI-Festplatten eingebaut ist. Es wurde vom Paket smartsuite abgeleitet und beinhaltet Unterstützung für ATA/ATAPI-5-Platten. Es sollte auf jedem modernen Linux-System funktionieren.
Interessant ist nun smartd für uns, ein Daemon, der permanent im Hintergrund die Platten überwachen kann. Um ihn zu konfigurieren, müssen wir die Datei
/etc/smartd.conf bearbeiten:
sudo mcedit /etc/smartd.conf
In der Datei sind sehr viele Konstellationen und Möglichkeiten zur Überwachung aufgeführt, allerdings alle auskommentiert. Dennoch ist ganz oben eine Zeile, die mit "DEVICESCAN ..." beginnt,
nicht auskommentiert - dies sollten wir aber tun. Diese Zeile sorgt dafür, dass alle Laufwerke gescannt werden (auch CD-Roms z.B., die kein S.M.A.R.T. haben - was unschöne Meldungen bringt). Wir sollten lieber die Platten direkt angeben, die wir gescannt haben wollen.
Um bei all den Einstellungen die richtige zu finden, kann man etwas Zeit aufwenden. Ich habe z.B. bei
linuxjournal.com einen guten Artikel gefunden. Auch im
Gentoo Wiki wird man fündig. Ich bin dazu gekommen, folgendes in diese Datei einzufügen (das ist eine Zeile in der Datei):
/dev/hda -a -I 194 -W 4,45,55 -S on -o on -s (S/../.././06|L/../../1/08) -m benjamin.heil@bheil.net -M daily
Dies bewirkt folgendes:
- * Es wird alles geprüft, was mit S.M.A.R.T. möglich ist
- * Festgehalten werden Temperaturschwankungen um mehr als 4 Grad
- * Gemeldet werden Temperaturen über 45 Grad
- * Eine Mail wird gesendet bei SMART-Fehlern oder wenn die Temperatur über 55 Grad steigt (Warnmeldungen werden täglich neu versendet, wenn nötig; der Mail-Versand benötigt einen installierten MTA, das wird aber in einem extra Post beschrieben)
- * Mache einen Kurztest immer frühs zwischen 6 und 7 sowie einen Langtest jeden Montag morgen zwischen 8 und 9 (das lohnt natürlich nur für Systeme, die permanent laufen)
Analog dazu habe ich das auch mit den beiden anderen Platten gemacht - dies sind SATA-Platten:
/dev/sda -a -d sat -I 194 -W 4,45,55 -S on -o on -s (S/../.././06|L/../../1/08) -m benjamin.heil@bheil.net -M daily
/dev/sdb -a -d sat -I 194 -W 4,45,55 -S on -o on -s (S/../.././06|L/../../1/08) -m benjamin.heil@bheil.net -M daily
Einziger Unterscheid ist hierbei die Angabe von
-d sat. Man kann das erstmal ohne dieser Anweisung reinschreiben - beim Testlauf (siehe unten) wird gemeckert, falls diese Anweisung nötig ist. Genaueres steht in der Man page (
man smartd).
Nun können wir einen Testlauf starten, um zu schauen, ob das auch richtig funktioniert:
An der Ausgabe kann man erkennen, ob alles glatt geht (nach Zeile "
Started with '-q onecheck' option. All devices sucessfully checked once." schauen).
Nun müssen wir dem System nur noch beibringen, dass es den Daemon automatisch und immer starten soll. Dazu editieren wir die Datei
/etc/defaults/smartmontools:
sudo mcedit /etc/default/smartmontools
und ändern die Zeile
in
Nun den Dienst mit
/etc/init.d/smartmontools restart
neu starten und smartd sollte im Hintergrund laufen und unsere Platten bewachen. Dies kann man mit
nachprüfen, es sollte eine Zeile angezeigt werden, die folgendes enthält:
/usr/sbin/smartd --pidfile /var/run/smartd.pid
Nachtrag:
Es ist auch sinnvoll, das Paket
hddtemp zu installieren (
sudo aptitude install hddtemp). Damit kann man sehr einfach die Festplattentemperatur auslesen und dies sogar mittels Programmen anzeigen lassen (z.B. mit
ksensors oder
kima für KDE).
Wie das geht, wird genauer in einem Artikel im
Ubuntu Wiki beschrieben.