sviluppo-web-qa.it

Identificare fisicamente il disco rigido guasto

Quindi, supponiamo che il tuo server avesse 6 dischi rigidi sani. Un'unità si guasta (non si monterà/rileverà, abbandonerà il raid con errori) o si guasterà (SMART peggiora, ecc.). Devi sostituire il disco rigido. Quando apri il case vedi sei dischi rigidi identici.

Come si può sapere quale non è più in salute/montaggio/funzionamento?

Il sistema sarebbe Linux, molto probabilmente il server Ubuntu, usando al massimo il software RAID. I dischi rigidi sarebbero SATA e collegati direttamente alla scheda madre. (nessun controller raid)

Non voglio disconnettere casualmente le unità fino a quando non scelgo quella corretta. Le unità sembrano tutte identiche a me; Immagino che ci sia un modo comune per identificare quale unità è quella di cui non sono a conoscenza. Qualcuno ha qualche puntatore/suggerimento/best practice? Grazie!

EDIT: Volevo che questo fosse "generalizzato" in un modo ondulato a mano, ma era appena uscito come "incompleto" e "orribile". Colpa mia!

27
privatehuff

Ho avuto questo esatto problema su un server (tower) proprio come hai spiegato, ed è stato facile:

smartctl produrrà il numero seriale dell'unità

I venditori a volte spediscono i propri strumenti specifici, come hdparm, che farà lo stesso.

Quindi emetti il ​​seriale dell'unità difettosa, quindi utilizza lo specchio di un dentista e una torcia per trovare l'unità.

Su un rack di solito avrai spie come hanno detto altre persone, ma scommetto che lo stesso si applicherebbe.

27
Tom Ritter

L'inserimento di adesivi sulle unità (a seconda del design del vassoio) potrebbe non essere fattibile. Al momento della morte dell'unità, gli adesivi potrebbero essere asciugati e fatti cadere.

ledctl (dal pacchetto ledmon) è davvero la strada da percorrere.

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

o

ledctl locate=/dev/sda

illuminerà la spia di guasto dell'unità sul telaio per l'unità specificata. Ho fornito due esempi per illustrare che non importa come si identifica l'unità. È possibile utilizzare seriale, nome, ecc ... È possibile utilizzare qualsiasi informazione disponibile. Le unità sono referenziate in diversi modi nel percorso/dev/e/dev/disk /.

Per spegnere la luce, basta eseguirla di nuovo, cambiando Locate in Locate_off in questo modo:

ledctl locate_off=/dev/sda
17
UCS75

Di solito dovresti sperare che le connessioni siano etichettate in qualche modo quindi funzionino dall'identità del dispositivo guasto. Ad esempio ... e qualcuno dovrebbe commentare per correggermi ... se hai due IDE canali, hai fino a 2 unità su ciascuno, potresti avere sda, sdb, sdc e sdd. Se sdd fallisse sarebbe la seconda unità sul cavo del secondo IDE canale.

Se è SATA e come il sistema che ho nella stanza sul retro, le porte sono etichettate per ciascuna delle unità SATA. Ancora una volta, le lettere di unità vanno da un qualunque cosa le unità salgono, a partire dalla porta 0 dei connettori SATA e salendo.

Se ci sono differenze di fabbricazione, dmesg | grep sd o dmesg | grep hd dovrebbe fornire alcuni indizi.

Se hai i numeri di serie disponibili, penso che il comando hdparm potrebbe dartelo nel software in modo da poterlo rintracciare in quel modo. Potresti voler etichettare le unità da qualche parte in questo caso, quindi non devi preoccuparti di questo quando scopri che c'è un problema.

... Sapevo che c'era un altro motivo per cui preferivo il RAID hardware al RAID software ... luci lampeggianti. Mi piacciono molto le luci lampeggianti.

EDIT: smartctl, non hdparm, fornisce il numero seriale. Colpa mia.

6
Bart Silverstrim

Per una risposta breve - "lsscsi" Per una risposta dettagliata - "lshw -c disk" mostrerà le porte HDD e SATA in cui sono collegate.

3
Sarath kumar S

Alcune unità espongono un "file" di individuazione in /sys in cui è possibile far eco a 1 per accendere la spia di localizzazione o 0 per spegnere.

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

Per lo meno il software/controller RAID che ti ha detto dell'unità guasta dovrebbe dirti quale unità si è guasta (numero ID). 0 è di solito quello in alto a sinistra, spostandosi verso il basso, quindi verso destra (se in due o più colonne). Le porte sono probabilmente etichettate.

2
mrdenny

Se non hai luce di localizzazione e non riesci a trovare facilmente i numeri di serie all'esterno delle unità, a volte questa tecnica di formaggio può aiutare: creare MOLTA attività su quella specifica unità e quindi cercare l'unità con il LED di attività acceso fisso . È meglio seguire con un controllo più dettagliato del numero di serie, ma questo può aiutare a restringere la ricerca.

Per esempio.:

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

(Il ciclo while non è tecnicamente necessario, ma manterrà le cose in movimento mentre ci si dirige verso il data center. Il "sleep 1" aiuta ad evitare l'uso elevato della CPU creato da un ciclo veloce se il "dd" non riesce a causa di dire .. . l'unità viene disconnessa.)

2
Steve Bonds

Sei HDDS interni? Se si tratta di unità hot swap esterne, è probabile che il vettore hot swap disponga di una spia di errore che consente di identificare l'unità danneggiata. Inoltre, molti programmi di gestione delle incursioni hanno un'opzione per far lampeggiare la luce su un determinato disco per determinare quale sia quale. Se sono tutti interni senza luci, allora sei nel tuo software RAID che ti dice quali ID sono buoni e guarda gli ID SCSI, ecc. Per capirlo. Se sono impostati su auto, il documento del controller RAID dovrebbe indicare a quale ordine nella catena SCSI sono assegnati gli ID. In bocca al lupo. Fai un backup ora mentre le cose sono ancora in esecuzione!

2
BillN

Quando tutto il resto fallisce, è possibile identificare le unità non guaste e lavorare all'indietro.

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

Qualunque sia la spia di attività delle unità NON si accendono probabilmente sono cattive (e si spera sia solo una.) Nota che se hai hot-spares configurato, anche questi non si accendono.

1
toppledwagon

Dovrebbero essere etichettati sullo chassis e corrispondere al software RAID.

Sui nostri Dells, non sono come penseresti. Sul nostro 0: 0 è in basso a sinistra, 0: 1 in alto a sinistra, 0: 2 in basso al centro, ecc. In tutti i server che ho usato (tranne i lavori fatti in casa), il software RAID indicherà la porta, e sarà etichettati.

0
dubRun

scsirastools ha una serie di strumenti che ti permettono di fare vari test diagnostici sui dischi SCSI. Puoi anche utilizzare sgmon per spegnere un disco sotto il controllo del software. Questo ti permetterebbe almeno di identificare il tuo disco fisico che potresti localizzare con la diagnostica.

Se si dispone di un controller RAID hardware, il BIOS o il software di gestione del controller dovrebbe disporre di una funzione che consenta di identificare i dischi danneggiati.