We've got a couple of servers in-house containing hardware RAID5 and RAID6 arrays with 8-15 disks each. What's the easiest way to automatically check for failing hard drives using a script so that they can be swapped out? Is there some way to parse the output of smartctl?

  • 1
    With Software RAID, mdadm can be configured to monitor RAIDs and send mail when things go south. Hardware RAID probably does the same but it depends on the manufacturer and their tools. Maybe you should elaborate your setup. – frostschutz Jun 23 '15 at 20:48
  • 1
    Sure, as an example we have one chassis housing 45 6TB disks, connected via SAS to a MegaRAID card on the host machine. There are three RAID6 arrays of 71TB (15 drives each). Nothing was done on the software side (except the initial configuration of the card), on bootup the arrays appear as /dev/sd{f,g,h}. Actually, smartctl says that these devices lack SMART capability so I'm not sure what can be done. (There are local RAID arrays on the host machine which give output via smartctl) – user120665 Jun 23 '15 at 21:23
  • Please edit your question to include the additional information. In the comments it can get lost in noise too easily – roaima Jun 23 '15 at 21:29

Typically you install a specific controller tool such as LSI's MegaCLI in your case (just google it, LSI's download site is ... peculiar), and then a generic server monitoring system such as Nagios, Icinga, Zabbix, ... which in turn includes plugins that regularly check your controller using MegaCLI.

The Icinga and Nagios exchange sites showed numerous relevant plugins when I checked:

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy