文章作者:Tyan
博客:noahsnail.com | CSDN | 簡書
1. 引言
工作中經常會碰到對數據進行備份的需求,常用的數據同步命令是rsync
。有時候需要定期備份數據,每次手動備份數據太麻煩,因此通常會設置一個定時任務來執行數據備份,常用的定時任務命令是crontab
。
2. rsync命令
rsync
命令可以實現本地與遠程服務器的數據同步,包括本地同步到遠程以及遠程同步到本地,數據備份通常是把本地的數據同步到遠程服務器上。數據同步腳本rsync_data.sh
如下:
#!/bin/sh
date
rsync -a -e ssh --progress /data user@server_address:/data
相關參數的含義可以參考文末的鏈接,同步的數據地址及遠程服務器地址需要修改爲自己的地址。
注意:數據同步腳本rsync_data.sh
需要具有在定時任務執行時的執行權限,使用chmod +x
命令使腳本具有可執行權限。
3. crontab命令
crontab
命令是用來設置定時任務的,可以以固定的間隔時間執行Linux命令或shell腳本。crontab -l
可以用來查看已有的定時任務列表,crontab -e
可以用來設置自己的定時任務。
4. 定期備份數據
定期備份數據的命令如下:
# 查看數據定時同步任務
$ crontab -l
0 0 6 * * /workspace/rsync_data.sh > /workspace/rsync_data.log 2>&1
0 0 6 * *
表示每個月的6號0點0分,執行腳本爲/workspace/rsync_data.sh
,執行腳本之後的輸出日誌寫入/workspace/rsync_data.log
文件中。