如何安装 /etc/crontab 的更改

如何安装 /etc/crontab 的更改

如果我想在系统的 /etc/crontab 中添加行,我该怎么做才能使它们生效?


背景:

我正在尝试设置一台装有 Ubuntu 13.04 的机器,以便它在工作日自动锁定/解锁显示器(它挂在墙上)。

我通过将以下内容添加到我的 /etc/crontab 来完成此操作:

00 18  * * mon-fri myuser export DISPLAY:=0 && gnome-screensaver-command -a
00 18  * * mon-fri myuser export DISPLAY:=0 && xset dpms force standby
00 08  * * mon-fri myuser export DISPLAY:=0 && gnome-screensaver-command -d
00 08  * * mon-fri myuser export DISPLAY:=0 && xset dpms force on

单个命令运行正常,但我尝试通过将分钟/天设置为即将到来的分钟来测试 crontab 条目。例如,在下午 1:26,我将前两列设置为 27 13,然后等到下一分钟。但命令似乎没有执行。我也尝试运行sudo crontab /etc/crontab,但似乎没有帮助。

答案1

首先,您可能需要指定所有命令的路径。例如:

00 08  * * mon-fri DISPLAY=:0 /usr/bin/xset dpms force on

或者,你可以在 crontab 文件的顶部放置一行 PATH。请参阅man 5 crontab

其次,系统应该通过电子邮件发送 cron 输出给您。检查其中是否有错误消息。

答案2

经过进一步调试,我确定正在运行sudo crontab /etc/crontab实际上是重新加载 crontab 并且正在运行我的命令。看起来这只是特定命令的问题。我能够通过echo "test" >> /home/myuser/test.txt &&在命令开头添加来确定这一点。

相关内容