Skip to content

Instantly share code, notes, and snippets.

@cavearr
Forked from aryulianto/backup-mailbox.sh
Created January 28, 2022 23:43
Show Gist options
  • Save cavearr/b8ab3e1c8af03b515c59d2624938c0e0 to your computer and use it in GitHub Desktop.
Save cavearr/b8ab3e1c8af03b515c59d2624938c0e0 to your computer and use it in GitHub Desktop.
script for backup-mailbox zimbra
##!/bin/bash
## Format Backup:
FORMAT=tgz
## Lokasi Backup
ZBACKUP=/srv/backup/
## Nama Folder Backup Berdasarkan Tanggal Backup
DATE=`date +"%d%m%y"`
## Tempat Penyimpanan Hasil Backup
ZDUMPDIR=$ZBACKUP/$DATE
## Lokasi zmmailbox
ZMBOX=/opt/zimbra/bin/zmmailbox
### Opsi Backup Yang Diinginkan ###
## Berdasarkan beberapa hari yang lalu sampai sekarang, misalkan 1 hari yang lalu. Jika 7 hari yang lalu, ganti 1 days ago dengan dengan 7 days ago
#HARI=`date --date='1 days ago' +"%m/%d/%Y"`
#query="&query=after:$HARI"
## Berdasarkan Tanggal Tertentu, Misalnya tanggal 29 Sept 2013. Jika ingin tanggal yang lain, sesuaikan format-nya dengan mengikuti format %m/%d/%Y
#query="&query=date:09/29/2013"
## Berdasarkan Dari/Ke Tanggal Tertentu. Misalnya Backup Mailbox Sebelum Tanggal 29 Sept 2013 dan Sesudah tanggal 29 Agustus 2013
#query="&query=after:08/29/2013 before:09/29/2013"
## Check direktori backup, jika belum ada, dibuat
if [ ! -d $ZDUMPDIR ]; then
mkdir -p $ZDUMPDIR
fi
## Looping Account Zimbra
for account in `su - zimbra -c 'zmprov -l gaa'`
do
echo "Processing mailbox $account backup..."
$ZMBOX -z -m $account getRestURL "//?fmt=${FORMAT}$query" > $ZDUMPDIR/$account.${FORMAT}
done
echo "Zimbra Mailbox backup has been completed successfully."
## Ref: https://wiki.zimbra.com/wiki/Backing_up_and_restoring_Zimbra_(Open_Source_Version)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment