Lors d'un précédent billet, j'ai montré comment sauvegarder ( et restaurer ) un compte zimbra. Il peut être intéressant de programmer chaque jour la sauvegarde de tous les comptes zimbra.

Dans un premier temps créer un répertoire accessible au user zimbra pour recevoir les sauvegardes.

mkdir /u01/backup_zimbra
chown zimbra:zimbra /u01/backup_zimbra

Puis sous l'identité du user zimbra créer un script svgzimbra.sh avec les lignes suivantes :

#!/bin/bash
for i in `/opt/zimbra/bin/zmaccts | grep "@" | awk '{print $1}'`
  do
    /opt/zimbra/bin/zmmailbox -z -m $i getRestURL "//?fmt=tgz" > /u01/zimbra_backup/$i.tgz
  done

Ce script recherche tous les comptes présents et génère pour chacun d'eux une archive tar compressée. Le rendre exécutable par la comande chmod

chmod u+x svgzimbra.sh

La programmation dans le fichier /etc/crontab est aisée

00 23 * * * zimbra . ~/.profile; svgzimbra.sh

Chaque jour à 23h00 l'ensemble des comptes zimbra seront sauvegardés.