【发布时间】:2014-02-21 03:08:35
【问题描述】:
我正在尝试使用 tar 归档本地主机的根文件夹,并希望使用 crontab 每天自动执行它。为此,我在我的个人文件夹中创建了一个“备份文件夹”。我在 Ubuntu 12.04 上运行。
在命令行中执行 tar 没有问题:
sudo tar -cvpzf backupfolder/localhost.tar.gz /var/www
但是,当我在sudo crontab -e 中安排每日备份命令(假设在 17:00)时,它没有执行,即备份没有使用以下命令更新:
0 17 * * * sudo tar -cpzf backupfolder/localhost.tar.gz /var/www
我已经尝试了完整路径home/user/backupfolder/localhost.tar.gz,但没有成功。
var/log/syslog 为我提供了计划执行的以下输出:
Feb 2 17:00:01 DESKTOP-PC CRON[12052]: (root) CMD (sudo tar -cpzfbackupfolder/localhost.tar.gz /var/www)
Feb 2 17:00:01 DESKTOP-PC CRON[12051]: (CRON) info (No MTA installed, discarding output)
/etc/crontab 指定以下路径:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
我假设 crontab 没有执行,因为这是一个 sudo 命令。
有没有办法让它运行?如果我不想硬编码我的根密码,推荐的安全方法是什么?
【问题讨论】: