Linux设置软件开机自启
主流方案是 systemd和supervisor两种;
systemd的作者有黑历史, 并且这个软件本身的设计感觉也是依托, 所以我个人是用 supervisor的, 实在需要再用前者;
systemd
怎么启用网上一大堆;
给一个模板:
常用命令
systemctl cat plugin-manager.service # 显示 原始的 service文件的内容, 等同于 cat /etc/systemd/system/plugin-manager.service
systemctl stop plugin-manager.service # 停止正在运行的, 跟开机是否自启无关;
systemctl disable plugin-manager.service # 关闭自启, 不影响现在正在运行的..?(未验证)
systemctl mask plugin-manager.service # 屏蔽, 没有特殊需求没有必要用这个, 原理似乎和 /dev/null
有关;
如果要停用
stop
disable
sudo rm /etc/systemd/system/plugin-manager.service
以上.
supervisor
使用 apt就可以安装 supervisor
apt install supervisor
安装完成后先检查它的守护进程是否启动
systemctl status supervisor.service
如果需要添加程序让supervisor来管理开机自动启动的话, 需要在它的配置目录下创建配置文件.
这个目录是:
cat /etc/supervisor/conf.d
创建 xxx.conf的配置文件, 并将以下的示例内容写入:
[program:bypass]
user=root
directory=/home/demo/modadd/bypass/
command=/home/demo/modadd/bypass/run.sh
stopsignal=TERM
autostart=true
autorestart=true
stdout_logfile=/home/demo/log/bypass_stdout.log
stderr_logfile=/home/demo/log/bypass_stderr.log
添加文件后, 可以马上使用 supervisor update
来更新配置.
supervisorctl
常用命令:
命令 | 说明 |
---|---|
supervisorctl stop program_name | 停止某个进程 |
supervisorctl start program_name | 启动某个进程 |
supervisorctl restart program_name | 重启某个进程 |
supervisorctl stop all | 停止全部进程 |
supervisorctl reload | 载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程 |
supervisorctl update | 根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启 |
分类:
Linux运维
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)