Назад | Перейти на главную страницу

sm-client не запускается: нет QueueDirectory и нет локальной почтовой программы

Я знаю, что это почти неловко, но со мной это все равно случилось.

У меня здесь есть сервер с Fedora 10 и sendmail (8.14.3). MTA используется только для отправки сообщений с локального хоста на смарт-хост. Раньше это работало нормально, за исключением того, что мне нужно было изменить этот смарт-хост, поскольку он был заменен другой машиной с другим IP-адресом и другим DNS-именем (в ходе внутренней оптимизации).

Я выполнил некоторые инструкции, которые нашел где-то на форуме, и добавил строку в почтовую таблицу, например:

aminocom.com ESMTP:[mail.aminocom.com]
where mail.aminocom.com is the name of the internal smarthost.

Затем я использовал утилиту m4 для создания новых файлов .cf и перезапустил sendmail. И бац, я получаю следующую ошибку:

service sendmail restart
Shutting down sm-client:                                   [FAILED]
Shutting down sendmail:                                    [  OK  ]
Starting sendmail:                                         [  OK  ]
Starting sm-client: No local mailer defined
QueueDirectory (Q) option must be set
                                                           [FAILED]

Я погуглил, но в основном придумываю сообщения на форумах, на которые никто не ответил.

Согласно sendmail.cf, QueueDirectory определен. И, похоже, нигде нет информации о том, как определить локальную почтовую программу ???? Плюс: когда я использую утилиту m4 для повторного создания submit.cf, полученный файл не принимается и выдает следующую ошибку:

Starting sm-client: /etc/mail/submit.cf: line 0: invalid argument to V line: "ERSIONID(linux setup"

И это несмотря на то, что файл submit.mc точно такой же, как и на другом сервере (на котором также работает Fedora 10 с sendmail), где все работает отлично.

В идеале я хотел бы просто отказаться от sendmail и использовать exim, но в данном конкретном случае у меня нет такого выбора. Итак, может ли кто-нибудь указать мне правильное направление?

Я нашел решение. Не уверен, что я должен это делать или нет, но все равно работает.

После запуска либо

make all

или

m4 sendmail.mc>sendmail.cf

Я просто сделал

cp sendmail.cf submit.cf

затем перезапустил sendmail, и все работает нормально. Странно, что нигде по этому поводу нет никакой документации.

После некоторого поиска в Google я нашел эту статью и, поскольку она мне помогла, я хотел опубликовать, что сработало. Я столкнулся с этой ошибкой с Rhel4 при попытке выполнить:

m4 sendmail.mc> sendmail.cf

/etc/mail/submit.cf: строка 1: недопустимый аргумент для строки V: «ERSIONID (установка linux») Предупреждение: файл .cf устарел: sendmail 8.13.1 поддерживает версию 10, файл .cf - это версия 0 Нет локального Опция QueueDirectory (Q), определяемая почтовой программой, должна быть установлена

выполнив: cp sendmail.cf submit.cf (Предложение отсюда), это устранило проблему, и теперь я снова могу отправлять почту с помощью mailx.

в качестве примечания, на сервере также не установлен sendmail-cf pkg.

надеюсь, что это поможет, и просто хотел сказать «спасибо» за эти шаги.