Skip to main content

Zimbra backup open source for zimbra 8.x for 7 Days

The Script will take the backup in the /backup/zimbra/1 , /backup/zimbra/2 , /backup/zimbra/3 ,  /backup/zimbra/4 , /backup/zimbra/5 , /backup/zimbra/6 , /backup/zimbra/7 and after 7th day it will overwrite the day1 folder. 

This will keep the full backup for all the users in the 7 folders. 
In this script  replace the domain.com with your company domain name.
The Script can be schedule in cron tab jobs.


#!/bin/bash -x
DateToday=`date -I`
FolderZ=`date +%d`
X=$FolderZ
W2=7
W3=14
W4=21
W5=28
if [ "$X" -lt 8 ]
then
X=`expr $X - 0`
echo $X
elif [ "$X" -lt 15 ]
then
X=`expr $X - $W2`
elif [ "$X" -lt 22 ]
then
X=`expr $X - $W3`
elif [ "$X" -lt 29 ]
then
X=`expr $X - $W4`
else
X=`expr $X - $W5`
fi
echo $X
rm -rf /backup/zimbra/$X/*
su zimbra -c "/opt/zimbra/libexec/zmslapcat /backup/ldapbkp"
su zimbra -c "/opt/zimbra/libexec/zmslapcat -c /backup/ldapbkp"
sudo -u zimbra /opt/zimbra/bin/zmprov -l gaa -v | grep uid | grep -v spam | grep -v ham | grep -v zimbra | grep -v virus | grep -v galsync  > /tmp/usertmp
sed 's/uid: //g' /tmp/usertmp > /tmp/userlist$DateToday
#Backup of Zimbra mailboxes using zmmailbox
# Restore of mailbox should be performed using:
# /opt/zimbra/bin/zmmailbox -z -m user@host postRestURL -u https://HOST "//?fmt=tgz&resolve=skip" mailbox-name-date.tgz
BackupFolder="/backup/zimbra"
for MailBox in `cat /tmp/userlist$DateToday`
do
#echo $FolderZ
sudo -u zimbra /opt/zimbra/bin/zmmailbox -z -m $MailBox@domain.com getRestURL "//?fmt=tgz" > /backup/zimbra/$X/$MailBox-$DateToday.tgz
done
cat /tmp/messagebkp /tmp/userlist$DateToday > /tmp/userlistmessage$DateToday
/opt/zimbra/postfix-2.10.3.2z/sbin/sendmail -t admin@domain.com < /tmp/userlistmessage$DateToday

Comments

Popular posts from this blog

Password Expiry notification for the users in zimbra 8.x within 7 Days for the email users

This Script will run as cron tab daily basis and it will alert the users for whom password is going to expire within 7 days. It will also alert admin for the users for whom password expired. Kindly replace the domain.com with your own domain name and the  /opt/zimbra/postfix-2.10.3.2z/sbin/sendmail  path to the actual path of postfix #!/bin/bash #Script for zimbra password expiry email notification. # Meant to be performed as daily cronjob run as zimbra user.  # redirect output to a file to get a 'log file' of sorts. # Time taken of script; echo "$SECONDS Started on: $(date)" # Set variables: # First notification in days, then last warning: FIRST="7" LAST="3" # pass expiry in days, we are assuming passwd exiry is 150 Days POLICY="150" # Sent from: FROM="admin@domain.com" # Get all users - it should run once only. USERS=$(ionice -c3 /opt/zimbra/bin/zmprov -l gaa domain.com) #Todays date, in seconds: DATE...

How to Create a Delegated Admin Account in Zimbra 8.x

How to Create a Delegated Admin Account in Zimbra 8.x. Create a File as shown below with the contents .  Replace the domain.com and helpdesk Email id with your domain and helpdesk (Delegated Admin ) Name. #vi admindelegate #!/bin/bash # $1 domain.com # $2 helpdesk zmprov ma $2 zimbraIsDelegatedAdminAccount TRUE zmprov ma $2 zimbraAdminConsoleUIComponents cartBlancheUI zimbraAdminConsoleUIComponents domainListView zimbraAdminConsoleUIComponents accountListView zimbraAdminConsoleUIComponents DLListView zmprov ma $2 zimbraDomainAdminMaxMailQuota 0 zmprov grantRight domain $1 usr $2 +createAccount zmprov grantRight domain $1 usr $2 +createAlias zmprov grantRight domain $1 usr $2 +createCalendarResource zmprov grantRight domain $1 usr $2 +createDistributionList zmprov grantRight domain $1 usr $2 +deleteAlias zmprov grantRight domain $1 usr $2 +listDomain zmprov grantRight domain $1 usr $2 +domainAdminRights zmprov grantRight domain $1 usr $2 +configureQuota zmpr...

SCRIPT TO SHOW INVALID LOGIN ATTEMPTS IN RED COLOR AND VALID LOGIN IN GREEN COLOR FOR ZIMBRA 8.x

Create a File by using #vi /usr/bin/watchaudit with the following contents  tail -f /opt/zimbra/log/audit.log | awk '   /INFO/ {print "\033[32m" $0 "\033[39m"}   /WARN/ {print "\033[31m" $0 "\033[39m"} ' Close and Save the File. Run the Watchaudit File in SSH Console . #chmod +x /usr/bin/watchaudit #/usr/bin/watchaudit