Linux中kill,pkill,killall和xkill命令汇总讲解
终止一个进程或终止一个正在运行的程式,一般是通过 kill 、killall、pkill、xkill 等进行。比如一个程式已死掉,但又不能退出,这时就应该考虑应用这些工具。
另
外应用的场合就是在服务器管理中,在不涉及数据库服务器程式的父进程的停止运行,也能用这些工具来终止。为什么数据库服务器的父进程不能用这些工具杀死
呢?原因非常简单,这些工具在强行终止数据库服务器时,会让数据库产生更多的文件碎片,当碎片达到一定程度的时候,数据库就有崩溃的危险。比如mysql
服务器最佳是按其正常的程式关闭,而不是用pkill mysqld 或killall mysqld这样危险的动作;当然对于占用资源过多的数据库子进程,我们应该用kill 来杀掉。
1、 kill
kill的应用是和ps 或pgrep 命令结合在一起使用的;
kill 的用法:
kill [信号代码] 进程ID
注:信号代码能省略;我们常用的信号代码是 -9 ,表示强制终止;
例如:
[vivian@localhost vivian]$ ps -auxf | grep httpd
vivian 27005 0.0 0.0 4928 680 pts/0 S 09:42 0:00 | \_ grep httpd
root 1742 0.0 0.0 19588 560 ? S Nov24 0:00 /var/email/apache/bin/httpd -k start
nobody 1744 0.0 0.0 11304 540 ? S Nov24 0:03 \_ /var/email/apache/bin/httpd -k start
nobody 23055 0.0 2.3 327748 24232 ? S Nov26 1:43 \_ /var/email/apache/bin/httpd -k start
nobody 23087 0.0 2.4 328252 24832 ? S Nov26 1:38 \_ /var/email/apache/bin/httpd -k start
nobody 10607 0.0 2.3 327144 24064 ? S Nov27 1:12 \_ /var/email/apache/bin/httpd -k start
我们看上面例子中的第二列,就是进程PID的列,其中1742是httpd服务器的父进程,剩下列出的进程都是1742的子进程;如果我们杀掉父进程1742的话,其下的子进程也会跟着死掉;
[vivian@localhost vivian]$ kill 1742
[vivian@localhost vivian]$ps -auxf | grep httpd //已经找不到httpd了
对于僵尸进程,能用kill -9 来强制终止退出;
比如一个程式已完全死掉,如果kill 不加信号强度是没有办法退出,最佳的办法就是加信号强度 -9
2 、killall
killall 通过程式的名字,直接杀死所有进程,咱们简单说一下就行了。
用法:killall 正在运行的程式名
killall 也和ps或pgrep 结合使用,比较方便;通过ps或pgrep 来查看哪些程式在运行;
举例:
[vivian@localhost vivian]$ pgrep -l httpd
1742 httpd
1744 httpd
23055 httpd
23087 httpd
10607 httpd
[vivian@localhost vivian]$ killall httpd
3、 pkill
pkill 和killall 应用方法差不多,也是直接杀死运行中的程式;如果你想杀掉单个进程,请用kill 来杀掉。
应用方法:
#pkill 正在运行的程式名
4 、xkill
xkill 是在桌面用的杀死图像界面的程式。比如当firefox 出现崩溃不能退出时,点鼠标就能杀死firefox 。当xkill运行时出来和个人脑骨的图标,哪个图像程式崩溃一点就OK了。如果你想终止xkill
,就按右键取消;
xkill 调用方法:
[vivian@localhost vivian]$ xkill
Linux中kill,pkill,killall和xkill命令汇总讲解的更多相关文章
- [转帖]linux中systemctl详细理解及常用命令
linux中systemctl详细理解及常用命令 2019年06月28日 16:16:52 思维的深度 阅读数 30 https://blog.csdn.net/skh2015java/article ...
- linux中systemctl详细理解及常用命令
linux中systemctl详细理解及常用命令 https://blog.csdn.net/skh2015java/article/details/94012643 一.systemctl理解 Li ...
- Linux基础知识第九讲,linux中的解压缩,以及软件安装命令
目录 Linux基础知识第九讲,linux中的解压缩,以及软件安装命令 一丶Linux Mac Windows下的压缩格式简介 2.压缩以及解压缩 3.linux中的软件安装以及卸载 1.apt进行安 ...
- [转帖]Linux中的15个基本‘ls’命令示例
Linux中的15个基本‘ls’命令示例 https://linux.cn/article-5109-1.html ls -lt 和 ls -ltr 来查看文件新旧顺序. list time rese ...
- 在Linux中新增与删除用户可以使用命令:Useradd
在Linux中新增与删除用户可以使用命令:Useradd 我们先使用man命令理解一下Useradd的用法 新增与删除用户操作需要先获取高级用户权限 输入命令:sudo -i 确定后输入高级用户密码 ...
- Linux中查看各文件夹大小命令:du -h --max-depth=1
Linux中查看各文件夹大小命令:du -h --max-depth=1 du [-abcDhHklmsSx] [-L <符号连接>][-X <文件>][--block-siz ...
- Linux命令备忘录: jobs 显示Linux中的任务列表及任务状态命令
Linux jobs命令用法详解:显示Linux中的任务列表及任务状态命令 jobs命令用于显示Linux中的任务列表及任务状态,包括后台运行的任务.该命令可以显示任务号及其对应的进程号.其中,任务号 ...
- linux中cat、more、less命令区别详解##less 最合适最好用,和vim一样好用
linux中cat.more.less命令区别详解 caoxinyiyi关注 0.0362018.07.02 15:46:17字数 641阅读 516 linux中命令cat.more.less均可用 ...
- Linux中常用的监控性能的命令(sar、mpstat,vmstat, iostat,)详解
Linux中常用的监控性能的命令有: sar:能查看CPU的平均信息,还能查看指定CPU的信息.与mpstat相比,sar能查看CPU历史信息 mpstat:能查看所有CPU的平均信息,还能查看指定C ...
随机推荐
- 在spring data jpa中使用自定义转换器之使用枚举转换
转载请注明http://www.cnblogs.com/majianming/p/8553217.html 在项目中,经常会出现这样的情况,一个实体的字段名是枚举类型的 我们在把它存放到数据库中是需要 ...
- Git ---创建和切换分支
······································································"天下武功,唯快不破" git分支: g ...
- 契约式设计(DbC)感想(二)
契约式设计6大原则的理解 在<Design by Contract原则与实践>中,作者定义了契约式设计的6大原则: 区分命令和查询: 将基本查询和派生查询区分开: 针对每个派生查询,设定一 ...
- linux centos7 tomcat8 配置成服务启动
1. tomact 解压到/usr/local/tomcat下 2.vim /usr/local/tomcat/bin/catalina.sh 在OS specific support.前加上 (注意 ...
- ASP.NET Excel下载方法一览
方法一 通过GridView(简评:方法比较简单,但是只适合生成格式简单的Excel,且无法保留VBA代码),页面无刷新 aspx.cs部分 using System; using System.Co ...
- Node.js——基本服务开启
标注模式 var http = require('http'); var server = http.createServer(); server.on('request', function (re ...
- laravel的socialite微信登录之用户信息
要想获取完整的用户信息如下 { , "openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M", "nickname" ...
- vue vueRouter vuex Axios webpack 前端常用内容
Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中.
- PHP 中 include() 与 require() 的区别说明
引用文件的方法有两种:require 及 include.两种方式提供不同的使用弹性. require 的使用方法如 require("MyRequireFile.php"); . ...
- [SCOI2011]棘手的操作(可并堆/并查集/线段树)
我懒死了 过于棘手 但这题真的很水的说 毕竟写啥都能过 常见思路: ①:由于不强制在线,所以重新编号之后线段树维护 ②:用各种可以高速合并的数据结构,比如可并堆,可并平衡树啥的 讲一种无脑算法: 对于 ...