Вызов mailx из колла

У меня была проблема с тем, что gmail блокировал электронные письма, отправленные с помощью mailx. Я решил это, установив соответствующий файл ~ / .mailrc, который выглядит так:

set smtp-use-starttls set nss-config-dir=/home/theuser/.certs set ssl-verify=ignore set smtp=smtp://smtp.gmail.com:587 set smtp-auth=login set smtp-auth-user=xxx set smtp-auth-password=yyy set from="rabbitovh@thehologram.com(Rabbit Server)" 

Итак, теперь, когда я запускаю:

 echo "hi" | mailx xxx@gmail.com 

мои письма отправляются успешно как пользователь и как root.

Теперь я хочу, чтобы cron тоже работал. Я изменил «/ etc / sysconfig / crond», чтобы заставить его использовать mailx, с:

 CRONDARGS="-m /usr/bin/mailx" 

У меня есть ~ / .mailrc setup:

  • /root/.mailrc
  • /home/theuser/.mailrc
  • /etc/.mailrc

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

Crontab выглядит (и я проверил, скрипты работают и выполняют свою работу, и эхо, просто cron не отправляет электронные письма):

 MAILTO="xxx@gmail.com" # Every minute check processes are running, restart if necessary and send an email. * * * * * source /home/theuser/.bashrc; global audit_regular # Every day, send an email describing the state of the host and its jobs. 0 5 * * * source /home/theuser/.bashrc; global audit_daily # Every Monday at 7am, archive the logs. 0 7 * * 1 source /home/theuser/.bashrc; global archive_logs 

Кроме того, этот crontab настроен на другом хосте и отправляет письма в порядке.

One Solution collect form web for “Вызов mailx из колла”

mailx отправляет почту, если вы передаете ей адрес назначения в командной строке. Когда вы запускаете его без аргументов, он считывает интерактивные команды со своего стандартного ввода. Остерегайтесь, чтобы ваши тесты загружали мусор, который интерпретировался как команды; некоторые из этих команд могут повредить ваши почтовые ящики, рассылать электронные письма и т. д.

Скажите mailx для запуска mailx -t , который ожидает полного электронного сообщения с заголовками на стандартном входе.

Из беглого экзамена не похоже, что вы можете передать команду с параметрами через скрипт запуска crond. Поэтому напишите оболочку оболочки /usr/local/sbin/mailx-t

 #!/bin/sh exec mailx -t 

и поместите CRONDARGS="-m /usr/local/sbin/mailx-t" в /etc/sysconfig/crond .

  • Отправить письмо с mailx / msmtp работает только для пользователя root
  • отправить html с помощью mailx
  • Как заставить команду «mail» работать с помощью SSH?
  • Unix-команда «mail», отправьте почту в адрес .onion address
  • mail / mailx: Как указать получателей с полными именами?
  • Как отобразить всю строку сюжета в `mail`?
  • восстановить электронную почту с учетной записи imap с помощью mailx
  • Использование Mailx с Gmail
  • Не удалось выполнить рукопожатие Mailx SSL / TLS: Неизвестная ошибка -5938
  • Прикрепления отсутствуют, когда несколько файлов прикреплены по почте
  • Избегайте сценария bash, ожидающего пользователя, введите ключ Enter
  • Linux и Unix - лучшая ОС в мире.