Bug 8688

Summary: Невозможно стандартным способом сменить пользователя, под которым работает spamd.
Product: Sisyphus Reporter: serpiph <serpiph>
Component: spamassassin-spamdAssignee: Sergey Y. Afonin <asy>
Status: CLOSED WONTFIX QA Contact: qa-sisyphus
Severity: normal    
Priority: P2 CC: asy, mike, vvk
Version: unstable   
Hardware: all   
OS: Linux   

Description serpiph 2005-12-21 01:23:03 MSK
У меня spamd работает не от root, а от пользователя spamd, тем самым не рушу
работу базы данных. В /etc/sysconfig/spamd у меня написано:

RUNAS=spamd
PIDFILE=/var/run/spamd/spamd.pid
SPAMDOPTIONS="-L --username=$RUNAS --pidfile=$PIDFILE"

Каталог /var/run/spamd есть и принадлежит пользователю spamd.

С версией 3.0.4-alt1 всё работало. В версии 3.1.0-alt1 почему-то команда
'service spamd status' сообщает, что spamd не запущен, но есть потерянный
pid-файл, хотя реально демон работает. После поисков (ps axl) оказалось, что
головной демон не переходит под пользователя spamd, а переходят только его
потомки. В версии 3.0.4-alt1 даже демон был под spamd. При попытке же сделать
RUNAS=root получил запущенный демон, который съел всё процессорное время и
подвешивал все процессы spamc, обращающиеся к нему. В документации написано, что
вариант '--username=root' должен приводить к фатальному вылетанию демона, однако
он работает, порождает потомков, после чего максимально грузит компьютер, а его
потомки после образования связи вешаются.
Steps to Reproduce:
1.Создать в /etc/sysconfig/spamd указанную мной конфигурацию.
2.Перезапустить 
3.service spamd status
4.В /etc/sysconfig/spamd RUNAS=root
5.Перезапустить
6.Вызвать spamc и кинут на проверку любое письмо.
Actual Results:  
сначала сообщение о незапущенном демоне и невозможности его рестарта, потом
полная загрузка компьютера.

Expected Results:  
На команду service spamd status увидеть running, на параметр --username=root
незапуск сервера (как из документации).
Comment 1 Victor Forsyuk 2008-08-20 18:03:53 MSD
Ну, собственно, WONTFIX.