我的编程空间,编程开发者的网络收藏夹
学习永远不晚

linux的信号有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

linux的信号有哪些

这篇“linux的信号有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“linux的信号有哪些”文章吧。

linux信号有:1、SIGHUP,用于让进程立即关闭,然后重新读取配置文件之后重启;2、SIGINT,程序中止信号,用于中止前台进程;3、SIGQUIT,程序退出信号;4、SIGFPE,在发生致命的算术运算错误时发出;5、SIGKILL,用来立即结束程序的运行;6、SIGALRM,时钟定时信号;7、SIGTERM,正常结束进程的信号;8、SIGCONT;9、SIGSTOP等。

linux中信号是什么

进程的管理主要是指进程的关闭与重启。我们一般关闭或重启软件,都是关闭或重启它的程序,而不是直接操作进程的。比如,要重启 apache 服务,一般使用命令"service httpd restart"重启 apache的程序。

那么,可以通过直接管理进程来关闭或重启 apache 吗?答案是肯定的,这时就要依赖进程的信号(Signal)了。我们需要给予该进程号,告诉进程我们想要让它做什么。

系统中可以识别的信号较多,我们可以使用命令"kill -l"或"man 7 signal"来查询。命令如下:

[root@localhost ~]#kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
11)SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15)SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG
24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN +4 39) SIGRTMIN +5 40) SIGRTMIN+6 41)SIGRTMIN+7 42) SIGRTMIN+8 43) SIGRTMIN +9 44) SIGRTMIN +10 45) SIGRTMIN+11 46) SIGRTMIN+1247) SIGRTMIN+13 48) SIGRTMIN +14 49) SIGRTMIN +15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2 63) SIGRTMAX-1 64) SIGRTMAX

linux中常见的信号

信号代号信号名称说 明
1SIGHUP该信号让进程立即关闭.然后重新读取配置文件之后重启
2SIGINT程序中止信号,用于中止前台进程。相当于输出 Ctrl+C 快捷键
3SIGQUIT程序退出信号(同 Ctrl + \)
8SIGFPE在发生致命的算术运算错误时发出。不仅包括浮点运算错误,还包括溢出及除数为 0 等其他所有的算术运算错误
9SIGKILL用来立即结束程序的运行。本信号不能被阻塞、处理和忽略。般用于强制中止进程
14SIGALRM时钟定时信号,计算的是实际的时间或时钟时间。alarm 函数使用该信号
15SIGTERM正常结束进程的信号,kill 命令的默认信号。如果进程已经发生了问题,那么这 个信号是无法正常中止进程的,这时我们才会尝试 SIGKILL 信号,也就是信号 9
18SIGCONT该信号可以让暂停的进程恢复执行。本信号不能被阻断
19SIGSTOP该信号可以暂停前台进程,相当于输入 Ctrl+Z 快捷键。本信号不能被阻断

KILL, STOP 信号不可被阻塞、忽略、捕获。

Term 表示终止进程。Core 表示终止进程并 dump core。Stop 挂起线程,Cont 恢复挂起的线程。

常见信号的常见用途

  • SIGHUP

    本信号在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知同一会话内的各个作业, 这时它们与控制终端不再关联。

    登录Linux时,系统会分配给登录用户一个终端会话(Session)。在这个终端运行的所有程序,包括前台进程组和后台进程组,一般都属于这个会话。当用户退出Linux登录时,前台进程组和后台有对终端输出的进程将会收到SIGHUP信号。

    这个信号的默认操作为终止进程,因此退出登录之后,前后台进程和后台有终端输出的进程就会中止。

    不过可以捕获这个信号,比如wget能捕获SIGHUP信号,并忽略它,这样就算退出了Linux登录,wget也能继续下载。

    此外,对于与终端脱离关系的守护进程,这个信号用于通知它重新读取配置文件。

    比如,向 nginx 进程发送 HUP 信号就可以刷新配置。

  • SIGINT:程序终止(interrupt)信号, 在用户键入INTR字符(通常是Ctrl-C)时发出,用于通知前台进程组终止进程。

  • SIGQUIT:和SIGINT类似, 但由QUIT字符(通常是Ctrl-\)来控制. 进程在因收到SIGQUIT退出时会产生core文件, 在这个意义上类似于一个程序错误信号。

  • SIGTERM:

    程序结束(terminate)信号, 与SIGKILL不同的是该信号可以被阻塞和处理。通常用来要求程序自己正常退出,允许进程做一些必要的清理工作后退出。

    shell命令kill缺省产生这个信号。如果进程终止不了,我们才会尝试SIGKILL。

  • SIGTERM 让进程体面的结束,如果进程自己不体面,就用 SIGKILL 帮它体面。

  • SIGCONT:让一个停止(stopped)的进程继续执行. 本信号不能被阻塞. 可以用一个handler来让程序在由stopped状态变为继续执行时完成特定的工作. 例如, 重新显示提示符…

  • SIGSTOP:停止(stopped)进程的执行. 注意它和terminate以及interrupt的区别:该进程还未结束, 只是暂停执行. 本信号不能被阻塞, 处理或忽略.

