最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

杀死进程命令 kill

IT圈 admin 28浏览 0评论

2024年5月10日发(作者:嘉鸿彩)

杀死进程命令 kill,pkill,killall,xkill

终止一个进程或终止一个正在运行的程序,一般是通过 kill 、killall、pkill、xkill 等

进行。比如一个程序已经死掉,但又不能退出,这时就应该考虑应用这些工具。

另外应用的场合就是在服务器管理中,在不涉及数据库服务器程序的父进程的停止运

行,也可以用这些工具来终止。为什么数据库服务器的父进程不能用这些工具杀 死呢?原

因很简单,这些工具在强行终止数据库服务器时,会让数据库产生更多的文件碎片,当碎

片达到一定程度的时候,数据库就有崩溃的危险。比如mysql 服务器最好是按其正常的程

序关闭,而不是用pkill mysqld 或killall mysqld 这样危险的动作;当然对于占用资源过

多的数据库子进程,我们应该用kill 来杀掉。

1 kill

kill的应用是和ps 或pgrep 命令结合在一起使用的;

kill 的用法:

kill [信号代码] 进程ID

注:信号代码可以省略;我们常用的信号代码是 -9 ,表示强制终止;

举例:

[root@localhost ~]# ps auxf |grep httpd

root 4939 0.0 0.0 5160 708 pts/3 S+ 13:10 0:00 _ grep httpd

root 4830 0.1 1.3 24232 10272 ? Ss 13:02 0:00 /usr/sbin/httpd

apache 4833 0.0 0.6 24364 4932 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4834 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4835 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4836 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4837 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4838 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4839 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4840 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

我们查看httpd 服务器的进程;您也可以用pgrep -l httpd 来查看;

我们看上面例子中的第二列,就是进程PID的列,其中4830是httpd服务器的父进

程,从4833-4840的进程都是它4830的子进程;如果我们 杀掉父进程4830的话,其

下的子进程也会跟着死掉;

2024年5月10日发(作者:嘉鸿彩)

杀死进程命令 kill,pkill,killall,xkill

终止一个进程或终止一个正在运行的程序,一般是通过 kill 、killall、pkill、xkill 等

进行。比如一个程序已经死掉,但又不能退出,这时就应该考虑应用这些工具。

另外应用的场合就是在服务器管理中,在不涉及数据库服务器程序的父进程的停止运

行,也可以用这些工具来终止。为什么数据库服务器的父进程不能用这些工具杀 死呢?原

因很简单,这些工具在强行终止数据库服务器时,会让数据库产生更多的文件碎片,当碎

片达到一定程度的时候,数据库就有崩溃的危险。比如mysql 服务器最好是按其正常的程

序关闭,而不是用pkill mysqld 或killall mysqld 这样危险的动作;当然对于占用资源过

多的数据库子进程,我们应该用kill 来杀掉。

1 kill

kill的应用是和ps 或pgrep 命令结合在一起使用的;

kill 的用法:

kill [信号代码] 进程ID

注:信号代码可以省略;我们常用的信号代码是 -9 ,表示强制终止;

举例:

[root@localhost ~]# ps auxf |grep httpd

root 4939 0.0 0.0 5160 708 pts/3 S+ 13:10 0:00 _ grep httpd

root 4830 0.1 1.3 24232 10272 ? Ss 13:02 0:00 /usr/sbin/httpd

apache 4833 0.0 0.6 24364 4932 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4834 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4835 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4836 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4837 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4838 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4839 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

apache 4840 0.0 0.6 24364 4928 ? S 13:02 0:00 _ /usr/sbin/httpd

我们查看httpd 服务器的进程;您也可以用pgrep -l httpd 来查看;

我们看上面例子中的第二列,就是进程PID的列,其中4830是httpd服务器的父进

程,从4833-4840的进程都是它4830的子进程;如果我们 杀掉父进程4830的话,其

下的子进程也会跟着死掉;

发布评论

评论列表 (0)

  1. 暂无评论