backup der owncloud kalender per cron

für den export bzw backup mehrerer kalender einfach das script fuer das backup des adressbuches abwandeln. das funktioniert nach dem gleichen prinzip wie beim adressbuch. da ich aber mehrere kalender habe, musste dazu noch eine for schleife rein.

sofern man mehrere adressbuecher hat, kann man mit anpassungen dieses scriptes auch diese sichern.

#!/bin/bash

OCUSER=meinusername
OCPASS=meinpasswort
OCHOST=https://owncloud.domain.tld
# die calid am ende wird in der for schleife angehaengt
OCCALENDARURL=$OCHOST'/index.php/apps/calendar/export.php?calid='
# das "--no-check-certificate" ist unschoen
WGETPARAMS='--no-check-certificate --auth-no-challenge'
WGETAUTH='--http-user='$OCUSER' --http-password='$OCPASS
MYDATE=`date +%Y%m%d%H%M%S`
# in diesen ordner werden die backups abgelegt
OUTFOLDER=/home/ich/ocbackup

# array mit den calendar id's
declare -a array=(2 3 4 5 6 9 10 11 12)

# einfuegen der calid in dateiname und url. dann runterladen und packen
for i in ${array[@]}
do
    OUTFILE=$OUTFOLDER'/calendar_'$OCUSER'_id'$i'_'$MYDATE'.ics'
    wget $WGETPARAMS $WGETAUTH -O $OUTFILE $OCCALENDARURL$i
    gzip $OUTFILE
done

# backups aelter 30 tage loeschen
find $OUTFOLDER -maxdepth 1 -type d -name 'calendar*' -mtime +30 -exec rm -rf {} \;

script abspeichern, die “calid”s in dem array an die eigenen gegebenheiten anpassen, ausfuehrbar machen und einen cronjob anlegen. die “calid” findet man in den einstellungen des kalenders. einfach mit der rechten maustaste den link bei “herunterladen” kopieren.

20130628_occalendar

(stand: ownCloud 5.0.7)

Author: sd

Leave a Reply

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