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。

结论

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

相关推荐
啊?啊?1 小时前
1 玩转Linux命令行:基础文件操作实战教程
linux·服务器·基础指令
Code Warrior1 小时前
【Linux】线程概念与控制(2)
linux
Java 码农1 小时前
CentOS 7 上安装 PostgreSQL
linux·postgresql·centos
筑梦之路1 小时前
CentOS 7 升级perl版本到5.40.3 —— 筑梦之路
linux·运维·centos
一个不秃头的 程序员1 小时前
从 0 到上线、长期运行、后续更新的**全流程**(适配 CentOS 服务器)
linux·服务器·centos
努力学习的小廉2 小时前
深入了解linux网络—— 自定义协议(上)
linux·服务器·网络
bcgbsh3 小时前
Linux开机启动脚本(cron 的 @reboot 特性)
linux·cron
听风吹雨yu3 小时前
RK3588从数据集到训练到部署YoloV8
linux·yolo·开源·rk3588·rknn
iconball4 小时前
个人用云计算学习笔记 --19 (MariaDB服务器)
linux·运维·笔记·学习·云计算
Lynnxiaowen4 小时前
今天我们开始学习python3编程之python基础
linux·运维·python·学习