Есть скрипт написанный на bash результаты выполнения которого отсылаются по почте. Скрипт запускается cron-ном. Если запустить скрипт из командной строки то всё работает нормально, если его запускает по расписанию cron то результаты не отсылаются по почте, причём раньше всё работало.
Вот команда в скрипте для отправки письма:
echo «сообщение» | mutt -s «тема письма» «адресс куда слать»
Mutt работает вместе с МТА ssmtp
Вот строки из конфига mutt относящегося к ssmtp:
set sendmail=«/usr/local/sbin/ssmtp» # путь к ssmtp
set realname=«WWWWWWW» # имя отправителя
set from=«почтовый адресс куда слать письмо» # e-mail отправителя
Вот конфиг ssmtp:
WWWWWWW=почтовый адресс куда слать письмо # от чьего имени шлем письма
mailhub=ip почтового сервера:25 # smtp-сервер и порт
hostname=имя этого хоста на котором всё это работает # имя нашего хоста, желательно вписать верное
UseTLS=Yes # используем зашифрованное соединение
AuthUser=почтовый адресс куда слать письмо # логин
AuthPass=XXXXXXXXXX # пароль
FromLineOverride=Yes # Поле From: может задавать mutt
где WWWWWWWWW имя пользователя заведённого в системе и от которого шлём письма, его id 0 тоесть он является root, но имя имеет не root а другое.
cron запускается от root
Вот файл пользователя crontab /usr/local/var/spool/cron/WWWWWWW:
00 20 * * * /home/WWWWWWWW/scripts/backup.sh
Вот файл /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin
MAILTO=«»
HOME=/home/WWWWWWW
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR
#sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * command to be executed
В логах cron вот что:
Nov 29 16:39:13 xxxxxx crontab[5824]: (root) BEGIN EDIT (WWWWWWW)
Nov 29 16:39:19 xxxxxx crontab[5824]: (root) REPLACE (WWWWWW)
Nov 29 16:39:19 xxxxxx crontab[5824]: (root) END EDIT (WWWWWWW)
Nov 29 16:39:41 xxxxxx crontab[5827]: (root) LIST (WWWWWWWW)
Nov 29 16:40:01 xxxxxx /usr/local/sbin/crond[5464]: (WWWWWWW) RELOAD (/usr/local/var/spool/cron/WWWWWWWW)
Nov 29 16:40:01 xxxxxx /USR/LOCAL/SBIN/CROND[5830]: (WWWWWWW) CMD (/home/WWWWWWWW/scripts/backup.sh)
Nov 29 16:40:41 xxxxxx /USR/LOCAL/SBIN/CROND[5839]: (CRON) EXEC FAILED (/usr/sbin/sendmail): No such file or directory
Nov 29 16:40:41 xxxxxx CROND[5830]: /.
Nov 29 16:40:41 xxxxxx /USR/LOCAL/SBIN/CROND[5829]: (WWWWWWWW) MAIL (mailed 96 bytes of output but got status 0x0001 )
где xxxxxx имя этого хоста
WWWWWWWW имя пользователя заведённого в системе и от которого шлём письма, его id 0 тоесть он является root, но имя имеет не root а другое.
настораживает строка: mailed 96 bytes of output but got status 0x0001
в общем проблему так и не решил, причём ничего не менялось и раньше всё работало и главное что из командной строки всё работает.
Если кто знает в чём причина помогите пожалуйста, или хотя бы подскажите где искать причину.
За помощь заранее благодарен.
Ответ на:
комментарий
от GotF
Ответ на:
комментарий
от v4567
Ответ на:
комментарий
от GotF
Ответ на:
комментарий
от v4567
Ответ на:
комментарий
от mky
Ответ на:
комментарий
от v4567
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Cron (2007)
- Форум отучить cron передавать почту (2005)
- Форум Cron невыполняет скрипт (2014)
- Форум Cron от root'а (2009)
- Форум Проблема с кроном! Помогите! это срочно! (2005)
- Форум [slack] cron (2008)
- Форум Как вычислить, откуда берет задание cron? (2013)
- Форум трабла с cron (2003)
- Форум openwrt не работает cron (2013)
- Форум не работает cron (2012)