问题描述
Ubuntu 支持 crontab 中的 @reboot
吗?
我发现文档表明它受支持,但网络聊天断言它不支持。
我无法使 @reboot
部分工作。\n”after midnight” 部分工作正常。
这是我的 /etc/crontab
的测试示例:
$ cat /etc/crontab
# /etc/crontab: system-wide crontab
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
##
# in the beginning -
@reboot /var/kiosk/btest.sh
# after midnight
30 0 * * * root /etc/cron.daily/kiosk/kioskReboot.sh
# end of crontab
shell脚本btest.sh
#!/bin/bash
date > /var/kiosk/STARTFLAG.txt
echo we booted >> /var/kiosk/STARTFLAG.txt
date
echo we booted
permissions
$ ls -l btest.sh
-rwxrwxrwx 1 root root 147 Aug 21 15:19 btest.sh
$ ls -ld
drwxrwxrwx 14 laptopsanytime root 4096 Aug 21 16:30 .
最佳思路
Ubuntu 支持 @reboot。您参赛的原因
@reboot /var/kiosk/btest.sh
在 /etc/crontab 中不起作用是因为它缺少用户字段。正确的语法是
@reboot root /var/kiosk/btest.sh