Wenn man das RRDTool (z.B. in Munin) auf Serverm mit verschiedenen Architekturen nutzt, dann hat man sicher schon mal diese Meldung erhalten:
1 |
ERROR: This RRD was created on another architecture |
Das Problem kann man lösen, indem man ein Dump der RRD Dateien erstellt:
1 |
rrdtool dump stats.rrd > stats.xml |
Und sie auf dem Ziel System wieder einliest:
1 |
rrdtool restore -f stats.xml stats.rrd |
Der andere Server kann die Datei nun lesen, testen kann man es mit:
1 |
rrdtool info stats.rrd |
Wenn man so einen ganzen Ordner verarbeiten möchte geht es so:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
##Server 1 cd /var/lib/munin/ext-rdp2 #Dump RRD Files for f in *.rrd; do rrdtool dump ${f} > ${f}.xml; done #Alte Dateien löschen(Das umbenenen schlägt sonst fehl) rm *.rrd ##Server 2 #Dateien Syncen z.B.: rsync -avze ssh root@192.168.1.2:/var/lib/munin/ /var/lib/munin/ #Restore durchführen for f in *.xml; do rrdtool restore -f ${f} ${f}.rrd; done # .rrd.xml.rrd in .rrd.xml for FILENAME in *.rrd; do mv "$FILENAME" "${FILENAME%.rrd}"; done # .rrd.xml in .rrd for FILENAME in *.xml; do mv "$FILENAME" "${FILENAME%.xml}"; done |
Ich hoffe es hilft jemanden.