rrdtool: This RRD was created on other architecture

I use a number of open-source tools that rely on rrdtool to generate graphs. Cacti uses it for its core functionality. BackupPC uses it to graph storage pool usage over time. Unfortunately, the files it generates are architecture-dependent. This means that if you upgrade your BackupPC server from i386 to amd64, your pool graphs will mysteriously disappear. Shall we fix that?

This problem is easy to verify. Login to your server and inspect one of its RRD files.

To correct it, export the RRD files to XML format before * upgrading the server:

* What if you’ve already upgraded? You can use any other server with the same architecture. Just copy your RRD files to it and run the same commands there.

After upgrading, import your XML files into the new RRD format:

The above example is for BackupPC, but these commands work for any RRD file. If you have a lot of files (such as on a Cacti server), here is a handy loop:

And another for restoring:

Don’t forget to set expected file ownership and permissions (chown --reference and chmod --reference are your friends), and remove the XML files afterward.

Tags: , ,

  1. Arnaldo’s avatar

    Thank You very much!

    This was very helpful…

    Reply

  2. faust’s avatar

    Perfect !
    Just changing from i386 to ppc and did not find the reason why my bakcuppc graphs where missing.
    Thanks you !

    Reply

  3. JL’s avatar

    thanks a lot !

    Reply

Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">