位置: 编程技术 - 正文

kill命令的使用(kill命令用法)

编辑:rootadmin
由于职责的要求,你不得不费力地阅读那些令你感到费解的晦涩的Linux应用程序的说明文件。然后,你将运行指令和编辑设置文件。一切都在正常运行,生活真美好。但是,你知道,好时光不会永远持续下去。当你遇到令人恐 惧的“send the process a SIGHUP”提示时,好时光结束了。什么是“SIGHUP(启动信号)”,你如何发送它?它像是你送给你的恋人的一束花吗?虽然你可以肯定这不是一个命令行指令,不过,你还是试着键入它。当然,这没有结果。然后,你检查一下键盘。哦,没有SIGHUP键。于是你又重新阅读这个应用程序的参考指南,看到下面这段文字:当收到一个hangup(进程结束)信号时,sshd程序会重新阅读配置文件。通过执行启动程序时的命令及选项来发送SIGHUP信号,如:/usr/sbin/sshd。哦,原来是这样。程序员 VS 使用者LINUX程序的在线参考指南作者一般都要既照顾到最终用户的需求也要照顾到高级程序员的需求。因此,有些说明比较难懂。不过,不要担心。现在我们就要揭开覆盖在这些让人迷惑的内容上面那神秘的面纱。信号与进程控制这个问题主要属于信号和进程控制的范畴。对于我们系统管理员和普通用户来说,我们主要关心的是启动、停止和重新启动服务、停止失控的进程和被挂起的进程,并且尽可能不中断系统运行。因为不同的操作系统和不同的命令外壳处理信号的方式都不相同,我们这里只介绍Linux操作系统和bash外壳。信号是用来与守护程序和进程通信的。任何活动任务都是一个进程,而守护程序是等待对某些事件做出反应或者按照日程安排执行任务的后台服务。一个程序必须有建在其中的信号处理程序用于捕获和应答信号。在LINUX中的signal 参考指南解释了各种不同信号和这些信号的用途。信号是由“kill”命令发出的。kill -l命令可以显示一个可用信号列表及其编号。所有的守护程序和进程都有一个进程ID(PID),例如使用ps命名所显示的内容:$ ps aux USER PID %CPU %MEM TTY STAT COMMAND root 1 0.0 0.1 ? S init [2] 0.0 0.2 ? Ss /usr/bin/dbus-daemon --system hal 0.0 0.7 ? Ss /usr/sbin/hald postfix 0.0 0.2 ? S qmgr -l -t fifo -u -c nagios 0.0 0.2 ? SNs /usr/sbin/nagios /etc/nagios/nagios.cfg 这个输出是经过简化的。你在系统中可以看到更多的行和栏目。如果某些进程消耗了你的全部CPU或者内存,你可以在这个输出的%CPU和%MEM列中发现它们。找到失控的进程的一种更快捷的方法是使用top命令,因为按照默认的设置,使用占用CPU资源最多的进程在最上面显示。我们可以使用一条“yes”命令来测试一下:$ yes carla is teh awesum 这个命令将以很高的速度反复显示“carla is teh awesum”,直到你停止它运行。这将使你的CPU使用率达到警戒线。$ top ... PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND carla 0 m m R .4 3.5 0:. konsole carla 0 S 4.3 0.1 0:. yes  分析一下这个结果,你会发现一些有趣的事,你会发现,占用CPU最多的程序是konsole虚拟终端程序,而不是“yes”命令,这是因为“yes”命令是在konsole终端程序中运行的。如果在一个“真正的”控制台(按Ctrl+alt+f2键)中运行同样的命令序列,你将看到“yes”命令被排在第一位。 有许多停止“yes”命令运行的方式。如果你要回到运行它的shell中,按CTRL+c键就可以了。或者你可以在另一个shell中用“kill”命令停止“yes”命令的运行,Kill命令后面跟PID或者命令名称,如下如示:$ kill 或者$ killall yes 按CTRL+c键发出一个SIGINT(信号2),这个信号是键盘要求取得控制权的中断信号。kill和killall这两个命令按照默认的设置都发出一个SIGTERM信号(编号)。程序中可以设置对SIGTERM信号()是捕捉或者忽略,或者以不同的方式解释。因此,如果你的程序对于KILL命令的反应与你预期不同,很可能是被KILL的目标程序的问题。终止一个父进程通常也终止了它的子进程。不过,情况并不总是如此。你知道子进程是什么吗?使用ps命令加上-f选项就可以看到,如下所示:$ ps axf ? R 2: _ konsole [kdeinit] pts/3 Ss 0: | _ /bin/bash pts/3 S+ 0: | | _ yes carla is teh awesum pts/4 Rs 0: | _ /bin/bash pts/4 R+ 0: | | _ ps axf 现在,回到SIGHUP的话题SIGHUP的发音是“sig-hup”,是signal hangup的缩写,含义是“中止信号”。你如何发送一个SIGHUP信号呢?这里有几种方式:# kill -HUP [pid] # killall -HUP [process-name] # kill -1 [pid] # killall -1 [process-name] 因此,你可以使用PID或者名称,信号名称或者号码。那么为什么要这样做而不使用/etc/init.d/foo命令重新启动呢?使用它们自己的init(初始化)文件来控制服务是优先选择的方式,因为这些文件通常包含健全和错误检查以及额外的功能。使用“kill”命令和信号的主要原因是尽可能明确地终止挂起和失控的进程,而不必重新启动或者登出。终止进程正如你在关于信号的man page中所看到的,有十几种控制进程的方法。下面是一些常用的方法:kill -STOP [pid]发送SIGSTOP (,,)停止一个进程,而并不消灭这个进程。kill -CONT [pid]发送SIGCONT (,,)重新开始一个停止的进程。kill -KILL [pid]发送SIGKILL (9)强迫进程立即停止,并且不实施清理操作。kill -9 -1终止你拥有的全部进程。SIGKILL和SIGSTOP信号不能被捕捉、封锁或者忽略,但是,其它的信号可以。所以这是你的终极武器。Bash shell的Kil命令lBash外壳包含一个内置的kill命令,当执行下面命令:$ type -all kill kill is a shell built-in kill is /bin/kill 命令的结果表明有两个kill命令,一个是BASH的内置命令,另一个是/bin/kill可执行程序。一般来说这两个命令不太可能遇到冲突的情况,不过,如果你确实遇到了kill命令行为异常时,你可以明确的指定/bin/kill命令。你一定要进一步查阅下面的资源中列出的参考资源来了解Linux中kill的妙用,因为这是你进入维护Linux系统领域的门票。这些知识能够让你像做外科手术一样对系统进行维护,而不用在遇到问题时每一次都重新启动系统,就像我们知道的某些蹩脚的操作系统那样。资源Linux Cookbook一书的第七章“开始和终止Linux”bash (1) - GNU Bourne-Again Shellyes (1) - 在被终止前反复打印字符signal (7) - 可用信号列表ps (1) - 报告当前进程的快照kill (1) - 向一个进程发出信号killall (1) - 按名字消灭进程pkill (1) - 根据名字和其它属性查看或者发出进程信号skill (1) - 发送一个信号或者报告进程状态xkill (1) - 按照X资源消灭一个客户程序