常用信号快捷键

  • ctrl-c 发送 SIGINT 信号给前台进程组中的所有进程。常用于终止正在运行的程序。

  • ctrl-z 发送 SIGTSTP 信号给前台进程组中的所有进程,常用于挂起一个进程。

  • ctrl-d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF。

  • ctrl-\ 发送 SIGQUIT 信号给前台进程组中的所有进程,终止前台进程并生成 core 文件。

KeyFunction
Ctrl-cKill foreground process
Ctrl-zSuspend foreground process
Ctrl-dTerminate input, or exit shell
Ctrl-sSuspend output
Ctrl-qResume output
Ctrl-oDiscard output
Ctrl-lClear screen

以上就是关于“linux的信号有哪些”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网服务器栏目。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

linux的信号有哪些

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

linux的信号有哪些

这篇“linux的信号有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“linux的信号有哪些”文章吧。
2023-04-06

Linux Shell的信号trap功能细节有哪些

这篇文章给大家介绍Linux Shell的信号trap功能细节有哪些,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。它有三种形式分别对应三种不同的信号回应方式.第一种: trap commands signal-list
2023-06-06

Linux中信号集操作函数有哪些

这篇文章主要为大家展示了“Linux中信号集操作函数有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中信号集操作函数有哪些”这篇文章吧。信号从产生到抵达目的地,叫作信号递达。而信号
2023-06-15

linux下信号量和互斥锁的区别有哪些

这篇文章主要讲解了“linux下信号量和互斥锁的区别有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux下信号量和互斥锁的区别有哪些”吧!linux下信号量和互斥锁的区别是:1、信
2023-06-29

linux ftp端口号有哪些

这篇文章主要介绍了linux ftp端口号有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇linux ftp端口号有哪些文章都会有所收获,下面我们一起来看看吧。linux ftp端口号有两个:“20”和“2
2023-07-05

linux中条件变量和信号量有哪些区别

这篇文章主要介绍“linux中条件变量和信号量有哪些区别”,在日常操作中,相信很多人在linux中条件变量和信号量有哪些区别问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux中条件变量和信号量有哪些区别
2023-06-30

linux中单引号和双引号的区别有哪些

这篇文章给大家分享的是有关linux中单引号和双引号的区别有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。区别:单引号属于强引用,它会忽略所有被引起来的字符的特殊处理,被引用起来的字符会被原封不动的使用;而双
2023-06-25

电脑无信号输入的原因有哪些

电脑无信号输入的原因可能有以下几种:1. 电脑与显示器之间的连接问题:检查电脑与显示器之间的连接线是否松动、插头是否正确插入等。2. 显示器设置问题:检查显示器的输入信号源设置是否正确,确保选择了正确的输入信号源。3. 显卡问题:显卡故障可
2023-08-20

Linux系统常用符号有哪些

Linux系统常用符号有哪些,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Linux系统中有许多符号命令,他们在Linux系统中有着非常重要的作用,而且功能也非常强大。1、符号
2023-06-28

Linux常用服务端口号有哪些

Linux常用服务端口号有哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。软件领域的端口一般指网络中面向连接服务和无连接服务的通信协议端口,是一种抽象的软件结
2023-06-28

Linux进程间通信的方式有哪些

本文小编为大家详细介绍“Linux进程间通信的方式有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“Linux进程间通信的方式有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.管道管道分为有名管道和无名
2023-06-28

Linux进程间的通信方式有哪些

本篇内容主要讲解“Linux进程间的通信方式有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux进程间的通信方式有哪些”吧!进程的概念进程是操作系统的概念,每当我们执行一个程序时,对于
2023-06-16

电脑屏幕显示无信号的原因有哪些

电脑屏幕显示无信号的原因有以下几种可能:1. 电缆连接问题:可能是电缆未正确连接或松动,例如VGA、HDMI、DVI等,检查电缆连接是否稳固。2. 显卡问题:可能是显卡出现故障或者未正确安装,检查显卡是否插好或更换显卡。3. 电源问题:可能
2023-08-24

Qt4和Qt5的信号和槽的使用区别有哪些

这篇文章将为大家详细讲解有关Qt4和Qt5的信号和槽的使用区别有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。目录信号和槽的 connect信号和槽的 disconnect简 述: Qt4 和 Qt5
2023-06-20

linux cron计划任务常用的符号有哪些

本篇内容介绍了“linux cron计划任务常用的符号有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! [root@wx-a ~]# c
2023-06-09

查询linux版本信息的命令有哪些

这篇文章主要介绍了查询linux版本信息的命令有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。命令:1、“lsb_release -a”,该命令可查看所有linux系统版
2023-06-22

oracle的版本号有哪些

Oracle数据库的版本号通常以数字和字母的组合来表示,最常见的版本号包括:Oracle Database 11gOracle Database 12cOracle Database 18cOracle Database 19c此外,
oracle的版本号有哪些
2024-03-05

编程热搜

目录