| Current Path : /home/dailybackup/ |
| Current File : /home/dailybackup/dailybackup.sh |
#!/bin/bash ################################################################# # Daily database , cpanel,plesk account backup script skiping homedir and database # Maintainer: Alex Parker ( alex@eukhost.com) CURRENTVERSION=2810201501 ################################################################# ## Define variable backupdir="/home/dailybackup/"; dbusername=""; dbpassword=""; dbhost=localhost; ################################################################# #Create backup dir if it is not exist if [ ! -d "$backupdir/acct" ] ; then mkdir -p $backupdir/acct fi if [ ! -d "$backupdir/databases" ] ; then mkdir -p $backupdir/databases fi if [ `grep '/home/dailybackup/dailybackup.sh' /var/spool/cron/root |wc -l` -eq 0 ] ;then echo "45 0 * * * sh /home/dailybackup/dailybackup.sh >/dev/null 2>&1" >> /var/spool/cron/root fi ## Cpanel account backup if [ -e "/usr/local/cpanel/version" ]; then for act in `cat /etc/trueuserdomains | cut -d":" -f2`;do /scripts/pkgacct --skiphomedir --skipacctdb $act; mv /home/cpmove-$act.tar.gz $backupdir/acct/;done fi mysqlcmd=`which mysql`; mysqldumpcmd=`which mysqldump` ## DB backup if [ -f '/root/.my.cnf' ] ; then mysqlopt="-u root -h localhost"; elif [ -e "/usr/local/psa/version" ]; then mysqlopt="-u admin -h localhost -p`cat /etc/psa/.psa.shadow` "; elif [ ! -z "$dbusername" ] && [ ! -z "$dbpassword" ] ; then mysqlopt="-u $dbusername -h localhost -p $dbpassword"; else echo " $dbusername & $dbpassword is blank " mysqlopt=""; fi if [ ! -z "$mysqlopt" ] ; then DBS="$($mysqlcmd $mysqlopt -Bse 'show databases')" for db in $DBS do if [ $db != "information_schema" ] && [ $db != "cphulkd" ] && [ $db != "leechprotect" ] && [ $db != "eximstats" ] && [ $db != "modsec" ] && [ $db != "performance_schema" ]; then $mysqldumpcmd $mysqlopt --skip-add-locks $db | /bin/gzip -9 > $backupdir/databases/$db.sql.gz fi done fi