首页/系统/Linux 运维命令速查/场景:用信号做配置热加载
本包目录(613 条)
文件与目录76 条文本处理77 条网络命令82 条
进程与作业69 条
磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

场景:用信号做配置热加载

改完配置不想重启进程:找出应用支持的重载信号(HUP/QUIT/USR1),发信号后验证配置生效,业务无损。

Linux 运维命令速查系统更新于 2026-10-12
场景不中断业务地应用配置变更
组合kill -HUP / 应用自带 reload + 生效验证

通用流程

通用流程
# 1. 先做配置语法校验(各应用不同)
nginx -t 2>/dev/null || true
# 2. 发重载信号(示例:不同应用信号不同)
kill -HUP $(cat /run/nginx.pid)        # nginx
kill -USR2 $(cat /run/app.pid)         # 部分应用
# 3. 验证
ps -p $(cat /run/nginx.pid) -o etime=  # 进程没重启(etime 没归零)
curl -sS -o /dev/null -w '%{http_code}\n' http://127.0.0.1/health
systemd 环境优先 systemctl reload:它把正确信号与前置校验封装好了,避免查表出错。

易错点

  • 发错信号可能直接把进程干掉(如给只支持 USR1 的应用发 HUP):先查文档
  • etime 归零=进程重启过:验证时要区分 reload 与 restart

数据来源与参考

  • man 7 signal(Linux man-pages 手册)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