Поддерживает ли Ubuntu & ldquo; @ reboot & rdquo; в crontab?

Поддерживает ли Ubuntu @reboot в crontab?

Я нахожу документацию, подтверждающую, что она поддерживается, но веб-болтовня утверждает, что это не так.

Я не могу заставить работать секцию @reboot. Секция «после полуночи» работает нормально.

Вот пример теста из моего /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

сценарий оболочки btest.sh

#!/bin/bash
date > /var/kiosk/STARTFLAG.txt
echo we booted >> /var/kiosk/STARTFLAG.txt
date
echo we booted

разрешения

$ 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 .

23
задан 27 December 2017 в 18:33

3 ответа

@reboot поддерживается в Ubuntu. Причина, по которой ваша запись

@reboot /var/kiosk/btest.sh

не работает в / etc / crontab, заключается в том, что в ней отсутствует поле пользователя. Правильный синтаксис будет

@reboot root /var/kiosk/btest.sh
0
ответ дан 27 December 2017 в 18:33

Ubuntu 16.04.5 LTS: от имени пользователя root:

crontab -e

Добавьте следующие строки:

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
@reboot /path_to_script.sh 2>&1 >> /path_to_log.log

2> & amp; 1 >> выведет стандартный вывод в /path_to_log.log так что вы можете решить эту проблему

0
ответ дан 27 December 2017 в 18:33

Он работает 18.04 как задание, определенное в cron.d.
Я ввел это в файл задания:

PATH = / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin
@reboot root /path/to/script.sh

0
ответ дан 27 December 2017 в 18:33

Другие вопросы по тегам:

Похожие вопросы: