linux自動備份檔案 並上傳到遠程伺服器 指令碼實現

來源:互聯網
上載者:User

標籤:bsp   log   datetime   linux   rda   Owner   desc   時間   art   

(1)在伺服器上建立備份目錄,並賦予許可權

      mkdir -p /backup/bakdata  #建立資料備份目錄
(2)完成備份指令碼操作
建立指令檔
      vi bakdata.sh
添加以下內容:

     #!/bin/sh
     dateTime=`date +%Y_%m_%d`    #當前系統時間
     days=7    #刪除7天前的備份資料s
     orowner=bakuser   # 備份到此使用者下
     bakdescdir=/DATA/bakmdata     #備份檔案到該路徑
     bakdata=$orowner"_"$dateTime.tar.gz   #備份檔案名
     baklog=$orowner"_"$dateTime.log    #備份日誌
     baksrcdir=/DATA/www/moodledata   #需要備份的檔案
     remotePath=/DATA/moodle/bakmooldedata   #遠程伺服器的路徑

     cd $bakdescdir    #進入備份目錄
     mkdir -p $orowner   #按需要備份的使用者建立目錄   
     cd $orowner   #進入目錄
     echo "backup start at $dateTime" > $baklog
     echo "--------------------------" >>$baklog
     tar -zcvf $bakdata $baksrcdir $baklog    #壓縮備份檔案和記錄檔

    find $bakdescdir/$orowner -type f -name "*.log" -exec rm {} \;   #刪除記錄檔
    find $bakdescdir/$orowner -type f -name "*.tar.gz" -mtime +$days -exec  rm -rf {} \;#刪除7天前的備份(注意:{} \中間有空格)
    scp  $bakdescdir/$orowner/$bakdata 10.6.108.79:$remotePath  #上傳到遠程伺服器
(3)添加指令碼執行許可權
chmod +x /backup/oracledata/ordatabak.sh 

  #添加指令碼執行許可權
(4)編輯系統任務執行計畫
crontab -e
輸入一下資訊“:

00 01 * * * /DATA/bakdata/bakdata.sh#每天淩晨1點,以oracle使用者執行ordatabak.sh備份檔案

:wq! #儲存退出

重啟crontab

service crond restart

從此每天的淩晨1點 系統會自動完成資料庫的備份,壓縮,並上傳到遠程伺服器的指定路徑下

linux自動備份檔案 並上傳到遠程伺服器 指令碼實現

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.