免费A级毛片无码专区网站-成人国产精品视频一区二区-啊 日出水了 用力乖乖在线-国产黑色丝袜在线观看下-天天操美女夜夜操美女-日韩网站在线观看中文字幕-AV高清hd片XXX国产-亚洲av中文字字幕乱码综合-搬开女人下面使劲插视频

liunx文件定期本地備份、異地備份、刪除備份腳本

導(dǎo)航
一.背景二.依賴功能介紹三.本地備份腳本四.異地備份腳本五.定期刪除備份六.github腳本地址
- - - - - - - - - - 分割線 - - - - - - - - - -
一.背景1.總會出出現(xiàn)環(huán)境上的數(shù)據(jù)丟失 , 在沒有備份的情況下會非常的被動 , 不管是由于病毒還是人為的原因造成的程序、數(shù)據(jù)被刪除 , 有時候后悔已經(jīng)來不及 , 不如提前做到數(shù)據(jù)的備份 , 而異地備份也更加的保險一點(diǎn) 。2.數(shù)據(jù)備份的意義就在于 , 當(dāng)受到網(wǎng)絡(luò)攻擊、入侵、電源故障或者操作失誤等事故的發(fā)生后 , 可以完整、快速、簡捷、可靠地恢復(fù)原有系統(tǒng) , 在一定的范圍內(nèi)保障系統(tǒng)的正常運(yùn)行 。
二.依賴功能介紹1.expect作用:expect工具是一個根據(jù)腳本與其他交互式程序進(jìn)行交互安裝語句:yum install expect參考文檔:https://www.cnblogs.com/mrwhite2020/p/16769739.html
2.cron作用:可以根據(jù)配置文件約定的時間來執(zhí)行特定的任務(wù)參考文檔:Linux Crontab 定時任務(wù):https://www.cnblogs.com/mrwhite2020/p/15313228.htmlcron表達(dá)式:https://www.cnblogs.com/mrwhite2020/p/15195550.html
3.liunx的三個時間atime,mtime,ctime作用:定期刪除備份時一般備份文件的mtime來進(jìn)行刪除參考文檔:https://www.cnblogs.com/mrwhite2020/p/16754506.html
三.本地備份腳本1.本地備份命令測試
mkdir -p /root/backup/`date "+%Y-%m-%d"`tar -zcvPf /root/backup/`date "+%Y-%m-%d"`/test20221009.tar.gz /root/test20221009

liunx文件定期本地備份、異地備份、刪除備份腳本

文章插圖
2.封裝shell腳本:compress_backup.sh
#!/bin/bashsource_folder=/root/test20221009backup_folder=/root/backup/`date "+%Y-%m-%d"`source_folder_name=`echo $source_folder |awk -F "/" '{print $3}'`.tar.gzecho "source_folder:$source_folder"echo "backup_folder: $backup_folder"echo "source_folder_name: $source_folder_name"#新建立文件夾mkdir -p /root/backup/`date "+%Y-%m-%d"`#壓縮命令tar -zcvPf $backup_folder/$source_folder_name  $source_folderecho "$source_folder_name文件備份成功"
liunx文件定期本地備份、異地備份、刪除備份腳本

文章插圖
3.加入crond定時任務(wù)并將輸出與錯誤重定向至文件
編輯添加crond定時任務(wù)列表
crontab -e設(shè)置每天00:00執(zhí)行一次備份任務(wù) , 并將標(biāo)準(zhǔn)輸出與標(biāo)準(zhǔn)錯誤重定向至日志文件
0 0 * * * sh /root/backup/compress_backup.sh 2>&1 > /root/backup/log_$(date +\%Y-\%m-\%d)測試查看任務(wù)執(zhí)行情況:
tail -5 /var/log/cron
liunx文件定期本地備份、異地備份、刪除備份腳本

文章插圖
查看備份文件與本地日志正確生成
liunx文件定期本地備份、異地備份、刪除備份腳本

文章插圖
四.異地備份腳本
1.異地備份命令測試:
scp -C -r /root/backup/2022-10-10/ mrswhite@192.168.37.9:/root/back_up_offsite提示輸入密碼后進(jìn)行備份
liunx文件定期本地備份、異地備份、刪除備份腳本

文章插圖
查看對端文件備份成功
liunx文件定期本地備份、異地備份、刪除備份腳本

文章插圖
 2.封裝expect腳本offsite_backup.expect , 當(dāng)提示輸入密碼時可自動對應(yīng)輸入密碼
#!/usr/bin/expect -f# 獲取當(dāng)前日期 例如:2022-10-12set date [ clock format [ clock seconds ] -format "%Y-%m-%d" ]# 傳輸用戶名set username mrswhite# 對端hostIP地址set host 192.168.37.9# 密碼set password test20221012#設(shè)置本地傳輸路徑-前綴set source_folder /root/backup#設(shè)置兌換傳輸路徑set backup_folder /root/back_up_offsite#  expect默認(rèn)timeout為30S  超過30s未傳輸完會停止 , 設(shè)置為 -1 則不限制超時時間set timeout -1#                    壓縮  遞歸   本地絕對路徑           用戶名   目標(biāo)IP   目標(biāo)路徑 spawn  /usr/bin/scp  -C   -r    $source_folder/$date/   $username@$host:$backup_folderexpect  {"*yes/no" {send "yes\r";exp_continue}"*password:" {send "$password\r"}}expect eof

經(jīng)驗總結(jié)擴(kuò)展閱讀