如何在硬重启(ubuntu 服务器)后始终执行某些命令?

如何在硬重启(ubuntu 服务器)后始终执行某些命令?

我遇到一个问题,每次我硬重启服务器(可能由于内存不足、ddosed 等原因而崩溃)时,supervisor 都无法运行。原因已经确定,只需删除 /var/run/supervisor 目录即可。

我了解到 /var/run 文件夹在硬重启时会被删除(例如通过 ec2 面板强制停止然后启动),所以我的问题是:

每次硬重启后我如何执行此操作mkdir /var/run/supervisor?哪里是添加此类逻辑的最佳位置。我猜肯定不是 /etc/profile

(其余工作正常,supervisor 配置为服务 + 在 var/run/supervisor/supervisor.sock 使用 unix sock)

我的ubuntu版本:

lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.2 LTS
Release:        20.04
Codename:       focal

答案1

在 Ubuntu 20 中,我希望 Supervisor 作为 systemd 服务单元启动。

在主管服务单元中,您需要指定创建的目录:(单元名称可能不同)

https://serverfault.com/a/779648&https://serverfault.com/a/840999

sudo systemctl edit --full supervisor

并添加指令:

RuntimeDirectory=supervisor 

相关内容