这是在 Apache2 中设置cron以更新 Let's Encrypt 证书的正确方法吗?我使用 Ubuntu 16.04。
@monthly letsencrypt renew && service apache2 reload
Run Code Online (Sandbox Code Playgroud) 我已经安排了一个 cron 作业每分钟运行一次,但有时脚本需要超过一分钟才能完成,我不希望这些作业开始“堆积”。我猜这是一个并发问题 - 即脚本执行需要相互排斥。
为了解决这个问题,我让脚本查找特定文件(“ lockfile.txt ”)的存在touch,如果存在则退出,如果不存在则退出。但这是一个非常糟糕的信号量!是否有我应该知道的最佳实践?我应该写一个守护进程吗?
我服务器的控制面板上有这样的字段
分钟 - 小时 - 月中的某天 - 月 - 星期几 - 命令
如何使用此字段创建在每月第一天运行的 cron 作业?
我有如下所示的 cron 作业,并希望它每 2 小时运行一次,但它每 2 分钟运行一次。
有人能告诉我我哪里出错了吗?
* */2 * * * /path-to-script
Run Code Online (Sandbox Code Playgroud) 旧 crontab 文件中的第一个非注释行以五个星号开头:
* * * * * ([a_command]) >/dev/null 2>&1
Run Code Online (Sandbox Code Playgroud)
作者已经走了,所以我不知道他们的意图。 全通配符对 (Solaris 8) cron 意味着什么? 这里的赌注要么运行一次,要么连续运行,要么永不运行,不幸的是,这很广泛。
如果您想知道前面的注释行,那就是“不要删除”。
注意:此 cron 文件正在运行。这个问题不是关于损坏的 cron 文件或需要故障排除的 cron 文件的问题的重复。
我在 LAMP 设置上有一个这样的 crontab:
0 0 * * * /some/path/to/a/file.php > $HOME/cron.log 2>&1
Run Code Online (Sandbox Code Playgroud)
这会将文件的输出写入cron.log。但是,当它再次运行时,它会覆盖文件中以前的任何内容。
如何让 cron输出到文件名中带有时间戳的文件?
一个示例文件名是这样的:2010-02-26-000000-cron.log
我并不真正关心格式,只要它有某种时间戳即可。
提前致谢。
今天是 2016 年 11 月 1 日或(明确的)数字,2016-11-01。
我有一个像这样设置的用户 cron 作业:
# m h dom mon dow command
33 3 1 */2 * /home/user/...
Run Code Online (Sandbox Code Playgroud)
它应该在每个月的第一天凌晨 3:33 每隔一个月运行一次,无论那是一周中的哪一天,但由于某种原因,它今天运行,即使 11 不能被 2 整除。
有人可以向我解释这个吗?我对可被 2 整除的假设是错误的吗?
编辑:我忘了说,我cron在 Debian 8.6“Jessie”机器上运行版本“3.0pl1-127+deb8u1”。
crontab 中的命令是否有字符限制?
我有一个带有 178 个字符命令的 crontab,它在执行时似乎在 164 处被截断。我可以从我收到的电子邮件和从那时起改变的 vi 颜色中分辨出这个数字。
那么,这是“官方”限制吗?我找不到任何关于此的文档。
我有一个 centos 服务器,我想每两天晚上 11 点在它上面运行一个作业,我该怎么做?