Debian备份bashscript

我正在托pipe我自己的Web服务器,并希望定期对我的文件进行备份。 所以我决定写一个bash脚本。 但是,我坚持这个:

#!/bin/bash # /etc/init.d/backup # version 0.3.9 2012-08-13 (YYYY-MM-DD) backup(){ NOW=`date "+%Y-%m-%d_%Hh%M"` tar -czvf Backup${NOW}.tar.gz /var/www/ mv Backup${NOW}.tar.gz /home/user/backup/ } exit 0 

我想知道我将如何运行它,如何在特定的时间使它每天运行。

任何帮助?

我会build议使用rsync,

Rync备份脚本 – 这将为今天做一个备份文件夹,然后sycn昨天文件今天然后rsync今天将被备份。

 #!/bin/sh mkdir -p /storage/backups/`date +\%Y-\%m-\%d`-`date +\%A`/ rsync -avz /storage/backups/`date --date=yesterday +\%Y-\%m-\%d`-`date--date=yesterday +\%A`/ /storage/backups/`date +\%Y-\%m-\%d`-`date +\%A`/ rsync -avz -e ssh /var/www/ /storage/backups/`date +\%Y-\%m-\%d`-`date +\%A`/ # Definitions sevendaysago=$(date --date='6 days ago' +%Y-%m-%d-%A) # Delete backups from 7 days ago rm -rf /storage/backups/$sevendaysago 

你将需要运行这个脚本来使脚本可以运行

 chmod u+x script.sh 

在cron中,你只需要通过crontab -e来添加

 @daily sh backupscript 

从我的博客采取

首先,这个脚本不会做任何事情。 您只是定义了一个函数backup ,并没有调用它。 只需在exit 0下面添加一行

 backup 

Cron是定期运行特定任务/脚本的最佳工具。