Re: core dump при обновлении на лету

Andriy Tovstik andriy.tovstik на gmail.com
Ср Ноя 16 16:57:05 UTC 2016


Спасибо, Максим. Уже сам понял, что глупость делаю.
replace выполнялся через cp, пока не сообразил, к чему, собственно, это
приводит :)

ср, 16 нояб. 2016, 17:37 Maxim Dounin <mdounin на mdounin.ru>:

> Hello!
>
> On Wed, Nov 16, 2016 at 02:39:35PM +0000, Andriy Tovstik wrote:
>
> > Добрый день!
> >
> > Столкнулся со следующей ситуацией.
> > Платформа:
> > # uname -a
> > SunOS sunos 5.11 11.3 i86pc i386 i86pc
> >
> > Пытаюсь обновить бинарник на лету, согласно
> > http://nginx.org/ru/docs/control.html#upgrade
> > исходная версия nginx 1.11.3
> > целевой бинарник nginx 1.11.5
> >
> > конфигурационный файл - дефолтный, без изменений.
> >
> > опции сборки:
> > nginx version: nginx/1.11.3
> > built by gcc 4.8.2 (GCC)
> > configure arguments: --with-cc=gcc
> >
> > nginx version: nginx/1.11.5
> > built by gcc 4.8.2 (GCC)
> > configure arguments: --with-cc=gcc
> >
> > Как указано в мануале, заменяю бинарный файл, делаю
> > kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
> > после чего nginx падает в core dump:
>
> [...]
>
> > что я делаю не правильно?
>
> Не раскрыта процедура "заменяю бинарный файл".
>
> Если новый файл просто скопировать поверх старого с помощью cp -
> будет как раз core dump скорее всего.
>
> Нужно убрать старый файл в сторону (или удалить), после чего
> положить новый с тем же именем:
>
>     mv /path/to/nginx /path/to/nginx.old
>     cp objs/nginx /path/to/nginx
>
> Ну или положить рядом новый файл, а потом атомарно переименовать:
>
>     cp objs/nginx /path/to/nginx.new
>     mv /path/to/nginx.new /path/to/nginx
>
> Важно, чтобы в результате не получилось так, что работающий
> бинарник переписали по живому (и именно это сделает стандартный
> cp), а вместо этого был создан новый файл с тем же именем.
>
> При установке из исходников - правильные операции умеет
> проделывать "make install", им и имеет смысл пользоваться.
>
> --
> Maxim Dounin
> http://nginx.org/
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru

-- 
WBR, Andriy Tovstik
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20161116/8bf85c9b/attachment.html>


Подробная информация о списке рассылки nginx-ru