Tips Zimbra : Backup Mailbox Menggunakan Curl

Posted by

Untuk backup data mailbox user secara massal, saya biasanya menggunakan perintah bawaan dari Zimbra. Yaitu zmmailbox. Panduan tersebut pernah saya tulis juga pada artikel berikut : https://imanudin.net/2015/01/24/zimbra-tips-how-to-backup-mailbox-daily-weekly-and-monthly/

Jika menggunakan metode backup tersebut, maka proses yang dilakukan harus dari server Zimbra secara langsung. Jika hasil backup nya hendak disimpan pada server lain, maka pada server backup dibuatkan services NFS server dan dimounting NFS share tersebut pada server Zimbra. Tentu saja hal tersebut dapat dilakukan apabila lokasi antara server zimbra dengan server backup cukup dekat. Atau koneksi jaringan antar server tersebut cukup besar.

Metode selain menggunakan mounting NFS adalah download data mailbox secara langsung dari server backup menggunakan CURL. Berikut contoh-contohnya

curl -v --insecure -u duki@imanudin.com:password-user "https://mail.imanudin.com:7071/service/home/duki@imanudin.com?fmt=tgz" > /srv/backup-mailbox/duki.tgz

Perintah diatas akan melakukan backup data mailbox user duki@imanudin.com dan data hasil backup disimpan pada folder /srv/backup-mailbox dengan nama duki@imanudin.com.tgz.

Bisa juga menggunakan account administrator untuk melakukan backup data mailbox user duki@imanudin.com

curl -v --insecure -u administrator@imanudin.com:password-administrator "https://mail.imanudin.com:7071/service/home/duki@imanudin.com?fmt=tgz" > /srv/backup-mailbox/duki.tgz

Dengan menggunakan account administrator, saya tidak perlu tahu password masing-masing user untuk melakukan download data mailbox. Tentu hal tersebut sangat membantu untuk proses backup mailbox.

Jika jumlah user yang akan dibackup ada banyak, buat sebuah script untuk memudahkan.
– Buat list user yang akan dibackup. Misalnya disimpan pada folder /srv/

vi /srv/acc.txt

Isi dengan list user yang hendak dibackup dan simpan

user1@imanudin.com
user2@imanudin.com
user3@imanudin.com

– Buat script untuk melakukan looping sekaligus melakukan download data

vi /srv/download-mbox.sh

Isi dengan script berikut :
[code lang=’plain’]
LOKASIBACKUP=”/srv/backup-mailbox”;
DAFTARUSERS=`cat /srv/acc.txt`;

if [ ! -d $LOKASIBACKUP ]; then
mkdir -p $LOKASIBACKUP
fi

for ACCOUNT in $DAFTARUSERS; do

# Script Download Data
curl -v –insecure -u administrator@imanudin.com:password-administrator “https://mail.imanudin.com:7071/service/home/$ACCOUNT?fmt=tgz” > $LOKASIBACKUP/$ACCOUNT.tgz
done
[/code]
– Simpan dan berikan hak akses eksekusi.

chmod +x /srv/download-mbox.sh

– Jalankan script untuk ujicoba backup

/srv/download-mbox.sh

Script diatas akan melakukan looping user pada file acc.txt. Kemudian melakukan download data mailbox via curl dengan login sebagai administrator. Data hasil backup tersebut disimpan pada folder /srv/backup-mailbox/namauser.tgz.

Jika server tidak bisa dipanggil menggunakan nama, ganti nama mail.imanudin.com dengan IP address.

Untuk melakukan restore pada Zimbra, salin file backup tersebut pada server Zimbra via Rsync atau bisa juga dengan mounting folder share via NFS. Proses restore sama seperti panduan pada link berikut : https://imanudin.net/2015/01/29/how-to-restore-zimbra-mailbox/

Silakan dicoba dan semoga bermanfaat 🙂

3 comments

  1. Assalaamu’alaikum om..

    apakah metode ini bisa digunakan untuk backup dan restore akun zimbra yang berbeda server dan beda versi zimbra nya ?

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.