Identifizieren Sie physisch die ausgefallene Festplatte


25

Nehmen wir also an, Ihr Server hatte 6 gesunde Festplatten. Ein Laufwerk fällt aus (wird nicht gemountet / erkannt, fällt mit Fehlern aus dem Schlachtzug aus) oder fällt aus (SMART wird schlechter usw.). Sie müssen das defekte Laufwerk austauschen. Beim Öffnen des Gehäuses sehen Sie sechs identische Festplatten.

Woran erkennt man, welches nicht mehr gesund ist / aufsteigt / funktioniert?

Das System wäre Linux, höchstwahrscheinlich Ubuntu-Server, mit höchstens einfachem Software-RAID. Die Festplatten wären SATA und direkt mit dem Motherboard verbunden. (kein RAID-Controller)

Ich möchte keine Laufwerke nach dem Zufallsprinzip trennen, bis ich das richtige ausgewählt habe. Die Laufwerke scheinen mir alle identisch zu sein; Ich stelle mir vor, es gibt eine übliche Methode, um festzustellen, welches Laufwerk mir unbekannt ist. Hat jemand irgendwelche Hinweise / Tipps / Best Practices? Vielen Dank!

EDIT: Ich wollte, dass dies auf eine handgewellte Art 'verallgemeinert' wurde, aber es kam nur als 'unvollständig' und 'schrecklich' heraus. Mein Fehler!


4
Wenn Sie den Computer herunterfahren und herausfinden müssen, um welche Festplatte es sich handelt, sollten Sie sich die Zeit nehmen, während der Computer herunterfährt, um jede Festplatte zu identifizieren und in irgendeiner Weise zu kennzeichnen Problem.
Roy Rico

2
Ein "RAID (oder was auch immer)"? Hört sich an, als wäre ein Benutzer lose im Maschinenraum.
Romandas

1
Ein geeigneter Server teilt Ihnen das Laufwerk mit, indem er die Laufwerksfehleranzeige des fehlerhaften Laufwerks einschaltet.
John Gardeniers

8
Mann, jeder ist so schnell dabei, als wäre er naiv ... ehrlich gesagt denke ich, dass es eine gute Frage ist, eine, mit der ich mich selbst auseinandersetzen musste!
Mark Henderson

2
Ich bin neugierig, ob es für Hobbyzwecke möglich ist, Laufwerks-Signal-LEDs (mit Lötkolben in der Hand usw.) zu konstruieren, um sie physisch von einem zufälligen Betriebssystem aus zu identifizieren (wenn es keinen anständigen Festplatten- / RAID-Controller auf Serverebene gibt) anwesend, um ihre Magie zu tun) ...
Oskar Duveborn

Antworten:


26

Ich hatte genau dieses Problem auf einem (Tower-) Server, so wie Sie es erklären, und es war einfach:

smartctl gibt die Seriennummer des Laufwerks aus

Anbieter liefern manchmal ihre eigenen spezifischen Tools wie hdparm aus, die dasselbe tun.

Geben Sie also die Seriennummer des fehlerhaften Laufwerks aus und suchen Sie das Laufwerk mit einem Zahnarztspiegel und einer Taschenlampe.

Auf einem Gestell haben Sie normalerweise Anzeigelampen, wie andere Leute gesagt haben, aber ich wette, dasselbe würde zutreffen.


Whoops ... smartctl, nicht hdparm war der, an den ich denke. Ich muss meine Antwort bearbeiten, um das zu reflektieren.
Bart Silverstrim

upvoted für die Erinnerung an den richtigen Befehl :-)
Bart Silverstrim

1
hdparm -i zeigt mir die Seriennummern meiner Laufwerke - Das kann jedoch eine herstellerspezifische Antwort sein
Ian Clelland

