Downtime

Es gab in der letzten Zeit mehrfach mehrstündige Ausfallzeiten. Das lag wohl am Mainboard, das wurde nun getauscht und ich hoffe die Webseite ist wieder zuverlässiger verfügbar.

Update 19.02: Heute ist eine Festplatte ausgefallen und musste ersetzt werden…

Ceph rbd mit Xen nutzen

Da ich selber etwas länger suchen musste wie man am leichtesten Ceph als Backend für Xen nutzt, hier die relevante Konfigurationszeile (setzt ein konfigurierten Ceph-Cluster und Xen >= 4.3 voraus)

disk = [ 'format=raw, vdev=xvda1, access=rw,backendtype=qdisk, target=rbd:<pool-Name>/<Image-Name>:id=<cephx-Id>' ]

Frühjahrsputz

Ich habe eben den Kartenherstellungsprozess etwas abgestaubt und die Programme (mkgmap und splitter) in den neusten Versionen installiert/kompiliert damit alle Verbesserungen über den Winter genutzt werden können.

Wünsche allen viel Spaß beim Radfahren!

Garmin BaseCamp Routen vereinfachen

Wenn man in Garmin BaseCamp eine Route erstellt und im GPX-Format exportiert, dann wird neben den eigentlichen Wegpunkten zusätzlich diverse „Hilfspunkte“ in einer Garmin-Dateiformatserweiterung gespeichert.

Da diese bei mir schonmal Probleme gemacht haben, insbesondere wenn die verwendete Karte auch nur leicht abweicht, bei der Routen(neu)berechnung auf meinen Oregon 450, habe ich diese bisher entfernt, indem ich die Route in QLandkarte GT importiert habe und danach exportiert habe. Dabei gehen aber leider einige Informationen verloren:

  • Name des Wegpunkts (werden nur noch durchnummeriert)
  • Ob der Wegpunkt ein „vollwertiger“ ist oder nur zur Routenberechnung genutzter
  • Informationen über das Icon

Da dies etwas nervig war und das zusätzlich aufwendig ist immer ein zweites Programm öffnen zu müssen, habe ich mir angesehen wie die Erweiterung aussehen, und ein „sed“ Kommando geschrieben, welches diese entfernt:

sed -n '1h 
1!{
        # if the sought-after regex is not found, append the pattern space to hold space
        /        <gpxx:RoutePointExtension>.*<\/gpxx:RoutePointExtension>/ !H
        # copy hold space into pattern space
        g
        # if the regex is found, then...
        /        <gpxx:RoutePointExtension>.*<\/gpxx:RoutePointExtension>/ {
                # the regular expression
                s/        <gpxx:RoutePointExtension>.*<\/gpxx:RoutePointExtension>//g
                # print 
                p
                # read the next line into the pattern space
                n
                # copy the pattern space into the hold space
                h
        }
        # copy pattern buffer into hold buffer
        h
}
# if the last line then print
$p
' input.GPX > output.GPX 

Für mehr Komfort das ganze noch in einem Automator-Programm verpackt, so dass es per Drag&Drop funktioniert. Das kann hier heruntergeladen werden.