随着部落格資料慢慢增加,今抽空寫了一個小腳本,對網站做定時備份,自動發郵件到我郵箱。順便放出來與大家分享!
下圖腳本運作結果:

腳本代碼:
#!/bin/bash #Author :elain #Ctime :20110320 Bak_Dir=/home/elain/backup/ Www_Dir=/www/htdocs/elain LogFile=/var/log/elain.log Bak_Data=/home/elain/backup/data/blog_`date +%Y%m%d`.sql.gz Bak_www=/home/elain/backup/www/elain`date +%Y%m%d`.tar.gz [email protected] # Info : 每周備份一次elain.org資料庫 /usr/local/mysql/bin/mysqldump -uroot elain -B|gzip > $Bak_Data #sleep 300 # Info : 每周打包一次elain.org /bin/tar zcPvf $Bak_www $Www_Dir >> /dev/null 2>&1 # Info : 郵件正文 echo -e "==========`date +%Y年%m月%d日` elain.org 備份資料==========" >$LogFile echo -e "資料庫備份檔案:\nblog_`date +%Y%m%d`.sql.gz \n大小:`du -sh $Bak_Data |awk '{print $1}'`" >>$LogFile echo -e "網站程式備份檔案:\nelain`date +%Y%m%d`.tar.gz \n大小:`du -sh $Bak_www |awk '{print $1}'`" >>$LogFile echo -e "==============by:elain www.elain.org=================\n詳情參見附件!" >>$LogFile # Info : 發送郵件 /usr/bin/mutt -s "`date +%Y年%m月%d日` elain.org 備份資料" $MailList -a $Bak_Data -a $Bak_www < $LogFile # Info : 删除一個月前的備份 find $Bak_Dir -mtime +30 | xargs rm -rf
給予此腳本以執行權限
chmod 700 /home/elain/scripts/bak_elain.org.sh
做定時任務
[root@blog scripts]# crontab -l # Info : 每周備份elain.org # Author : dingtm # Ctime : 2011.03.20 00 6 * * 6 /bin/sh /home/elain/scripts/bak_elain.org.sh
本文位址為:http://www.elain.org/?p=192,更多技術請通路:elain'blog ---http://www.elain.org/
<a href="http://down.51cto.com/data/2358579" target="_blank">附件:http://down.51cto.com/data/2358579</a>
本文轉自 elain2012 51CTO部落格,原文連結:http://blog.51cto.com/elain/620182