Identifikasi secara fisik hard drive yang gagal

25

Jadi, katakanlah server Anda memiliki 6 hard drive yang sehat. Drive gagal (tidak akan dipasang / terdeteksi, keluar dari raid dengan kesalahan) atau gagal (SMART semakin buruk, dll). Anda perlu menukar drive yang buruk. Ketika Anda membuka kasing Anda melihat .. enam hard drive identik.

Bagaimana Anda bisa tahu mana yang tidak sehat / pemasangan / berfungsi?

Sistem akan linux, kemungkinan besar server ubuntu, menggunakan paling banyak perangkat lunak RAID sederhana. Hard drive akan menjadi SATA dan terhubung langsung ke motherboard. (tidak ada pengendali serangan)

Saya tidak ingin memutus drive secara acak sampai saya memilih yang benar. Semua drive tampak identik dengan saya; Saya membayangkan ada beberapa cara umum untuk mengidentifikasi drive mana yang tidak saya sadari. Apakah ada yang punya petunjuk / tips / praktik terbaik? Terima kasih!

EDIT: Saya ingin ini 'digeneralisasi' dengan cara yang bergelombang, tetapi hanya dianggap 'tidak lengkap' dan 'mengerikan'. Salahku!

masalah pribadi
sumber
4
Jika Anda harus mematikan mesin dan mencari tahu hard drive yang mana, Anda harus meluangkan waktu saat mesin mati untuk mengidentifikasi setiap hard drive dan memberi label pada beberapa cara sehingga ini ketika ini terjadi lagi, Anda tidak memiliki ini isu.
Roy Rico
2
A "RAID (atau apa pun)"? Kedengarannya seperti pengguna longgar di dalam ruang mesin.
Romandas
1
Server yang tepat akan memberi tahu Anda drive mana dengan menyalakan indikator kesalahan drive dari drive yang buruk.
John Gardeniers
8
Sobat, semua orang begitu cepat untuk menganggap ini naif ... terus terang saya pikir ini pertanyaan yang bagus, yang harus saya tangani sendiri!
Mark Henderson
2
Saya ingin tahu apakah ada, untuk keperluan hobi, adalah mungkin untuk membangun (dengan menyolder besi di tangan dan sebagainya) mendorong LED signaling untuk mengidentifikasi mereka secara fisik dari dalam OS acak (ketika tidak ada disk server-raid / raid controller yang layak hadir untuk melakukan sihir mereka) ...
Oskar Duveborn

Jawaban:

26

Saya punya masalah persis ini pada server (menara) seperti yang Anda jelaskan, dan itu mudah:

smartctl akan menampilkan nomor seri drive

Vendor terkadang mengirimkan alat khusus mereka sendiri, seperti hdparm, yang akan melakukan hal yang sama.

Jadi keluaran serial drive buruk, dan kemudian gunakan cermin dokter gigi dan senter untuk menemukan drive.

Pada rackmount Anda biasanya memiliki lampu indikator seperti yang dikatakan orang lain, tetapi saya bertaruh hal yang sama berlaku.

Tom Ritter
sumber
Ups ... smartctl, bukan hdparm yang saya pikirkan. Saya perlu mengedit jawaban saya untuk mencerminkan itu.
Bart Silverstrim
upvoted untuk mengingatkan saya tentang perintah yang tepat :-)
Bart Silverstrim
1
hdparm -i menunjukkan saya nomor seri dari drive saya - Itu mungkin respon khusus vendor, meskipun
Ian Clelland
1
luar biasa! Saya tidak dapat mencobanya sekarang, tetapi sepertinya inilah jawabannya! Sekarang saya akan memberi label pada hard drive saya dengan angka N terakhir dari nomor seri mereka (dengan asumsi ini unik, per server) di tempat yang terbuka saat dipasang. Juga dari googling, perintah itu terlihat "smartctl -i"
privatehuff
15

Menempatkan stiker pada drive (tergantung pada desain baki) mungkin tidak layak. Pada saat drive mati, stiker bisa mengering dan jatuh.

ledctl (dari paket ledmon) benar-benar cara untuk pergi dengan ini.

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

atau

ledctl locate=/dev/sda

akan menerangi lampu kegagalan drive pada sasis Anda untuk drive yang ditentukan. Saya memberikan dua contoh untuk menggambarkan bahwa tidak masalah BAGAIMANA Anda mengidentifikasi drive. Anda dapat menggunakan serial, nama, dll ... Informasi apa pun yang tersedia untuk Anda dapat digunakan. Drive dirujuk beberapa cara di bawah jalur / dev / dan / dev / disk /.

Untuk mematikan lampu kembali, jalankan saja lagi, ubah cari ke loc_off seperti:

ledctl locate_off=/dev/sda
UCS75
sumber
6

Biasanya Anda harus berharap bahwa koneksi diberi label dengan cara tertentu kemudian bekerja dari identitas perangkat yang gagal. Misalnya ... dan seseorang harus berkomentar untuk mengoreksi saya ... jika Anda memiliki dua saluran IDE, Anda memiliki masing-masing 2 drive, Anda dapat memiliki sda, sdb, sdc, dan sdd. Jika sdd gagal, itu akan menjadi drive kedua pada kabel saluran IDE kedua.

