第1章 工作中領(lǐng)導(dǎo)頒布任務(wù)規(guī)劃
工作中肯定要涉及到備份操作 例如nfs服務(wù)器的配置文件 web服務(wù)器的app文件 內(nèi)部人員的腳本等 這時就要做好備份 一旦丟失可快速找回 以免麻煩
1.1 工作中交代任務(wù)注意事項
(1) 對工作任務(wù)進(jìn)行確認(rèn) (記不住可用 筆記,錄音,記錄領(lǐng)導(dǎo)需求)
(2) 根據(jù)需求編寫文檔資料 (文檔中寫入 部署步驟 部署計劃 時間規(guī)劃 (時間多寫點以免真完不成就尷尬了) 人員規(guī)劃 )
(3) 和領(lǐng)導(dǎo)開會 并召集相關(guān)人員到場 確認(rèn)責(zé)任劃分
(4) 根據(jù)規(guī)劃完成任務(wù) 在這期間做好階段匯報 (周匯報 月匯報) 可利用表格文檔等和領(lǐng)導(dǎo)匯報
(5) 任務(wù)完成后 做好項目的文檔總結(jié) 項目總結(jié)會議(說明項目功能等信息) 人員培訓(xùn)等
第2章 全網(wǎng)備份需求和完成階段
2.1 模擬需求

具體要求如下:
1)所有服務(wù)器的備份目錄必須都為/backup。
2)要備份的系統(tǒng)配置文件包括但不限于:
a.定時任務(wù)服務(wù)的配置文件(/var/spool/cron/root)(適合web和nfs服務(wù)器)。
b.開機(jī)自啟動的配置文件(/etc/rc.local)(適合web和nfs服務(wù)器)。
c.日常腳本的目錄(/server/scripts)。
d.防火墻iptables的配置文件(/etc/sysconfig/iptables)。
3)Web服務(wù)器站點目錄假定為(/var/html/www)。
4)Web服務(wù)器A訪問日志路徑假定為(/app/logs)
5)Web服務(wù)器保留打包后的7天的備份數(shù)據(jù)即可(本地留存不能多于7天,因為太多硬盤會滿)
6)備份服務(wù)器上,保留每周一的所有數(shù)據(jù)副本,其它要保留6個月的數(shù)據(jù)副本。
7)備份服務(wù)器上要按照備份數(shù)據(jù)服務(wù)器的內(nèi)網(wǎng)IP為目錄保存?zhèn)浞?,備份的文件按照時間名字保存。
8)需要確保備份的數(shù)據(jù)盡量完整正確,在備份服務(wù)器上對備份的數(shù)據(jù)進(jìn)行檢查,把備份的成功及失敗結(jié)果信息發(fā)給系統(tǒng)管理員郵箱中**
2.2 實現(xiàn)項目思路
所有服務(wù)器備份目錄都為/backup
使用命令mkdir -p /backup新建一個backup目錄要備份的系統(tǒng)配置文件包括但不限于:
a) 定時任務(wù)服務(wù)的配置文件 (/var/spool/cron/root) (適合web和nfs服務(wù)器)。
b) 開機(jī)自啟動的配置文件 (/etc/rc.local) (適合web和nfs服務(wù)器)。
c) 日常腳本的目錄 (/server/scripts)。
d) 防火墻iptables的配置文件 (/etc/sysconfig/iptables)要備份的系統(tǒng)配置文件
tar zcvhPf /backup/system_backup_$(date +%F_%A).tar.gz /var/spool/cron/root /etc/rc.local /server/scripts /etc/sysconfig/iptables 絕對路徑壓縮數(shù)據(jù)
Web服務(wù)器站點目錄假定為(/var/html/www)。
mkdir -p /var/html/www/
tar zcvPhf /backup/web_info_backup_$(date +%F_%A).tar.gz /var/html/www/Web服務(wù)器訪問日志路徑假定為(/app/logs)
mkdir -p /app/logs
ar zcvPhf /backup/web_log_backup_$(date +%F_%A).tar.gz /app/logs/Web服務(wù)器保留打包后的7天的備份數(shù)據(jù)即可(本地留存不能多于7天,因為太多硬盤會滿)
find /backup -type f -name "*.tar.gz" -mtime +7 -delete備份服務(wù)器上,保留6個月之內(nèi)數(shù)據(jù),同時保留6個月之前每周一的所有數(shù)據(jù)副本
find /backup -type f -name "*.tar.gz" -mtime +180 ! -iname "*_monday.tar.gz" -delete備份服務(wù)器上,要按照備份數(shù)據(jù)服務(wù)器的內(nèi)網(wǎng)IP為目錄保存?zhèn)浞?,備份的文件按照時間名字保存。
tar zcvhf /backup/172.16.1.31/system_backup_$(date +%F_%A).tar.gz ./var/spool/cron/root ./etc/rc.local ./server/scripts ./etc/sysconfig/iptables
rsync -avz /backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password需要確保備份的數(shù)據(jù)盡量完整正確,在備份服務(wù)器上對備份的數(shù)據(jù)進(jìn)行檢查,把備份的成功及失敗結(jié)果信息發(fā)給系統(tǒng)管理員郵箱中。
a 驗證數(shù)據(jù)傳輸完整性
第一個步驟: 客戶端生成文件指紋信息
生成指紋信息
find /backup/ -type f -name "*.tar.gz"|xargs md5sum >/backup/172.16.1.31/finger.txt
第二個步驟: 服務(wù)端對文件指紋信息進(jìn)行對比
find /backup/ -type f -name "finger.txt"|xargs md5sum -c >/tmp/check_data.txt
b 對驗證結(jié)果進(jìn)行郵件告知運維人員
mail -s "backup_data_notify" 17778058507@163.com </tmp/check_data.txt
第3章 綜合起來寫成腳本
3.1 全網(wǎng)備份腳本
3.1.1 客戶端(推送數(shù)據(jù)端)腳本
[root@nfs01 backup]# cat /server/scripts/backup.sh
#!/bin/bash
Backup_Dir="/backup"
Backup_IP="$(hostname -i)"
# 00\. create dir info
mkdir $Backup_Dir/$Backup_IP -p
mkdir -p /server/scripts
touch /etc/sysconfig/iptables
# 01\. compress data
tar zchPf $Backup_Dir/$Backup_IP/system_backup_$(date +%F_%A).tar.gz /var/spool/cron/root /etc/rc.local /server/scripts /etc/sysconfig/iptables
# 02\. create finger file
find $Backup_Dir/ -type f -name "*.tar.gz"|xargs md5sum >$Backup_Dir/$Backup_IP/finger.txt
# 03\. push date info
rsync -az $Backup_Dir/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
# 04\. delete 7 day ago
find $Backup_Dir/ -type f -name "*.tar.gz" -mtime +7 -delete
3.1.2 備份服務(wù)服務(wù)端腳本:
#!/bin/bash
#01\. check data info
find /backup/ -type f -name "finger.txt"|xargs md5sum -c >/tmp/check_data.txt
#02\. sent notify mail
mail -s "backup_data_notify" 17778058507@163.com </tmp/check_data.txt
#03\. delete 180 day ago
find /backup -type f -name "*.tar.gz" -mtime +180 ! -iname "*_monday.tar.gz" -delete