Назад | Перейти на главную страницу

Остановите nginx до запуска обновлений APT

Как я могу остановить nginx перед запуском обновлений APT в Ubuntu?

Мы запускаем автоматические обновления на сервере, и в случае, если какое-либо обновление будет мешать работе nginx, я хотел бы остановить службу nginx перед выполнением обновлений. (Например, обновление самого nginx или что-то, что может повлиять на подключение к сети.)

После завершения обновления я хочу, чтобы nginx снова запустился автоматически.

Это один из нескольких серверов в пуле, который находится за балансировщиком нагрузки, поэтому на службу, ориентированную на пользователя, не повлияет отказ nginx. Веб-сервер - nginx 1.14.2, ОС - Ubuntu 16.04.6 LTS.

Адаптация https://wiki.debian.org/ReadonlyRoot#Make_apt-get_remount_.2F_if_needed наверное, сработает.

Я бы попробовал этот вариант:

DPkg {
    Pre-Invoke { "systemctl stop nginx"; };
    Post-Invoke { "systemctl start nginx"; };
};

Поместите это в файл и поместите в /etc/apt.conf.d.

Он не будет проверять, мешает ли обновление вашей установке nginx, он всегда останавливает его.

Вы можете остановить Nginx, используя

systemctl stop nginx

И вы можете запустить его, используя

systemctl start nginx