如何在 Ubuntu 中运行 APT 升级之前停止 nginx?
我们在服务器上运行无人值守升级,如果有任何升级会干扰 nginx,我希望在升级之前停止 nginx 服务。(例如,nginx 本身的升级或可能影响网络连接的某些升级。)
升级运行完成后,我希望 nginx 自动再次启动。
这是位于负载均衡器后面的池中的多台服务器之一,因此面向用户的服务不会受到 nginx 故障的影响。Web 服务器是 nginx 1.14.2,操作系统是 Ubuntu 16.04.6 LTS。
答案1
适应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 安装,而是始终停止它。
答案2
你可以使用以下命令停止 Nginx
systemctl stop nginx
你可以使用以下命令启动它
systemctl start nginx