Thursday, February 3, 2011

Where to get RRDs.pm?

I'm trying to set up opsview (Nagios) on a CentOS 5 server running perl 5.8.9

When I try to start it, it can't find RRDs.pm. Turns out, neither can I. It's not on CPAN and I've been unable to determine what package would provide it. yum provides "*/RRDs.pm" doesn't return any results.

Edit: so we've established that it should come with the perl-rrdtool package, but unfortunately hasn't. Where do I go from here?

  • You have to install rrdtool, CentOS doesn't provide this package by default but you can use Dag Wiers' repository

    $ cd /etc/yum.repos.d
    $ vim dag.repo
    

    insert the following lines:

    [dag]
    name=Dag RPM Repository
    baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
    gpgcheck=1
    gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
    enabled=1
    

    and :wq (save) the file. After this, just install the package via yum.

    $ yum install rrdtool
    
    bemace : Unfortunately I already had `rrdtool-1.4.4-1.el5.rf.i386` installed from the CentOS repository, so that's not it either
    From Sascha
  • RRDs.pm should be provided by perl-rrdtool, but you indicate that you've already installed this program.

    Your script can't find RRDs.pm, but RRDs.pm may still be installed on your system, just not in a place where PERL expects to find it.

    What do one of these commands tell you?

    (You might need to update the locate database first, with /etc/cron.daily/mlocate or a similar cron command)

    locate RRDs.pm
    

    Or:

    find / -type f -name RRDs.pm
    
    bemace : I did find an old RRDs.pm in under the perl 5.8.8 libs, but after copying it into the 5.8.9 tree it jsut segfaults.
    Stefan Lasiewski : I pointed you to the i386 files (I corrected the link). You might have the x86_64 architecture. Make sure you are downloading the correct RPM for your architecture: http://rpmfind.net/linux/rpm2html/search.php?query=perl-rrdtool
    Stefan Lasiewski : CentOS 5.5 ships with Perl 5.8.8 by default. If you are using Perl 5.8.9, then it sounds like you are starting to go the custom route. A simpler solution would be to stick with the default version of Perl, unless you really need a newer version of Perl.
    bemace : This time you've hit it. Running `strings` against the rpm it appears to be hardcoded to install under perl 5.8.8. I've reverted to 5.8.8 and it's now working! Hopefully there wasn't a good reason I'd upgraded to 5.8.9

0 comments:

Post a Comment