推荐整理分享kill命令的使用(kill命令用法),希望有所帮助,仅作参考,欢迎阅读内容。

kill命令的使用(kill命令用法)

文章相关热门搜索词:kill命令的作用,kill命令的使用方法,kill命令详解,kill命令的作用,kill命令详解,kill命令的使用方法,kill命令如何使用,kill命令用法,内容如对您有帮助,希望把文章链接给更多的朋友!

Linux用户进程是如何释放内存的 Linux用户进程是如何释放内存的Linux进程使用内存的基本流程:从图中我们可以看出,进程的堆,并不是直接建立在Linux的内核的内存分配策略上的,而

Linux命令free的输出含义 [root@Linux/tmp]#freetotalusedfreesharedbufferscachedMem:-/+buffers/cache:Swap:第1行total内存总数:used已经使用的内存

Apache 2.0. for Linux 下载 Apache2.0.

标签: kill命令用法

本文链接地址:https://www.jiuchutong.com/biancheng/366267.html 转载请保留说明!

上一篇:SSH客户端之SSH Secure Shell 的连接方法(ssh客户端软件)

下一篇:Linux用户进程是如何释放内存的(linux 用户进程)

  • 全国税务师考试报名时间
  • 移动话费可以开企业发票吗
  • 物业公司财务制度及核算方法
  • 未达起征点是什么
  • 出纳工人借支与贷款区别
  • 出售无形资产计入资产处置损益还是营业外收入
  • 购买方已认证未抵扣,发票用退回吗
  • 结汇收益怎么算
  • 进口增值税已付发票未到如何入账
  • 将承兑汇票背书怎么操作
  • 现金折扣税前扣除
  • 公司车辆计提是含税还是不含税?
  • 2016年的发票2019年还能开红字吗
  • 公休假补贴多少钱
  • 代销商品手续费计入
  • 公司职工买房有补贴吗
  • 以前年度损益调整贷方余额表示什么
  • 公司交一部分社保个人还要交多少钱
  • 微信转账截图可以p图吗
  • 收到承兑汇票会计分录
  • 最新版win10激活
  • 福利企业增值税即征即退会计处理
  • 汉密尔顿岛在哪里
  • phpcgi远程代码执行漏洞
  • 企业会计准则存在的问题怎么写
  • 用友自动生成凭证怎么操作
  • 圣米歇尔山法语介
  • 个体经营所得税申报表a
  • unity常用脚本语言
  • php源码抓取工具
  • 帝国cms如何设置最新
  • 企业提取盈余公积的比例
  • 期末存货资产结存金额
  • 公司购买的商品房怎么入账
  • python pdb模块
  • mysql中desc什么意思
  • dedecms插件
  • 汇算清缴需要做账吗
  • 一般纳税人接受的下列服务中不得抵扣进项税额的有
  • 不抵扣的进项税为什么要交税
  • 不合格机器设备怎么处理
  • 汇算清缴纳税调整需要做账吗
  • 融资租赁租金计算工具使用的主要过程
  • 计提固定资产折旧账务处理
  • 包装物押金要计入增值税吗
  • 汽车运输企业交什么税
  • 固定资产计提折旧的原则
  • 给保安买大衣算贿赂吗
  • 纳税人将购买的货物分配给股东,因该货物购买时已缴纳
  • 线上线下财务
  • 负债项目的排列顺序
  • 内部损益是什么
  • 临时工的工资如何申报个税
  • 非在职人员和其他人员的区别
  • 银行对公账户季度
  • 附报资料是什么
  • 营业外支出贷方余额
  • 国际航班怎么报销
  • office技术预览版和增强版
  • dropbox windows
  • ubuntu发行版介绍
  • win8系统升级
  • win10系统edge浏览器打不开解决办法
  • 近期win7蓝屏
  • 表示网页行为的是
  • python模拟登录爬取数据
  • 简单的小创意
  • vue自定义过滤器的语法
  • 简述bootstrap中模态框的javascript方法
  • python 编程技巧
  • android监听app启动
  • Python快速从注释生成文档的方法
  • python向csv写入数据
  • Javascript this 关键字 详解
  • python字符有哪些
  • 如何查询车辆购置税是否缴纳
  • 浙江省税务局发短信是真的吗
  • 主管局长和分管局长谈心谈话
  • 增值税发票勾选操作流程
  • 1950土地改革后土地所有权
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设