Summary: | Пытается создать свой pid-файл в каталоге /var/empty | ||
---|---|---|---|
Product: | Branch 4.1 | Reporter: | Yury Konovalov <speccyfan> |
Component: | fetchmail | Assignee: | Nobody's working on this, feel free to take it <nobody> |
Status: | CLOSED FIXED | QA Contact: | qa-4.1 <qa-4.1> |
Severity: | major | ||
Priority: | P2 | CC: | ender, evg, mike, speccyfan |
Version: | unspecified | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
URL: | http://forum.altlinux.org/index.php/topic,1304.0.html |
Description
Yury Konovalov
2008-12-08 11:40:51 MSK
Юрий, я не поддерживаю fetchmail и очень давно его не использую. Вы можете это оспорить одним-единственным образом: помочь, а не перевешивать с того, кто добрался и починил ещё более важное, на того, кто вряд ли за полгода доберётся. А если сильно мешает, патчи действительно приветствуются. Пока же предлагаю засунуть под cron. 2 ender: Дим, это не к тому, чтоб всё бросить и подскакивать, но по факту в 4.1/branch ещё и дырка в fetchmail есть. Поэтому стоит не спеша поправить в сизифе и сделать бэкпорт. Ну и постарайся не нагребать всего-всего, чтоб оно не напрягало. была у меня мысль его забрать даже, так что если терпения дождаться хватит - починим. если нет, то как показывает опыт, патчи дейстиетельно ускоряют починку :)
> Ну и постарайся не нагребать всего-всего, чтоб оно не напрягало.
беру лишь интересное, знакомое, либо прям на грани вылета из сизифа :)
ахааа, при установке пакета добавляется пользователь: %_sbindir/useradd -r -n -M -g %name -d /var/empty -s /dev/null %name &>/dev/null ||: судя по -d его домашний каталог - /var/empty. либо его сменить на какой-нить /var/run/fetchmail, либо fetchmail патчить, чтобы в daemon mode нормальный pidfile использовал. где-то я эту проблему у fetchmail'а что-то видел... Спасибо большое, изменил ему домашнюю директорию на /var/run/fetchmail и все стало на свои места. пожалуйста :) баг пока рано закрывать, надо в пакете изменения внести, чтобы при обновлении/установке редактировал. разобрался, откуда этот "косяк". lock.c: если не указан pidfile напрямую, то pidfile генерируется: 1. для рута: PID_DIR + fetchcmail.pid 2. для "простого" пользователя: FETCHMAIL_HOME + fetchmail.pid и если FETCHMAIL_HOME совпадает с домашним каталогом пользователя, то HOME + .fetchmail.pid а fethcmail у нас работает от простого пользователя, FETCHMAIL_HOME устанавливается только через FETCHMAILHOME, иначе равен HOMEDIR. вот и получаем, что pidfile сохраняется в /var/empty/.fetchmail.pid, где /var/empty - домашний каталог fetchmail'а. в fetchmail.init pidfile для глобавльных настроек не задается, видимо в расчете, что fetchmail сам соориентируется. так и есть, для рута - там генерится /var/run/fetchmail.pid. но у нас-то не рут, а системный юзверь. посему, запишу-ка я в init скрипте параметр --pidfile для для глобальных настроек и сменю homedir на /var/lib/fetchmail. homedir будет конечно пустым, на на всякий пусть будет :) сборку отправил как в сизиф, так и в M41. homedir оставил /var/run/fetchmail, в качестве pidfile указал /var/run/fetchmail/fetchmail.pid. указал как для start-stop-daemon, так и для fetchmail. service stop/start проверил - работает. как до бранча доберется - можно закрывать. всё, добрался. |