Я на Ubuntu 14.04 (используя Digital Ocean) пытаюсь запустить скрипт от имени пользователя root. Это скрипт, который проверяет, работает ли сервер, и перезапускается в случае сбоя.

Проблема не в скрипте, но crontab не будет запускать скрипт.

sudo crontab -e

#!/bin/bash
SHELL=/bin/bash
* * * * * /bin/bash /root/launch.sh
#newline

-rwxr-xr-x 1 root root 845 Nov 23 06:21 launch.sh

Не уверен, что я делаю неправильно, другие посты о crontabs показали похожие ответы на этот.

1 ответ1

0

Я нашел ответ на свою проблему.

Я добавил свои команды bash в /etc/crontab и добавил root поле вместо использования sudo crontab -e

SHELL=/bin/bash
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 )
*  *    * * *   root    bash /root/launch.sh

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .