最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
完全備份數(shù)據(jù)和差異備份數(shù)據(jù)的shell腳本-創(chuàng)新互聯(lián)
#!/bin/bash  # # Description: 該腳本功能,以周為單位循環(huán);周五實行完全備份,周六不備份,周日至周四實行差異備份; #              因工作需要,不實行壓縮打包的方式,采用cp完全備份,rsync差異備份; #              若要使用該腳本,請直接修改下面的兩個參數(shù):BackupPath和DATAPath,其他地方請不要修改; # DATE: 2017-04-24 22:43:00 # MODIFY DATE: 2017-08-28 17:20:00   #     VERSION: 2.0 #      Author: xixi_chan # 導(dǎo)入PATH環(huán)境變量 export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/bin:/sbin:/root/bin # 重新定義IFS變量避免目錄或文件名存在空格時被分割 IFS=`echo -en "\n\b"` # 定義全局變量 BackupPath=/mnt/backup_data/# 指定備份路徑  MountPath=//ds-bk01/drv-y# 指定windwos備份服務(wù)器共享路徑 DATAPath=/data/  # 需要備份的目錄   Time=`date +%Y-%m-%d`# 定義Today的時間變量 Host=`echo $HOSTNAME | awk -F'.' '{print $1}'`# 定義主機名 LogFile="/var/log/${Host}/${Host}_${Time}.log"  # 定義日志文件名稱 LogDir=`echo "$LogFile" | sed -r 's@[^/]+/?$@@g'`# 定義日志文件所在的目錄 DirFile=`ls $DATAPath`# 將備份路徑下的文件及目錄保存至變量DirFile中 FirstFile="${BackupPath}${Host}_${Time}/`basename ${DATAPath}`/"  # 根據(jù)時間定義當前備份的目錄 OldFirstFile="${BackupPath}${Host}_$(date +%Y-%m-%d --date='7 days ago')"# 定義7天前的備份目錄 Mail_Group="[email protected]"    # 定義收件人 username=user    # 定義掛載備份服務(wù)器的用戶名 password=password    # 定義掛載備份服務(wù)器的密碼 # 記錄日志文件的開頭部分 Head() { [ ! -d $LogDir ] && mkdir $LogDir echo "[ 日文 ] このメッセ?ジはAB Linuxサ?バを介して、このメッセ?ジを介してs-smb01サ?バのデ?タバックアップを??するために送信されます。" > $LogFile echo "[ 中文 ] 這封郵件是通過AB的linux服務(wù)器發(fā)出來的,通過這封郵件來確認s-smb01服務(wù)器的數(shù)據(jù)備份情況!" >> $LogFile 2>&1 echo  >> $LogFile 2>&1 echo "---------------------The backup starts----------------------" >> $LogFile  echo  >> $LogFile 2>&1 echo "Start Backup $DATAPath $(date +"%y-%m-%d %H:%M:%S")"  >> $LogFile 2>&1  echo  >> $LogFile 2>&1 echo "---------------------The backup starts----------------------"  >> $LogFile 2>&1  echo  >> $LogFile 2>&1 echo  >> $LogFile 2>&1 } # 日志的結(jié)束部分 end(){ echo  >> $LogFile 2>&1 echo  >> $LogFile 2>&1 echo "---------------------The backup ends ----------------------"  >> $LogFile 2>&1 echo  >> $LogFile 2>&1 echo " $DATAPath backup ends            $(date +"%y-%m-%d %H:%M:%S")"  >> $LogFile 2>&1 echo  >> $LogFile 2>&1 echo "---------------------The backup ends ----------------------"  >> $LogFile 2>&1 } # 完全備份 FullBackup(){ echo "Today is week: `date +%a`, Start performing a full backups..." >> $LogFile 2>&1 echo  >> $LogFile 2>&1 echo  >> $LogFile 2>&1 if [ -d $OldFirstFile ];then      rm -rf $OldFirstFile  >> $LogFile 2>&1       echo "[ $OldFirstFile ] Delete Old File Success!`date`"  >> $LogFile 2>&1 [ ! -d $FirstFile ] && mkdir -pv $FirstFile   >> $LogFile 2>&1 cd $DATAPath for File in $DirFile; do cp -a ${File}  $FirstFile  >> $LogFile 2>&1 if [ $? -eq 0 ];then echo "[ ${DATAPath}${File} ] Backup Success!`date`"  >> $LogFile 2>&1  fi done else if [ ! -d $FirstFile ];then mkdir -pv $FirstFile  >> $LogFile 2>&1  cd $DATAPath for File in $DirFile; do cp -a ${File}  $FirstFile  >> $LogFile 2>&1  if [ $? -eq 0 ];then echo "[ ${DATAPath}${File} ] Backup Success!`date`"  >> $LogFile 2>&1  fi done else echo "[ $DATAPath ]The Backup File is exists,Can't Backup!`date`"  >> $LogFile 2>&1  fi fi    } # 差異備份 DiffBackup() { echo "Today is week: `date +%a`, Start performing differential backups..." >> $LogFile 2>&1 echo  >> $LogFile 2>&1 echo  >> $LogFile 2>&1 if [ -d $OldFirstFile ];then         rm -rf $OldFirstFile  >> $LogFile 2>&1         echo "[ $OldFirstFile ] Delete Old File Success!        `date`"  >> $LogFile 2>&1         [ ! -d $FirstFile ] && mkdir -pv $FirstFile   >> $LogFile 2>&1         rsync --dry-run -racnC --out-format="%n"  $DATAPath $d_dir | grep -v "/$" | xargs -I{} rsync -R -a -z ${DATAPath}/./{} $FirstFile if [ $? -eq 0 ];then echo "[ ${DATAPath}${File} ] Backup Success!`date`"  >> $LogFile 2>&1  fi else         if [ ! -d $FirstFile ];then                 mkdir -pv $FirstFile  >> $LogFile 2>&1                 rsync --dry-run -racnC --out-format="%n"  $DATAPath $d_dir | grep -v "/$" | xargs -I{} rsync -R -a -z ${DATAPath}/./{} $FirstFile if [ $? -eq 0 ];then echo "[ ${DATAPath}${File} ] Backup Success!`date`"  >> $LogFile 2>&1  fi         else                 echo "[ ${DATAPath} ]The Backup File is exists,Can't Backup!      `date`"  >> $LogFile 2>&1         fi fi } # 日志開始部分 Head # 判斷是否掛載//ds-bk01/drv-y,如果沒有則掛載,如果掛載不成功則退出腳本,并記錄至日志文件 mount | grep $MountPath >> $LogFile 2>&1 if [ $? -eq 0 ];then         echo "[ $Host ] has successfully installed backup server shared directories: [ $MountPath ] to local: [ $BackupPath ] ... " >> $LogFile 2>&1         echo  >> $LogFile 2>&1 else         echo "[ $Host ] does not mount a backup server shared directory: [ $MountPath ] ..."  >> $LogFile 2>&1         mount.cifs -o username=$username,password=$password,dir_mode=0777,file_mode=0777 $MountPath $BackupPath         if [ $? -eq 0 ]; then                 echo "Mount successfully!" >> $LogFile 2>&1         else                 echo "[ $Host ] failed to mount backup server shared directory: [ $MountPath ] to local: [ $BackupPath ] ..." >> $LogFile 2>&1                 echo "Mount again, please!" >> $LogFile 2>&1                 echo "The shell script has exited..." >> $LogFile 2>&1 end                 mail -s  "From [ $Host ] backup information [ $Time ]" $Mail_Group < $LogFile                 exit 8         fi fi # 備份策略的變量 a=`date +%u`# 定義Today是星期幾 b=7 # 定義多少天循環(huán)一次完全備份和差異備份,這里定義為7天循環(huán)一次,如果要增大循環(huán)天數(shù),請修改此處 c=5# 這里5代表是周五完全備份,如果要改成周六完全備份,請修改為6,注意:c與d的值不能相同 d=6# 定義每周6不備份數(shù)據(jù),注意:c與d的值不能相同 # 注意,下面的語句很重,判斷Today是否大于$c,定義變量ago將采用不同的表達式計算 if [ "$a" -gt "$c" ]; then   ago=$[ $a - $c ]# 定義Today離$c有多少天 else   ago=$[ $a + $b - $c ]  # 定義Today離$c有多少天 fi d_dir=${BackupPath}${Host}_$(date +%Y-%m-%d -d "`echo $ago` days ago")/`basename ${DATAPath}`/ # 獲取完全備份數(shù)據(jù)后的目錄路徑 #date +%Y-%m-%d -d "`echo $ago` days ago"  # 定義備份策略 if [ "$a" -eq "$c" ]; then FullBackup elif [ "$a" -eq "$d" ]; then echo "Today is Saturday 6, according to the backup strategy, today no data backup." >> $LogFile 2>&1 else DiffBackup fi # 日志結(jié)束部分 end # 備份完成后發(fā)送郵件至指定郵箱 mail -s  "From [ $Host ] backup information [ $Time ]" $Mail_Group < $LogFile exit 0

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)東安免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了近1000家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
分享名稱:完全備份數(shù)據(jù)和差異備份數(shù)據(jù)的shell腳本-創(chuàng)新互聯(lián)
文章路徑:http://fisionsoft.com.cn/article/dihgod.html