Справка с скриптом crontab [dубликат]

У этого вопроса уже есть ответ здесь: Как запустить приложение GUI из cron? 2 ответа

Прошу прощения за создание этой темы, но я не могу решить эту проблему самостоятельно.

Я хочу, чтобы crontab выполнял основную команду «xrandr -auto»

Я создал файл test.sh, который выглядит так.

#!/bin/bash xrandr --auto

После того, как я добавил следующую строку в crontab -e, я использовал редактор по умолчанию nano.

*/2 * * * * /home/dashboarduser/test.sh

Также пробовал вот так

*/2 * * * * root /home/dashboarduser/test.sh

Это не работает, я не знаю почему.

После некоторого поиска найденная команда grep CRON /var/log/syslog увидит содержимое файла журнала cron.

Dec 12 14:06:01 : (dashboarduser) CMD (root /home/dashboarduser/test.sh # JOB_ID_1) Dec 12 14:06:01 : (CRON) info (No MTA installed, discarding output)

Если я запустил свой скрипт в терминале -> /home/dashboarduser/test.sh, он отлично работает.

Спасибо заранее.

0
задан 12 December 2017 в 17:02

4 ответа

Прежде всего вам нужно установить MTA, чтобы получить больше ввода, например сообщение об ошибке

No MTA installed, discarding output

. См. Здесь, как это сделать.

OR

Перенаправить вывод вашего скрипта в некоторый файл, как показано здесь .

0
ответ дан 18 July 2018 в 01:20

Во-первых, убедитесь, что скрипт выполним.

Во-вторых, попробуйте запустить скрипт самостоятельно из той же учетной записи, что и cron запустит его.

Сценарий будет выполнен из учетная запись пользователя crontab. Поэтому, если вы запустили crontab -e во время входа в свою обычную учетную запись пользователя, все задания в этом crontab будут выполняться как вы.

Обратите внимание, что если у вас есть почта (например, MTA установлена) на вашем вы будете отправлены по электронной почте, когда задание cron выдает любой вывод (например, сообщения об ошибках).

0
ответ дан 18 July 2018 в 01:20

Прежде всего вам нужно установить MTA, чтобы получить больше ввода, например сообщение об ошибке

No MTA installed, discarding output

. См. Здесь, как это сделать.

OR

Перенаправить вывод вашего скрипта в некоторый файл, как показано здесь .

0
ответ дан 24 July 2018 в 17:22

Во-первых, убедитесь, что скрипт выполним.

Во-вторых, попробуйте запустить скрипт самостоятельно из той же учетной записи, что и cron запустит его.

Сценарий будет выполнен из учетная запись пользователя crontab. Поэтому, если вы запустили crontab -e во время входа в свою обычную учетную запись пользователя, все задания в этом crontab будут выполняться как вы.

Обратите внимание, что если у вас есть почта (например, MTA установлена) на вашем вы будете отправлены по электронной почте, когда задание cron выдает любой вывод (например, сообщения об ошибках).

0
ответ дан 24 July 2018 в 17:22

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

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