1
Ausgezeichnet! Ich kann es jetzt nicht versuchen, aber es sieht so aus, als wäre das die Antwort! Ich beschrifte jetzt meine Festplatten mit den letzten N Ziffern ihrer Seriennummern (vorausgesetzt, dies ist pro Server eindeutig) an einer Stelle, die während des Einbaus freigelegt wird. Auch von googeln sieht der Befehl so aus, als wäre er "smartctl -i"
privatehuff

15

Das Anbringen von Aufklebern auf Laufwerken (abhängig vom Design des Fachs) ist möglicherweise nicht möglich. Wenn das Laufwerk ausfällt, können die Aufkleber austrocknen und herunterfallen.

Ledctl (aus dem Paket Ledmon) ist wirklich der richtige Weg dazu.

ledctl locate=/dev/disk/by-id/[drive-id]

oder

ledctl locate=/dev/sda

leuchtet die Laufwerksfehleranzeige an Ihrem Gehäuse für das angegebene Laufwerk auf. Ich habe zwei Beispiele angegeben, um zu veranschaulichen, dass es nicht darauf ankommt, wie Sie das Laufwerk identifizieren. Sie können Seriennummern, Namen usw. verwenden. Alle verfügbaren Informationen können verwendet werden. Die Laufwerke werden auf verschiedene Arten unter dem Pfad / dev / und / dev / disk / referenziert.

Um das Licht wieder auszuschalten, führen Sie es einfach erneut aus und ändern Sie locate in locate_off wie folgt:

ledctl locate_off=/dev/sda

6

Normalerweise müsste man hoffen, dass die Verbindungen in irgendeiner Weise beschriftet sind, dann funktioniert die Identität des ausgefallenen Geräts. Zum Beispiel ... und jemand müsste einen Kommentar abgeben, um mich zu korrigieren ... Wenn Sie zwei IDE-Kanäle haben, können Sie bis zu zwei Laufwerke mit SDA, SDB, SDC und SDD betreiben. Wenn sdd ausfällt, ist dies das zweite Laufwerk am Kabel des zweiten IDE-Kanals.

Wenn es sich um SATA handelt und wie das System, das ich im hinteren Raum habe, sind die Ports für jedes der SATA-Laufwerke beschriftet. Die Laufwerksbeschriftung beginnt an Port 0 der SATA-Anschlüsse und wird nach oben verschoben.

Bei Herstellungsunterschieden sollte dmesg | grep sd oder dmesg | grep hd einige Hinweise liefern.

Wenn Sie die Seriennummern zur Verfügung haben, kann es sein, dass der Befehl hdparm Ihnen diese in der Software gibt, damit Sie sie auf diese Weise verfolgen können. In diesem Fall möchten Sie die Laufwerke möglicherweise irgendwo beschriften, damit Sie sich darüber keine Gedanken machen müssen, wenn Sie ein Problem feststellen.

... Ich wusste, dass es einen anderen Grund gab, warum ich Hardware-RAID dem Software-RAID vorgezogen habe ... blinkende Lichter. Wirklich wie die blinkenden Lichter.

BEARBEITEN: smartctl, nicht hdparm, gibt die Seriennummer an. Mein Fehler.


+1 für die blinkenden Lichter
Oskar Duveborn

3

Einige Laufwerke zeigen eine Lokalisierungs- "Datei" an, /sysin der Sie eine 1 zum Einschalten der Lokalisierungs-Anzeigeleuchte oder eine 0 zum Ausschalten der Lokalisierungs-Anzeigeleuchte ausgeben können.

$ for light in $( find /sys -name "locate" ) ; do echo 1 > $light ; sleep 10 ; echo 0 > $light; done

Ich hatte keine Ahnung davon! Das ist toll!
Diq

2

