![]() |
/etc/awstats/*
/etc/cron.hourly/split-vhost.sh
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/workers.properties
/etc/httpd/conf/ssl.crt/server.crt
/etc/httpd/conf/ssl.key/server.key
/etc/httpd/conf.d/*.conf
/etc/mrtg/mrtg.cfg
/etc/mrtg/mrtg.cpu
/etc/mrtg/mrtg.ram
/etc/postfix/access
/etc/postfix/*.cf
/etc/rc.d/init.d/noip
/etc/rc.d/init.d/tomcat
/etc/ssh/sshd_config
/etc/sysconfig/i18n
/etc/vsftpd/vsftpd.conf
/etc/yum.repos.d/CentOS-Base.repo
/etc/aliases
/etc/amavisd.conf
/etc/crontab
/etc/dovecot.conf
/etc/f-prot.conf
/etc/fstab
/etc/group
/etc/hosts
/etc/hosts.allow
/etc/hosts.deny
/etc/named.conf
/etc/passwd
/etc/php.ini
/etc/resolv.conf
/etc/vsftpd.chroot_list
/etc/vsftpd.ftpusers
/etc/vsftpd.user_list
/root/admin/*
/root/newsite/*
/root/setup/*.sh
/root/setup/*/*.sh
/usr/bin/split-vhost.pl
/usr/lib/sasl2/smtpd.conf
/var/lib/pgsql/data/*.conf
/var/lib/awstats/*
/var/lib/webalizer/*
/var/named/chroot/var/named/named.*
/var/robust/worker1/conf/server.header
/var/robust/worker1/conf/server.host
/var/robust/worker1/conf/server.footer
/var/robust/worker1/conf/server.xml
/var/robust/worker1/conf/tomcat-users.xml
/var/robust/worker1/conf/Catalina/*
/var/robust/worker2/conf/server.header
/var/tomcat5/bin/setenv.sh
/var/tomcat5/common/classes/*
/var/tomcat5/common/endorsed/jarlist.txt
/var/tomcat5/common/lib/jarlist.txt
/var/www/mrtg/*.png
/var/www/mrtg/*.old
/var/www/mrtg/*.log
/var/www/mrtg/cpu.html
/var/www/mrtg/ram.html
/var/www/mrtg/net.html
/var/www/mrtg/index.html
/var/www/usage/*
/home/andowson/www/*.*
/home/andowson/www/images/*.gif
/home/andowson/www/images/avatar/*
/home/andowson/www/templates/default/*.htm
/home/andowson/www/templates/default/styles/zh_*.css
/home/andowson/www/upload/*
/home/andowson/www/WEB-INF/*.xml
/home/andowson/www/WEB-INF/config/*.*
/home/andowson/www/WEB-INF/config/database/generic/*
/home/andowson/www/WEB-INF/config/database/postgresql/*
/home/andowson/www/WEB-INF/config/languages/zh_*.properties
/home/andowson/www/aquamp/*
/home/30elite/www/*.*
/home/30elite/www/images/*.gif
/home/30elite/www/images/avatar/*
/home/30elite/www/templates/tp101/*.htm
/home/30elite/www/templates/tp101/styles/zh_*.css
/home/30elite/www/upload/*
/home/30elite/www/WEB-INF/*.xml
/home/30elite/www/WEB-INF/config/*.*
/home/30elite/www/WEB-INF/config/database/generic/*
/home/30elite/www/WEB-INF/config/database/postgresql/*
/home/30elite/www/WEB-INF/config/languages/zh_*.properties
<html>
<head>
<title>[ hostname ] 每日檢查報表</title>
</head>
<body>
<center>
<h2>[ hostname ] 每日檢查報表</h2>
</center>
<div align="left">
<table>
<tr>
<td>主機名稱:</td>
<td>hostname</td>
</tr>
<tr>
<td>主機IP:</td>
<td>ip</td>
</tr>
<tr>
<td>作業系統:</td>
<td>os_version</td>
</tr>
<tr>
<td>Maintainer:</td>
<td>webmaster@hostname</td>
</tr>
<tr>
<td>CPU型號:</td>
<td>cpumodel</td>
</tr>
<tr>
<td>快取記憶體大小:</td>
<td>cachesize</td>
</tr>
<tr>
<td>實體記憶體大小:</td>
<td>memsize MB</td>
</tr>
<tr>
<td>虛擬記憶體大小:</td>
<td>swapsize MB</td>
</tr>
<tr>
<td>已開機時間:</td>
<td>UPtime</td>
</tr>
<tr>
<td>備份時間:</td>
<td>backtime</td>
</tr>
</table>
</div>
<table>
<tr>
<td>Log Type</td>
<td>File Name</td>
<td>Size</td>
</tr>
<tr>
<td>Apache LOG</td>
<td>/var/log/httpd/access_log</td>
<td>httpd_log_size MB</td>
</tr>
<tr>
<td>Tomcat LOG</td>
<td>/var/robust/worker1/logs/catalina.out</td>
<td>tomcat_log_size MB</td>
</tr>
<tr>
<td>Login LOG</td>
<td>/var/log/lastlog</td>
<td>lastlog_size MB</td>
</tr>
<tr>
<td>Sendmail LOG</td>
<td>/var/log/maillog</td>
<td>maillog_size byte(s)</td>
</tr>
<tr>
<td>System LOG</td>
<td>/var/log/messages</td>
<td>messages_size byte(s)</td>
</tr>
</table>
<p></p>
<table>
<!-- MSTableType="layout" -->
<tr>
<td>IP</td>
<td><a href="http://ip/mrtg/cpu.html">CPU Loading(%)</a></td>
<td><a href="http://ip/mrtg/ram.html">RAM Usage(%)</a></td>
<td>HD Usage(%)</td>
<td><a href="http://ip/mrtg/ip_2.html">Bandwidth</a></td>
</tr>
<tr>
<td>ip</td>
<td>使用者: cpuusr%<p>系統: cpusys%</td>
<td>實體: memused%<p>虛擬: swapused%</td>
<td>
#! /bin/bash
# Name: Backup and System Health Check Report
# Author: Andowson Chang (andowson [at] gmail [dot] com)
# Version: 1.2
# First Released: 2005/11/09
# Last Modified: 2007/06/24
# Modify the following line for your environment
ADMIN_PATH=/root/admin
BACKUP_FILE_PATH=/home/andowson/backup
DBNAME=( forum elite olat )
MAILTO=someone@andowson.com
NOTICE=${BACKUP_FILE_PATH}/notice.html
REMOTE_WEB=remote.andowson.com
ip=`/sbin/ifconfig eth0|grep "inet addr"|awk '{print $2}'|cut -d":" -f2`
checkdate=`date +%Y%m%d`
# Generate jarlist.txt for recover jar files
cd /var/tomcat5/common/endorsed
ls *.jar > jarlist.txt
cd /var/tomcat5/common/lib
ls *.jar > jarlist.txt
# Backup system config files
rm -rf ${BACKUP_FILE_PATH}/${ip}.tar.gz
tar zcvf ${BACKUP_FILE_PATH}/${ip}.tar.gz `cat ${ADMIN_PATH}/backup.ini`
# Backup web application files
tar zcvf ${BACKUP_FILE_PATH}/webapp_${checkdate}.tar.gz `cat ${ADMIN_PATH}/webapp.ini`
# Backup PostgreSQL databases
for (( i = 0 ; i < ${#DBNAME[@]} ; i++ ))
do
su - postgres -c "pg_dump ${DBNAME[i]} > /var/lib/pgsql/backups/${DBNAME[i]}_${checkdate}.bak"
tar rvf ${BACKUP_FILE_PATH}/db_${checkdate}.tar /var/lib/pgsql/backups/${DBNAME[i]}_${checkdate}.bak
done
gzip -f ${BACKUP_FILE_PATH}/db_${checkdate}.tar
backuptime=`date "+%Y-%m-%d %T"`
# Get system hardware information and status
hostname=`/bin/hostname`
os_version=`uname`" "`uname -r`
cpumodel=`cat /proc/cpuinfo|grep "model name"|awk '{print $4" "$5" "$6" "$7}'|head -1`
clock=`cat /proc/cpuinfo|grep "model name"|awk '{print $7}'|head -1`
cachesize=`cat /proc/cpuinfo|grep "cache size"|awk '{print $4" "$5}'|head -1`
mem=`cat /proc/meminfo|grep "MemTotal:"|awk '{print $2}'`
swap=`cat /proc/meminfo|grep "SwapTotal:"|awk '{print $2}'`
let MB=1024*1024
let KB=1024
let memsize=$mem/$KB
let swapsize=$swap/$KB
UPtime=`/usr/bin/uptime | awk '{print $3 " " $4 " " $5}' | cut -d"," -f1-2`
cpuusage=`/usr/bin/sar -u 1 3 | grep Average | awk '{print $3 " " $5}'`
cpuusr=`echo $cpuusage | cut -d" " -f1`
cpusys=`echo $cpuusage | cut -d" " -f2`
ramusage=`/usr/bin/sar -r 3 3 | grep Average | awk '{print $4 " " $9}'`
memused=`echo $ramusage | cut -d" " -f1`
swapused=`echo $ramusage | cut -d" " -f2`
hdusage=`df -t ext3 -h|awk '{print $6"\t" $2"\t" $3"\t" $4"\t" $5}'`
let lastlog_size=`/bin/ls -l /var/log/lastlog|awk '{print $5}'`/$MB
let maillog_size=`/bin/ls -l /var/log/maillog|awk '{print $5}'`
let messages_size=`/bin/ls -l /var/log/messages|awk '{print $5}'`
let httpd_log_size=`/bin/ls -l /var/log/httpd/access_log|awk '{print $5}'`/$MB
let tomcat_log_size=`/bin/ls -l /var/robust/worker1/logs/catalina.out|awk '{print $5}'`/$MB
grep "b/秒" /var/www/mrtg/${ip}_2.html |awk '{print $2 $3}'|cut -d ">" -f3|head -6 > /tmp/mrtg.tmp
maxin=`head -1 /tmp/mrtg.tmp`
avgin=`tail -5 /tmp/mrtg.tmp|head -1`
maxout=`tail -3 /tmp/mrtg.tmp|head -1`
avgout=`tail -2 /tmp/mrtg.tmp|head -1`
# Generate HTML report page
sed -e "s/hostname/$hostname/g" -e "s/ip/$ip/g" -e "s/backtime/$backuptime/g" \
-e "s/os_version/$os_version/g" -e "s/cpumodel/$cpumodel/g" \
-e "s/cachesize/$cachesize/g" -e "s/memsize/$memsize/g" \
-e "s/swapsize/$swapsize/g" -e "s/UPtime/$UPtime/g" \
-e "s/lastlog_size/$lastlog_size/g" -e "s/maillog_size/$maillog_size/g" \
-e "s/messages_size/$messages_size/g" -e "s/httpd_log_size/$httpd_log_size/g" \
-e "s/tomcat_log_size/$tomcat_log_size/g" -e "s/cpuusr/$cpuusr/g" \
-e "s/cpusys/$cpusys/g" -e "s/memused/$memused/g" \
-e "s/swapused/$swapused/g" ${ADMIN_PATH}/backup.html > ${BACKUP_FILE_PATH}/${ip}_${checkdate}.html
echo "<pre>$hdusage</pre>" >> ${BACKUP_FILE_PATH}/${ip}_${checkdate}.html
echo "</td>
<td >最大流入: ${maxin}<br>平均流入: ${avgin}<br>最大流出: ${maxout}<br>平均流出: ${avgout}</td>
</tr>
</table>
</body>
</html>" >> ${BACKUP_FILE_PATH}/${ip}_${checkdate}.html
rm -rf /tmp/mrtg.tmp
echo "<html>
<head>
<title>每日系統檢查表</title>
</head>
<body>
<ul>
<li><a >${ip}</a></li>
</ul>
</body>
</html>" > ${BACKUP_FILE_PATH}/index.html
# Upload to remote backup server
cd ${BACKUP_FILE_PATH}
# The disk space is limited, so we only keep the lastest version
cp db_${checkdate}.tar.gz db.tar.gz
cp webapp_${checkdate}.tar.gz webapp.tar.gz
. ${ADMIN_PATH}/ftp.sh `cat ${ADMIN_PATH}/ftp.cfg` backup index.html
. ${ADMIN_PATH}/ftp.sh `cat ${ADMIN_PATH}/ftp.cfg` backup ${ip}_${checkdate}.html
. ${ADMIN_PATH}/ftp.sh `cat ${ADMIN_PATH}/ftp.cfg` backup db.tar.gz
. ${ADMIN_PATH}/ftp.sh `cat ${ADMIN_PATH}/ftp.cfg` backup ${ip}.tar.gz
. ${ADMIN_PATH}/ftp.sh `cat ${ADMIN_PATH}/ftp.cfg` backup webapp.tar.gz
rm -rf db.tar.gz
rm -rf webapp.tar.gz
echo "http://${REMOTE_WEB}/backup/${ip}_${checkdate}.html" > ${NOTICE}
mail -s "${hostname} ${checkdate}的備份及系統檢查已完成" ${MAILTO} < ${NOTICE}
echo "Done!"
remotehost username password
#! /bin/bash
/usr/bin/ftp -v -n >> /tmp/ftp.log <<EOD
open $1
user $2 $3
bi
prompt
cd $4
mput $5
quit
EOD
# backup data and generate system report(2007.06.24)
01 03 * * * root /root/admin/backup.sh > /var/log/backup.log
檔案名稱 | backup.ini |
描述 | backup.ini |
檔案大小 | 1 Kbytes |
下載次數 | 47 次 |
![]() |
檔案名稱 | backup.html |
描述 | backup.html |
檔案大小 | 2 Kbytes |
下載次數 | 53 次 |
![]() |
檔案名稱 | backup.sh |
描述 | backup.sh |
檔案大小 | 5 Kbytes |
下載次數 | 60 次 |
![]() |
檔案名稱 | webapp.ini |
描述 | webapp.ini |
檔案大小 | 1 Kbytes |
下載次數 | 57 次 |
![]() |
檔案名稱 | ftp.sh |
描述 | ftp.sh |
檔案大小 | 117 bytes |
下載次數 | 50 次 |
![]() |
44 04 1 * * root find /home/andowson/backup -name "*.tar.gz" -ctime +30 -type f -print0 | xargs -0 /bin/rm -f
46 04 1 * * root find /home/andowson/backup -name "192.168.1.2*.html" -ctime +30 -type f -print0 | xargs -0 /bin/rm -f
47 04 1 * * root find /var/lib/pgsql/backups -name "*.bak" -ctime +30 -type f -print0 | xargs -0 /bin/rm -f
# line 032-037
# Backup MySQL databases
mysqldump --all-databases > /tmp/dump.sql
tar rvf ${BACKUP_FILE_PATH}/db_${checkdate}.tar /tmp/dump.sql
#! /bin/bash
host=192.168.1.2
username=xxx
password=yyyyyyy
dir=/tmp
filename=test.txt
echo "test" > $filename
/usr/bin/ftp -v -n >> /tmp/ftp.log <<EOD
echo $host
open $host
echo $username
echo $password
user $username $password
bi
prompt
echo $dir
cd $dir
echo $filename
mput $filename
quit
EOD
#! /bin/bash
host=ftp.server.ip
username=ftpuser
password=ftppwd
dir=/
filename=test.txt
echo "test" > $filename
/usr/bin/ftp -v -n >> /tmp/ftp.log <<EOD
open $host
user $username $password
passive
bi
prompt
cd $dir
mput $filename
quit
EOD