Hello! On Wednesday 10 February 2010 16:55:14 Denis Feklushkin wrote: > > > ИМХО, daemontools и runit -- наиболее подходящие решения. > > > > Поддерживаю. Активно использую в продакшене, очень удобно - > > возможность для пользователей запускать собственный экземпляр > > супервизора (с правами пользователя) решает множество проблем, > > в т.ч. безопасности (рутовые права теперь не нужны). > > Это про какую из предложенных?
runit > У меня на daemontools вот проблема вылезла какая - в лог не пишется весь > STDIN, сгенерированный сервисом, только часть. "STDIN, сгенерированный сервисом" - это сильно. > > Вот пример того что выдаёт программа запущенная просто в консоли, нормальный > её вывод: > > # setuidgid dhcs-daemon /opt/dhcs/queue-daemon.py "dbname=dhcs-new" 3 > Command: cat; sleep 5 attempt: 1 > Command: cat; sleep 5 attempt: 1 > gid:1026 > Command: cat; sleep 5 attempt: 1 > Command: cat; sleep 5 attempt: 1 > Command: cat; sleep 5 attempt: 1 > Command: cat; sleep 5 attempt: 1 > Command: ssh db touch /tmp/95-ono.txt attempt: 1 > Warning: Permanently added 'db,192.168.1.75' (RSA) to the list of known > hosts. > > А вот та же программа, лог через daemontools (multilog): > > ================= > @400000004b72b99121efeb6c Warning: Permanently added 'db,192.168.1.75' (RSA) > to the list of known hosts. > ================= В первом случае программа запускается от вашей учетной записи, так как нет у вас прав на смену пользователя. А от рута нужного ключика нет, и на запросе его ввода все останавливается. > Всё! stdin куда-то пропал! Содрогнулся. Best regards, Alexey Pechnikov. http://pechnikov.tel/

