Full backup dan Restore Zimbra 6
Backup yang pernah saya lakukan
Dari : Release 6.0.2_GA_1912.UBUNTU8 UBUNTU8 FOSS edition.
Migrasi ke : Release 6.0.6_GA_2324.RHEL5_20100406144520 CentOS5 FOSS edition.
Backup dan restore ini akan membackup, user account, mailbox (mail,calendar,documents,briefcase ...dsb) dan tidak merubah password user account, kecuali user chatingnya tidak ikut ke backup.
Cara yang paling mudah untuk full backup adalah dengan mengCopy folder /opt/zimbra , dan restorenya tinggal paste lagi ke /opt/zimbra , ini akan berjalan jika dan hanya jika, zimbra, kernel dan osnya sama.
jika berbeda bagaimana..???
proses backup
1. buat tempat backup misalnya di /backup/zimbra
mkdir -p /backup/zimbra
chown zimbra.zimbra /backup -Rf
2. backup ldapnya , hasilnya di /backup/zimbra
su zimbra
/opt/zimbra/libexec/zmslapcat /backup/zimbra
3. backup mailbox nya ( scrip ini di sunting dari blognya mas vavai)
buat script berikut, misalnya backup.sh
nano backup.sh
#!/bin/bash
### START CONFIGURATION ###
DIR="/backup/zimbra";
### END OF CONFIGURATION ###
#USERS=`su - zimbra -c 'zmprov gaa'`;
### The above command work on Zimbra 5.x. If you use Zimbra 6.x, use
USERS=`su - zimbra -c 'zmprov -l gaa'`;
if [ ! -d $DIR ]; then mkdir $DIR; chown zimbra:zimbra $DIR; fi
for ACCOUNT in $USERS; do
NAME=`echo $ACCOUNT`;
echo "Processing mailbox $NAME backup..."
su - zimbra -c "zmmailbox -z -m $ACCOUNT getRestURL '//?fmt=tgz' > $DIR/$NAME.tgz";
done
echo "Zimbra mailbox backup has been completed successfully."
chmod +x backup.sh
4. jalankan proses backup
./backup.sh
eksukusi di atas akan menghasilkan file .tgz di folder /backup/zimbra
5. copy semua yang ada di folder /backup/zimbra ke mesin zimbra yang baru, anda bisa menggunakan hardisk external atau transfer via network rsycn atau scp
PROSES RESTORE
1. misalnya Data yang akan di restore ada di folder /backup/zimbra
2. stop zimbra, dan hapus data ldap di mesin yang baru
su zimbra
zmcontrol stop
rm -rf /opt/zimbra/data/ldap/hdb/*
3. Buat folder baru
mkdir -p /opt/zimbra/data/ldap/hdb/db /opt/zimbra/data/ldap/hdb/logs
chown -R zimbra:zimbra /opt/zimbra/data/ldap
4. Restore ldapnya
/opt/zimbra/openldap/sbin/slapadd -q -b "" -F /opt/zimbra/data/ldap/config -cv -l /backup/zimbra/ldap.bak
5. Tunggu samapi selesai, anda akan melihat user account yang di restore, perhatikan file di /opt/zimbra/data/ldap/config jika terjadi error, mungkin tidak sama dengan zimbra yg lama
kemudian jalankan zimbranya lagi
zmcontrol start
seharusnya user account lama bisa login ke mesin yang baru ini, tapi email/mailboxnya kosong, dan silahkan di tes kirim email terlebih dahulu untuk memastikan restore ldap ini sukses
Disini anda akan bnyak menemui error/tidak jalannya services, yg mungkin bisa disebabkan karena beda versi zimbra atau OS atau mesin anda (32/64), tapi percaya dech hal itu bisa di solve, di milis id-zimbra ... :)
di antaranya :
1. cek kembali file main.cf, dan master.cf
2. Fix permision filenya
/opt/zimbra/libexec/zmfixperms --extended
3. Reset semua passwordnya
/opt/zimbra/bin/zmldappasswd
semua password ya , gunakan option -h untuk helpnya
jika semua sukses anda bisa melanjutkan ke step berikutnya ..:)
6. pastikan semua file sudah di copy ke mesin yang baru, misalnya di /backup/zimbra/ dan pastikan user zimbra bisa membacanya
7. Buat script restore berikut (ini juga dari blognya mas vavai .. ijin ya mass :))
misalnya restore.sh
nano restore.sh
#!/bin/bash
### START CONFIGURATION ###
DIR="/backup/zimbra";
### END OF CONFIGURATION ###
clear
echo "Retrieve zimbra user name..."
USERS=`su - zimbra -c 'zmprov -l gaa'`;
for ACCOUNT in $USERS; do
NAME=`echo $ACCOUNT`;
echo "Restoring $NAME mailbox..."
su - zimbra -c "zmmailbox -z -m $NAME postRestURL '//?fmt=tgz&resolve=reset' $DIR/$NAME.tgz";
done
echo "All mailbox has been restored sucessfully"
### AKHIR FILE ###
chmod +x restore.sh
8. Jalankan Restorenya
./restore.sh
9. tunggu sampai sucessfully ..., lamanya backup dan restore tergantung jumlah dan seberapa besar data user
LINKS:http://solusinya.web.id/mail-server/full-backup-dan-restore-zimbra-6.html