URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 18901
[ Назад ]

Исходное сообщение
"Mlocal, или Sendmail? некоторые письма стали подвисать!"

Отправлено pimbler , 22-Июл-02 14:16 
Господа!
уже 2 года у меня используется скрипт mail.local.sh
этот скрипт смотрит, кому письмо и если оно для пользователя robot, то просто вдувает посредством команды tee письмо в файл, пересылает копию на другой ящик и начинает измываться над имеющимся письмом(извлекает файл, разархивирует и кладёт его куда надо).
НО, с некоторых пор (с 17.07.2002) он на некоторых письмах просто висит в процессе выполнения этого-самого tee, я обратил внимание что при этом в /var/spool/mqueue/ лежит 3 файла от этого письма, а именно
Q?????????
D?????????
X?????????
при этом файл X????????? нулевой длинны, хотя насколько я понимаю, он должен как раз быть не пустым.
что не так?
конечно я тупо вытаскиваю эти файлы во временный каталог и делаю им скромный munpack, но это не должно превращаться в тенденцию.
ПОМОГИТЕ!


Содержание

Сообщения в этом обсуждении
"RE: Блин только не все сразу отвечайте!(в смысле два дня жду и ни у кого никаких мыслей!)"
Отправлено pimbler , 24-Июл-02 10:21 
У меня есть подозрения на "EightBitMode" или "SevenBitInput", но это только подозрения и я просто в тупике!
Есть тут знатоки па SENDMAIL?
Похоже что просто сам sendmail не обрабатывает(не пихает в stdout) и поэтому tee тупо создаёт пустой файл и ждёт, когда ему в stdin начнут задувать данные(наивный).
Я пробовал просто послать письмо(на другого пользователя), оно на УРА пролетает, а если его надо обрабатывать, то всё, виснет и капут!
Спасибо, тем кто ответит и тем кто не отматерит.

"Убрал mail.local.sh Оставил родной mail.local, а воз и ныне там? Письма просто торчат в очереди, "
Отправлено pimbler , 25-Июл-02 10:27 
Похоже что просто сам sendmail не обрабатывает КАКИЕ-ТО письма и я не могу понять, в чём их разница!
Уже запустил его с ключём -Х /tmp/mail.traffic и пытаюсь сравнить письма, прошедшие и повисшие...
пока безуспешно..
Есть мысли?



"RE: Убрал mail.local.sh Оставил родной mail.local, а воз и ныне там? Письма просто торчат в очереди, "
Отправлено lavr , 25-Июл-02 11:08 
>Похоже что просто сам sendmail не обрабатывает КАКИЕ-ТО письма и я не
>могу понять, в чём их разница!
>Уже запустил его с ключём -Х /tmp/mail.traffic и пытаюсь сравнить письма, прошедшие
>и повисшие...
>пока безуспешно..
>Есть мысли?

мысли в том что либо спам, либо обрывается соединение, timeout там или
что еще и командный файл остается пустым.

Вообще-то так не делают (подмена mail.local) а используют pipe в aliases



"А можно поподробнее про pipe в aliases?"
Отправлено pimbler , 25-Июл-02 11:20 
>Вообще-то так не делают (подмена mail.local) а используют pipe в aliases
На самом деле, я содрал уже давно работающуб идею и всё работало!
Теперь похоже прийдётся всё переделывать.
Поскажи где можно почитать, чтобы там хоть примеры были...


"man aliases почитал.. не работает"
Отправлено pimbler , 25-Июл-02 11:50 
добавил строчку
runer: |/usr/local/sbin/runer.sh
нарисовал маленький скрипт
послал туды письмо,
в ответ получил:

The original message was received at Thu, 25 Jul 2002 14:37:24 +0700
from pimbler [10.1.1.64]

   ----- The following addresses had permanent fatal errors -----
|/usr/local/sbin/runer.sh
    (reason: service unavailable)
    (expanded from: <runer@mak-nsk.olc.ru>)

   ----- Transcript of session follows -----
smrsh: runer.sh not available for sendmail programs
554 5.0.0 Service unavailable

И что дальше? где подробнее почитать?


"RE: man aliases почитал.. не работает"
Отправлено lavr , 25-Июл-02 12:40 
>добавил строчку
>runer: |/usr/local/sbin/runer.sh
>нарисовал маленький скрипт
>послал туды письмо,
>в ответ получил:
>
>The original message was received at Thu, 25 Jul 2002 14:37:24 +0700
>
>from pimbler [10.1.1.64]
>
>   ----- The following addresses had permanent fatal errors -----
>
>|/usr/local/sbin/runer.sh
>    (reason: service unavailable)
>    (expanded from: <runer@mak-nsk.olc.ru>)
>
>   ----- Transcript of session follows -----
>smrsh: runer.sh not available for sendmail programs
>554 5.0.0 Service unavailable
>
>И что дальше? где подробнее почитать?

теперь в smrsh (он жа restricted shell), как security wrapper, посмотри
в его README или где-то там унутри /path/sendmail_sources/smrsh
описание как добавлять утилиты которым разрешено использовать sendmail
или замени Mprog с smrsh на sh:
Mprog,          P=/bin/sh, F=lsDFMoqeu9, S=EnvFromL/HdrFromL, R=EnvToL/HdrToL, D
=$z:/,
                T=X-Unix/X-Unix/X-Unix,
                A=sh -c $u

типа, лучше через сборку sendmail.cf через m4 из sendmail.mc
вобщем любой из вдух указанных вариантов


"Заетил что затыкаются только БОЛЬШИЕ письма!"
Отправлено pimbler , 26-Июл-02 06:39 
Если размер письма больше 200К, то оно и подвисает!

Вот вывод команды

"grep Size /etc/sendmail.cf"

O ConnectionCacheSize=2
#O MaxQueueRunSize=10000
#O DataFileBufferSize=4096
#O XscriptFileBufferSize=4096
O MaxMessageSize=15000000

Есть ли ещё мысли или варианты?
Может ещё что-то поправить?


"RE: Заетил что затыкаются только БОЛЬШИЕ письма!"
Отправлено lavr , 26-Июл-02 12:45 
>Если размер письма больше 200К, то оно и подвисает!
>
>Вот вывод команды
>
>"grep Size /etc/sendmail.cf"
>
>O ConnectionCacheSize=2
>#O MaxQueueRunSize=10000
>#O DataFileBufferSize=4096
>#O XscriptFileBufferSize=4096
>O MaxMessageSize=15000000
>
>Есть ли ещё мысли или варианты?
>Может ещё что-то поправить?

терзать свой filter или попробовать реализовать его через milter, или
задействовать procmail чтобы не мучаться особо с оптимизацией своего
фильтра

PS. Если ничего не получится, спроси в fido7.ru.unix.* группах, уверен
что натолкнут на мысль.