
“ kill -HUP 是 Linux/Unix 系统中用于向进程发送 SIGHUP 信号的命令,其核心作用是通知进程重新加载配置文件或重新初始化,而无需完全终止并重启进程。”
今天松哥问我logrotate日志轮转,我检查了我这边messages的日志轮转配置,我发现了kill -HUP,一般我们常用的是带数字的,那么这个-HUP是什么意思呢?
/bin/kill -HUP `cat /var/run/syslogd.pid 2> dev/null` 2> dev/null || true
kill -HUP其实就是用于发送SIGHUP信号,HUP对应信号编号 1。

01
—
SIGHUP 信号的含义与作用
SIGHUP(Signal Hang Up)最初设计用于通知进程“终端连接已断开”(例如用户退出终端会话)。现在许多服务进程(如 Nginx、Apache)会捕获此信号,并触发配置重载,从而实现“热更新”。
kill -HUP 发送 SIGHUP 信号,属于“友好”操作,进程可选择响应(如重载配置)或忽略。我们可以用在动态更新服务配置(如修改 Nginx 配置后重载);守护进程(daemon)的优雅重启;或者某些程序(如 Tomcat)会通过 HUP 信号触发重启。
02
—
使用示例
列举一个简单的例子:
# 发送 SIGHUP 信号给指定 PID 的进程kill -HUP 9884# 通过进程名发送(如 Nginx)pkill -HUP nginx
并非所有程序都响应 SIGHUP 信号。例如,MySQL 某些版本可能不推荐用此方式重启,可能导致数据问题。
HUP 对应信号编号 1,以下命令等效:
kill -1 9884kill -SIGHUP 9884

运维笔谈已经开通AI智能对话功能,解答有关运维日常工作中遇到的问题以及经验分享,感兴趣的大佬来和我聊聊吧!
文章转载自运维笔谈,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