Sechs interne Festplatten? Wenn es sich um externe Hot-Swap-Laufwerke handelt, weist der Hot-Swap-Träger wahrscheinlich eine Fehleranzeige auf, die Ihnen hilft, das fehlerhafte Laufwerk zu identifizieren. Viele Raid-Management-Programme haben auch die Option, das Licht auf einem bestimmten Laufwerk zu blinken, um festzustellen, welches welches ist. Wenn sie alle intern sind und keine LEDs leuchten, müssen Sie Ihrer RAID-Software mitteilen, welche IDs gut sind, und die SCSI-IDs usw. überprüfen, um dies herauszufinden. Wenn sie auf "Auto" eingestellt sind, sollte Ihnen Ihr RAID-Controller-Dokument mitteilen, in welcher Reihenfolge in der SCSI-Kette die IDs zugewiesen sind. Viel Glück. Machen Sie jetzt ein Backup, während die Dinge noch laufen!


2

Zumindest die RAID-Software / der RAID-Controller, die / der Sie über das ausgefallene Laufwerk informiert hat, sollte Ihnen mitteilen, welches Laufwerk ausgefallen ist (ID-Nummer). 0 ist normalerweise diejenige oben links, die sich nach unten und dann nach rechts bewegt (wenn in zwei oder mehr Spalten). Die Ports sind wahrscheinlich beschriftet.


2

Für eine kurze Antwort - "lsscsi" Für eine detaillierte Antwort - "lshw -c disk" zeigt Ihnen die Festplatten- und SATA-Ports an, an denen diese angeschlossen sind.


2

Wenn Sie kein Ortungslicht haben und die Seriennummern außerhalb der Laufwerke nicht leicht finden können, kann diese kitschige Technik manchmal Abhilfe schaffen: Erstellen Sie eine VIELE Aktivität auf diesem bestimmten Laufwerk und suchen Sie dann nach dem Laufwerk, bei dem die Aktivitäts-LED durchgehend leuchtet . Es ist am besten, eine genauere Überprüfung der Seriennummer vorzunehmen. Dies kann jedoch hilfreich sein, um die Suche einzugrenzen.

Z.B:

# while true; do dd if=/dev/disk/by-id/scsi-drive-that-is-dying of=/dev/null; sleep 1; done

(Die while-Schleife ist technisch nicht erforderlich, sorgt jedoch dafür, dass die Dinge auf dem Weg zum Rechenzentrum in Bewegung bleiben. Mit "sleep 1" kann die hohe CPU-Auslastung vermieden werden, die durch eine schnelle Schleife verursacht wird, wenn "dd" beispielsweise aufgrund eines Fehlers ausfällt.) Das Laufwerk wird getrennt.)


1

Wenn alles andere fehlschlägt, können Sie die nicht ausgefallenen Laufwerke identifizieren und rückwärts arbeiten.

find / -type f -exec cat {} \; >> /dev/null

Die Aktivitätsanzeigen der Laufwerke, die NICHT aufleuchten, sind wahrscheinlich schlecht (und es ist hoffentlich nur eine). Beachten Sie, dass bei konfigurierten Hot-Spares auch diese nicht aufleuchten.


0

Sie sollten auf dem Gehäuse gekennzeichnet sein und mit der RAID-Software übereinstimmen.

Auf unseren Dells sind das nicht die Art und Weise, wie Sie denken würden. Bei uns ist 0: 0 unten links, 0: 1 oben links, 0: 2 unten in der Mitte usw. Auf allen Servern, die ich verwendet habe (mit Ausnahme von hausgemachten Jobs), zeigt die RAID-Software den Port an, und das wird auch so sein beschriftet.


0

scsirastools verfügt über eine Reihe von Tools, mit denen Sie verschiedene Diagnosetests für SCSI-Festplatten durchführen können. Sie können sgmon auch verwenden, um eine Festplatte unter Softwaresteuerung herunterzufahren. Auf diese Weise können Sie zumindest die physische Festplatte identifizieren, die Sie mithilfe der Diagnose finden können.

Wenn Sie einen Hardware-RAID-Controller haben, sollte das BIOS oder die Verwaltungssoftware des Controllers über eine Funktion verfügen, mit der Sie fehlerhafte Festplatten identifizieren können.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.