Jika SATA dan seperti sistem yang saya miliki di ruang belakang port diberi label untuk masing-masing drive sata. Sekali lagi, huruf drive berjalan dari apa pun naiknya drive, mulai dari port 0 konektor SATA dan naik.

Jika ada perbedaan pabrikasi, dmesg | grep sd atau dmesg | grep hd harus menghasilkan beberapa petunjuk.

Jika Anda memiliki nomor seri yang tersedia, saya pikir perintah hdparm mungkin memberikannya kepada Anda dalam perangkat lunak sehingga Anda dapat melacaknya dengan cara itu. Anda mungkin ingin memberi label drive di suatu tempat jika itu yang terjadi sehingga Anda tidak perlu khawatir tentang itu ketika Anda menemukan ada masalah.

... Saya tahu ada alasan lain mengapa saya lebih suka perangkat keras RAID daripada perangkat lunak RAID ... lampu berkedip. Sangat suka lampu-lampu yang berkedip-kedip.

EDIT: smartctl, bukan hdparm, memberikan nomor seri. Salahku.

Bart Silverstrim
sumber
+1 untuk lampu
Oskar Duveborn
3

Beberapa drive memperlihatkan "file" lokasi di /sysmana Anda dapat menggema 1 untuk menyalakan lampu indikator cari atau 0 untuk mati.

$ for light in $( find /sys -name "locate" ) ; do echo 1 > $light ; sleep 10 ; echo 0 > $light; done
cih
sumber
Saya tidak tahu tentang ini! Ini bagus!
diq
2

Enam HDDS internal? Jika drive eksternal, hot swap, pembawa hot swap kemungkinan memiliki lampu kesalahan untuk membantu Anda mengidentifikasi drive buruk. Juga banyak program manajemen Raid memiliki opsi untuk menyalakan lampu pada drive tertentu untuk menentukan yang mana. Jika semuanya internal dengan tidak ada lampu, maka Anda ke perangkat lunak RAID Anda yang memberi tahu Anda ID mana yang baik, dan melihat ID SCSI, dll untuk mencari tahu. Jika diatur ke otomatis, maka pengontrol RAID Anda harus memberi tahu Anda urutan apa dalam rantai SCSI yang ditetapkan oleh ID. Semoga berhasil. Buat cadangan sekarang saat semuanya masih berjalan!

BillN
sumber
2

Paling tidak perangkat lunak RAID / pengontrol yang memberi tahu Anda tentang drive yang gagal harus memberi tahu Anda drive mana yang gagal (nomor id). 0 biasanya yang di kiri atas, bergerak ke bawah, lalu ke kanan (jika dalam dua atau lebih kolom). Port mungkin diberi label.

mrdenny
sumber
2

Untuk jawaban singkat - "lsscsi" Untuk jawaban terperinci - "lshw -c disk" akan menunjukkan kepada Anda porta HDD dan SATA yang terhubung.

Sarath kumar S
sumber
2

Jika Anda tidak menemukan cahaya dan tidak dapat dengan mudah menemukan nomor seri di bagian luar drive, kadang-kadang teknik murahan ini dapat membantu: membuat BANYAK aktivitas pada drive tertentu dan kemudian mencari drive dengan aktivitas LED pada solid . Yang terbaik adalah menindaklanjuti dengan memeriksa nomor seri yang lebih terperinci, tetapi ini dapat membantu mempersempit pencarian.

Misalnya:

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

(Loop sementara tidak diperlukan secara teknis, tetapi itu akan membuat hal-hal tetap bergerak saat Anda menuju ke pusat data. "Tidur 1" membantu menghindari penggunaan CPU yang tinggi yang dibuat oleh loop cepat jika "dd" gagal karena mengatakan .. drive terputus.)

Steve Bonds
sumber
1

Ketika semuanya gagal, Anda dapat mengidentifikasi drive yang tidak gagal dan bekerja mundur.

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

Apa pun yang mendorong lampu aktivitas yang TIDAK menyala kemungkinan buruk (dan mudah-mudahan hanya satu.) Perhatikan bahwa jika Anda memiliki hot-spares yang dikonfigurasi, itu tidak akan menyala juga.

terguling
sumber
0

Mereka harus diberi label pada sasis dan sesuai dengan Perangkat Lunak RAID.

Di Dell kami, itu bukan cara Anda berpikir. Di server kami 0: 0 di kiri bawah, 0: 1 di kiri atas, 0: 2 di tengah bawah, dll. Di semua server yang saya gunakan (kecuali pekerjaan rumahan), perangkat lunak RAID akan menunjukkan porta, dan itu akan menjadi berlabel

dubRun
sumber
0

scsirastools memiliki seperangkat alat yang memungkinkan Anda melakukan berbagai tes diagnostik pada disk SCSI. Anda juga dapat menggunakan sgmon untuk mematikan disk di bawah kendali perangkat lunak. Setidaknya ini akan memungkinkan Anda mengidentifikasi disk fisik Anda dapat menemukannya dengan diagnostik.

Jika Anda memiliki pengontrol RAID perangkat keras, BIOS pengontrol atau perangkat lunak manajemen harus memiliki fasilitas yang memungkinkan Anda mengidentifikasi disk yang rusak.

ConcernedOfTunbridgeWells
sumber