Помощь со скриптом crontab [дубликат]

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

Я хочу, чтобы 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 в 16:02

2 ответа

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

No MTA installed, discarding output

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

ИЛИ

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

0
ответ дан 12 December 2017 в 16:02

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

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

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

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

0
ответ дан 12 December 2017 в 16:02

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

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