Я использовал следующую почтовую команду в моем crontab, которая работала безупречно, пока мы не установили наш почтовый сервер в прошлую пятницу:
echo "Testing 123" | mail -s "ECS PostDate Processed" "layton.everson@gmail.com chrish@mycreditcompany.com" -- -r "noreply@mycreditcompany.com" -F "ServerCronJobs"
ранее «-» направлял параметры командной строки на sendmail отправить от имени и добавить адрес для ответа. Теперь кажется - игнорируется и все дополнительные параметры обрабатываются как адреса электронной почты. поэтому письмо будет отправлено:
from root <root@mycompany.com>
to me, chrish, -r, noreply, -F, ServerCronJobs
Чего не хватает сейчас?
mail
указывает на одну из альтернатив.
ls -l /usr/bin/mail
lrwxrwxrwx 1 root root 22 Jan 5 2011 /usr/bin/mail -> /etc/alternatives/mail
ls -l /etc/alternatives/mail
lrwxrwxrwx 1 root root 18 Jan 5 2011 /etc/alternatives/mail -> /usr/bin/bsd-mailx
Возможно, вы использовали другую почтовую программу в прошлом. Попробуйте выяснить, что это было.
После того, как вы установили правильный пакет, измените альтернативу следующим образом:
sudo update-alternatives --config mail
Как уже отмечали другие, это ссылка на /etc/alternatives/mail
.
вы можете видеть, что (если у вас есть какой-либо пакет, который предоставляет его уже установлен) по readlink /usr/bin/mail
и найти существующий пакет по readlink -f /usr/bin/mail
Он предоставляется любым пакетом, который предоставляет mail-reader
вы можете искать для одного с apt-cache search mail-reader
лично я использую bsd-mailx
.