SIGHUP信号

SIGHUP 信号,代表 "挂起"(hang up)。在与终端有关的会话中,SIGHUP 表示终端连接的丢失或关闭。

主要用途

  1. 终端断开

    • 当一个用户登出或一个与进程关联的终端关闭时,系统会向该进程发送 SIGHUP 信号。通知进程它的控制终端已不再可用。
  2. 重新加载配置

    • 一些守护进程(daemon)会捕获 SIGHUP 信号作为一种重新加载配置文件的方法。例如,一个 web 服务器在收到 SIGHUP 信号后,可能会重新读取其配置而不需要完全重启。这种行为通常是在程序设计时明确实现的。

常见示例

  • 忽略 SIGHUP

    有时,用户希望进程在终端关闭后继续运行。为了达到这个目的,进程可以通过调用 signal(SIGHUP, SIG_IGN) 来忽略该信号。

  • 使用 nohup 命令

    在 Linux 中,经常使用 nohup 命令来运行一个进程,使其在用户登出后仍然继续运行。

    bash 复制代码
    nohup command &

    nohup 将标准输出重定向到 nohup.out 文件,并防止进程接收 SIGHUP 信号。

信号编号

在大多数系统中,SIGHUP 信号的编号是 1。

结论

在终端中用来告诉进程终端关闭,收到信号的进程默认动作是结束自己;守护进程收到这种信号是重载配置文件的信号。

相关推荐
乌萨奇也要立志学C++2 小时前
【Linux】网络基础 从零理解网络通信:局域网、跨网传输与 Socket 预备知识
linux·服务器·网络
RisunJan3 小时前
Linux命令-slabtop(实时显示内核 slab 缓存信息)
linux
蚰蜒螟6 小时前
从内核源码看Linux启动:chroot、execve与MS_MOVE的协奏曲
linux·服务器·网络
酷可达拉斯6 小时前
自动化运维-ansible配置文件与主机清单
linux·运维·自动化·ansible
影视飓风TIM6 小时前
Linux下C语言缓冲区原理 + Git版本控制
linux·c语言·git
来者皆善7 小时前
ZYNQ linux上使用 USB CDC ACM
linux·运维·服务器
☆凡尘清心☆8 小时前
CentOS Stream 9 专用 LNMP 全自动一键脚本
linux·运维·mysql·nginx·lnmp·centos stream 9
Dawn-bit8 小时前
Linux磁盘分区与Swap和磁盘故障查询
linux·运维·服务器·网络·云计算
无足鸟ICT10 小时前
【RHCA+】$[]
linux·运维·服务器
运维技术小记10 小时前
国产化环境配置 VNC 远程桌面:麒麟 V10 实战
linux·运维·服务器