Kan*_*kit 6 cron configuration
我是 linux 用户的新手
我尝试运行 crontab 以使用 vagrant 用户备份我的数据库
* * * * * /usr/bin/mysqldump -h localhost -u root -p root mydb | gzip > /var/backup/all/database_`date +%Y-%m-%d`.sql.gz >/dev/null 2>&1
Run Code Online (Sandbox Code Playgroud)
当 crontab 运行时,文件夹中没有备份文件(我的备份/所有人都有权限方案755
)。
这是错误来自 /var/log/syslog
Aug 16 11:55:01 precise64 CRON[2213]: (vagrant) CMD (/usr/bin/mysqldump -h localhost -u root -p root mydb | gzip > /var/backup/all/database_`date +%Y-%m-%d`.sql.gz >/dev/null 2>&1)
Aug 16 11:55:01 precise64 CRON[2212]: (CRON) info (No MTA installed, discarding output)
Run Code Online (Sandbox Code Playgroud)
所以我认为
>/dev/null 2>&1
禁用 crontab 将其发送到电子邮件为什么会出错?mdp*_*dpc 11
当然,错误在于您没有实施和激活邮件程序(sendmail、postfix 等)。
话虽如此,您的另一个问题是 >/dev/null 2>&1 ONLY 仅适用/关联到在这种情况下 gzip 的 LAST 命令。因此,您的mysqldump 必须有某种类型的输出到STDERR。
做我认为你想要的正确方法是:
* * * * * (command | command ) >/dev/null 2>&1
Run Code Online (Sandbox Code Playgroud)