一、 編寫腳本
編寫一個腳本文件,使腳本可以執行備份命令。
例如,將文件目錄 /home/backups/balalala 備份到/home目錄下,並壓縮。
1. 創建腳本
命令格式: touch 路徑/文件名.sh
例如:
輸入命令:touch /home/backup.sh
2. 寫入命令
首先進入腳本:vi命令
vi /home/backup.sh
在腳本內寫入:
1
2
3
4
5
6
7
8
9
10
11
12
|
#!/bin/sh
mkdir
/home/beifen
#創建一個臨時文件(要保存備份的路徑)
cp -r /home/backups/balalala /home/beifen
#數據存在backups目錄下,備份到beifen目錄下,所以先將數據拷過來
tar -zcPvf /home/backup$(
date
+%Y%m%d).tar.gz /home/beifen
#將數據所在文件夾beifen打包
rm -rf /home/beifen/
#刪除臨時文件內容
find ./ -mtime +30 -name
"*.tar.gz"
-
exec
rm -rf {} \;
#刪除改文件夾下超過30天的文件
|
3. 執行腳本文件
直接手動執行腳本文件。
命令格式:sh 路徑/文件名.sh
例如:sh /home/backup.sh
二、 設置定時執行本腳本。
例如:設置腳本每7天執行一次。
1. 安裝crond
如果沒有安裝crond服務就先裝上服務。
檢查服務狀態:service crond status
2. 修改crontab內容
輸入命令:crontab –e
進入后繼續輸入命令:0 0 /7 * sh /home/backup.sh ---->一定要加上sh命令
設置為每7天執行一次腳本文件
然后,保存退出:wq
sh腳本前面五個字段分別表示分鍾(0-59)、小時(0-23)、日(1-31)、月(0-12)、星期幾(0-6)后面的為腳本所在目錄 --->一定要加上sh命令
3. 重新啟動crond服務
輸入命令:service crond restart
至此配置完成!
1
2
3
4
5
6
7
8
9
10
11
|
#! /bin/sh
mkdir
/home/plantask/temp
#創建一個臨時文件 保存備份的路徑
cp -r /www/xilan /home/plantask/temp
#數據存在plantask目錄下,備份到temp目錄下,所以先將數據拷過來
tar -zcPvf /www/backups/xilan$(
date
+%Y%m%d%H%M%S).tar.gz /home/plantask/temp -->時間精確到毫秒
#將數據所在文件夾plantask打包
rm -rf /home/plantask/temp
#刪除臨時文件內容
find ./ -mtime +30 -name
"*.tar.gz"
-
exec
rm -rf {} \;
|
crontab
1
2
|
0 */1 * * * sh /home/plantask/backup.sh #每小時執行一次
*/1 * * * * sh /home/plantask/backup.sh #每分鍾執行一次 用於調試
|