Untuk melakukan backup Zimbra khususnya mailbox, banyak metode yang dapat digunakan, misalnya beberapa metode dibawah ini :
- http://vavai.com/2010/03/15/tips-untuk-backuprestoremoving-zimbra-mail-server-bagian-2/
- http://vavai.com/2011/01/05/tips-imapsync-backup-sinkronisasi-email-tanpa-perlu-tahu-password-tiap-user/
- http://www.vavai.biz/product-services/zextras/menggunakan-zextras-untuk-migrasi-zimbra-mail-server/
- http://vavai.com/2011/11/25/tips-sinkronisasireplikasibackup-restore-zimbra-mail-server-secara-online/
Beberapa metode diatas dapat digunakan apabila ingin melakukan backup mailbox secara full. Untuk backup sendiri ada kalanya kita butuh backup mailbox untuk beberapa hari yang lalu, tanggal tertentu atau dari tanggal tertentu sampai dengan tanggal tertentu. Untuk melakukan hal itu, kita dapat membuat sebuah simple script agar dapat melakukan backup mailbox sesuai dengan yang diterangkan diatas. Berikut adalah script untuk melakukan backup mailbox berdasarkan interval waktu tertentu :
Buat satu buah script dengan nama backup-mailbox.sh misalnya
[code lang=’bash’]
cd /srv/
vi backup-mailbox.sh
[/code]
##!/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."
Catatan :
Script diatas saya buat menjadi 3 opsi, yaitu opsi 1 berdasarkan beberapa hari yang lalu, opsi 2 berdasarkan tanggal tertentu dan opsi 3 berdasarkan dari/ke tanggal tertentu. Silakan hilangkan tanda # sesuai dengan opsi yang dipilih.Β Berikan hak akses eksekusi agar dapat dijalankan kemudian eksekusi untuk melakukan mailbox
[code lang=’bash’]
chmod +x /srv/backup-mailbox.sh
shΒ /srv/backup-mailbox.sh
[/code]
Script tersebut juga dapat didownload pada link berikut : backup-mailbox, ganti txt menjadi sh agar dapat dieksekusi
Silakan dicoba dan semoga bermanfaat π
Kang Ahmad,
Terima kasih atas sharing tips ini. Sangat berguna untuk backup mailbox sesuai kebutuhan.
Hatur nuhun,
Barokalloh..
Untuk script nya Restore gimana yah, agar sang admin dapat restore sekaligus dari semua hasil backup yang dihasilkan. Terimakasih.
Halo mas,
Silakan coba panduan pada link berikut : https://imanudin.net/2015/01/29/how-to-restore-zimbra-mailbox/
salam kenal, saya punya kasus mailbox belum sempat ter-restore sudah ada inbox masuk, nah bagaimana caranya supaya isi inbox (yang baru) tidak hilang (tertimpa) ketika saya me-restorekan mailbox backup. terima kasih
Hi Mas Wahyu,
Untuk restore, bisa menggunakan panduan pada link berikut : https://imanudin.net/2015/01/29/how-to-restore-zimbra-mailbox/
Jangan lupa ganti parameter reset dengan skip. Untuk informasi parameter tersebut juga ada di link yang saya berikan
Hi Kang Ahmad,
Kalau kita ingin backup accunt sesuai abjad gmn Kang?
Hi kang Dani,
Untuk backup sesuai abjad, tinggal tambahkan saja parameter sort pada bagian Looping user. Kurang lebih nantinya jadi seperti ini :
su – zimbra -c ‘zmprov -l gaa | sort’
Terimakasih Kang Ahmad….
Cuma gak bisa ya kalau saya hanya ingin ambil mailbox yang depannya “a” saja…
Juga kalau saya mau save ke ext. hdd pake parameter apa ya?
Terimakasih banyak
Hi kang Dani,
Sangat bisa mas
1. Dapatkan dulu semua user yang ada
2. Sortir berdasarkan Abjad
3. Pilih account dari Abjad tertentu yang hendak diambil
Good luck π
Terimakasih Kang,
Sudah di test dan berhasil…juga saya mohon ijin untuk “otak-atik” script nya untuk keperluan saya
Mangga kang π
ini backup online apa offline kang..saya coba backup ada error pipe line gt .apakah masalah backupnya jika ada dua domain dalam satu server .
Hi mas Rahman,
Ini backup online mas. Bisa dibantu pesan errornya seperti apa?
Kang Ahmad,
Kalau muncul
ERROR: service.AUTH_EXPIRED (auth credentials have expired) saat melakukan bulk backup itu kenapa ya? Awalnya normal lalu kemudian muncul error tsb.
Kira-kira solusinya bagaimana?
Terimakasi
Hi kang Dani,
Coba ubah script nya dan tambahkan -t 0 sebelum getRestURL. Jadi contohnya seperti berikut :
Terimakasih atas reply nya Kang.
Masih error juga, saya coba langsung dari server maupun via ssh.
Bapak Ahmad,
Saya coba script backup diatas dgn meremoote server. Ada error sbb:
Processing mailbox horas@panbil.co.id backup…
ERROR: service.FAILURE (system failure: GET from https://mail.panbil.co.id:8443/home/horas@panbil.co.id/?fmt=tgz&query=after:04/01/2017 failed, status=204. No data found)
Masalahnya dimana ya pak?
Terimkasih sebelumnya.
Hi pak Horas,
Pada script tersebut ada beberapa opsi backup pak. Bapak harus pilih salah satu opsi backup yang diberikan
Iya pak Ahmad sudah saya pilih berdasarkan tanggal tertentu sbb:
## 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:04/02/2017″
Terimakasih
Hi pak Horas,
Apakah pada tanggal 02 April 2017 datanya ada pada mailbox? jika tidak ada, output yang dihasilkan script sudah sesuai pak
Saya cek menu dari monitor-server statistik-mailbox Quota pada Admin Zimbra ada beberapa yg error tapi persentasi mailboxquotanya sudah berisi beberapa persen pak artinya tidak 0 persen. Misalnya ada yg sudah 15% mailbox quotanya tapi error waktu backup. Terimakasih!
Hi pak Horas,
Maksud saya adalah apakah email pada tanggal yang hendak dibackup itu ada pada mailbox yang bersangkutan? jika tidak ada, pesan no data found sudah sesuai dengan yang ditampilkan script
Baik pak Ahmad, nampaknya memang betul pak karena mailboxnya kosong. Terimakasih pak tutorialnya!
Sukses!
mas ini bisa dipilih usernya ngga?saya udh coba script diatas.cuma ada gagal bebrapa user .klo diulang dr awal banyak bgt
Hi mas Taufan,
Bisa cek contohnya di link berikut mas : https://imanudin.net/2015/01/24/zimbra-tips-how-to-backup-mailbox-daily-weekly-and-monthly/#comment-14109
saya ada kasus file backupnya terbentuk tetapi tidak ada isinya (0 kb),
kira2 error dimana ya?
Hi mas Joni,
Jika 0 kb, biasanya email diservernya memang tidak ada/alias kosong