[devel] [git update] packages/nginx: heads/master
Michael Shigorin
=?iso-8859-1?q?mike_=CE=C1_osdn=2Eorg=2Eua?=
Пт Авг 31 18:11:58 MSD 2007
On Fri, Aug 31, 2007 at 01:24:22AM +0400, Dmitry V. Levin wrote:
> > +OLDBINPID=/var/run/nginx.pid.oldbin
> > +BINARY=/usr/sbin/nginx
> Зачем это??
Постфактум: Костик объяснил правильно; и оно почти работало.
Собственно, эти костыли были этапом экспериментов -- то, куда
оно пришло сегодня, вчера в общих чертах и представлялось.
> > - stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root --name nginx -- /usr/sbin/nginx
> > + stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root --name nginx -- $BINARY
> Не нужен никакой $BINARY, выкиньте --name nginx и напишите по-человечески.
> Может хотя бы /etc/init.d/template посмотрите?
Дим, смотрел и не раз.
Здесь проблема была не в починке методом s,nginx,/usr/sbin/nginx,
а в применении --name nginx с самого начала.
Где бы правильное применение задокументировать -- в template?
Каждый раз читать /etc/init.d/functions не очень интересно.
> Какому пользователю принадлежит файл $PIDFILE?
root:root
> Делать kill -USR2 `cat "$PIDFILE"` не глядя нельзя, если слово
> "безопасность" для вас не пустой звук.
А то. Более подробный анализ -- здесь:
https://bugzilla.altlinux.org/show_bug.cgi?id=12655#c9
> > condrestart)
> > - [ -e "$LOCKFILE" ] && upgrade ||:
> > + # package upgrade should invoke upgrade();
> > + # sysadmin doing condrestart by hand
> > + # should invoke restart() if nginx's running.
> > + # see also manual/triggers in rpm docs
> > + # and /usr/sbin/post_service
> > + if ! [ "$RPM_INSTALL_ARG1" -ge 0 ] 2>/dev/null; then
> > + if [ -e "$LOCKFILE" ]; then
> > + restart
> > + fi
> > + exit 0
> > + fi
> > + if [ "$RPM_INSTALL_ARG1" -gt 1 ]; then
> > + upgrade
> > + fi
> А почему при обновлении пакета нельзя выполнить обычный condrestart?
Поскольку можно круто выпендриться и выполнить необычный =)
Со времён nginx-0.1.x так хотел, но только теперь добрался.
УМВР и потому в git.
--
---- WBR, Michael Shigorin <mike на altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
Подробная информация о списке рассылки Devel