一直以來用cactiEZ進行服務(wù)器的監(jiān)控
也沒有管它備份的事兒,今日做一個備份的腳本 主要是備份cacti數(shù)據(jù)庫,nagios的配置文件 以及cacti的rra文件。
cacti 的恢復(fù)的話 就是將所有的rra文件拷貝到現(xiàn)有的位置 然后將cacti庫給導(dǎo)入~
##############################################################################
#!/bin/sh
######################
####
#### EDITED BY anpipi
#### 2009-12-09
####
#####################
T_date=`date +%y%m%d`
O_date=`date +%y%m%d --date='7 days ago'`
LOG="/var/log/backup.log"
echo "#### - `date +%F`--------------BACK UP IS starting---------------" >> $LOG
function cactidb_bak ()
{
extra=50000
Dbname="cacti"
Dbuser="root"
Dbpasswd="apipi"
Bakfile=/bak/"$Dbname"_"$T_date".sql
gzfile=$Bakfile.gz
size=$( ls -l $gzfile | awk '{print $5}')
if [ ! -e $gzfile ] || [ $size -le $extra ];then
/usr/bin/mysqldump -u$Dbuser -p$Dbpasswd --databases $Dbname > $Bakfile
/usr/bin/gzip $Bakfile
fi
echo "`date +%T`---------$Dbname--------backup is success----------" >> $LOG
rm -rf /bak/"$Dbname"_"$O_date".sql*
}
function tardata ()
{
########### tar all rra da
file1=/bak/"cacti_rra_"$T_date".tar.gz"
extra=1000000
size=$( ls -l $file1 | awk '{print $5}')
if [ ! -e $file1 ] || [ $size -le $extra ];then
dir="/var/www/html"
cd $dir
/bin/tar -zcvf /bak/cacti_rra_"$T_date".tar.gz rra
echo "`date +%T`--------rra-----------backup is success----------" >> $LOG
fi
rm -rf /bak/cacti_rra_"$O_date".tar.gz
########### tar nagios da
file2=/bak/"nagios_"$T_date".tar.gz"
extra=100000
size=$( ls -l $file2 | awk '{print $5}')
if [ ! -e $file2 ] || [ $size -le $extra ];then
dir_nagios="/etc"
cd $dir_nagios
/bin/tar -zcvf /bak/nagios_"$T_date".tar.gz nagios
echo "`date +%T`------------all-----------backup is success----------">> $LOG
echo "####">> $LOG
echo "####">> $LOG
fi
rm -rf /bak/nagios_"$O_date".tar.gz
}
cactidb_bak
tardata
聯(lián)系客服