Installing MegaCLI on Slackware Linux

An important aspect of system administration is the ability to monitor one’s hardware. With our latest server we installed a Dell PERC 6/i RAID controller to manage our harddrive array. Without the Dell OpenManage software however we needed another way to check hardware performance, drive status, and general array health.

Since the PERC line of cards are rebranded LSI SAS adapaters, our first stop was to see what software was available for that controller, which gave us the idea to use LSI’s own MegaCLI software.

We were unable to find a pre-made Slackware package for MegaCLI but did to find multiple sites with instructions for a specific version of the software, 8.04.07. With custom bash scripts that utilized the rpm2tgz program to convert Red Hat packages to those compatible with Slackware’s management system, we thought we had a straightforward solution. Unfortunately the Red Hat packages weren’t able to be read by the conversion utility, throwing errors complaining that the RPMs weren’t valid.

After finding the latest distribution-inspecific version of MegaCLI for Linux on LSI’s website, I looked for ways to extract or expand the included archives so I could examine their contents, when I was presented with a gift — this later version of the software not only included an RPM but also a Debian package. Since every version of the RPM I had found wasn’t able to be converted I was hopeful about the DEB. After picking up a third-party utility, deb2tgz, I converted this new package into Slackware’s native format, tgz.

Running installpkg returned several errors, but nothing fatal. Hoping for the best I ran MegaCli64 -PDList -aALL and happily received full statistics on my disk array.

I made this post in the hopes that others trying to find out how to install MegaCLI on Slackware, particularly if they run into the following errors:

$ rpm2tgz MegaCli-8.07.10-1.noarch.rpm
ERROR: rpm2cpio failed. (maybe MegaCli-8.07.10-1.noarch.rpm is not an RPM?)
$ alien -t MegaCli-8.07.10-1.noarch.rpm
error in format: unknown tag
Warning: Skipping conversion of scripts in package MegaCli: postinst postrm
Warning: Use the --scripts parameter to include the scripts.
sh: /usr/bin/rpm2cpio: No such file or directory
sh: /usr/bin/rpm2cpio: No such file or directory
Unpacking of 'MegaCli-8.07.10-1.noarch.rpm' failed at /usr/local/share/perl5/Alien/Package/Rpm.pm line 168.