ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Linux 进程管理(3/5)

Linux 进程管理(3/5)

原创 Linux操作系统 作者:kong343526 时间:2007-08-28 10:36:32 0 删除 编辑

3、终止进程的工具 kill killallpkillxkill

3.1 kill

3.2 killall

3.3 pkill

3.4 xkill

[@more@]

3、终止进程的工具killkillallpkillxkill

终止一个进程或终止一个正在运行的程序,一般是通过killkillallpkillxkill等进行。比如一个程序已经死掉,但又不能退出,这时就应该考虑应用这些工具。

另外应用的场合就是在服务器管理中,在不涉及数据库服务器程序的父进程的停止运行,也可以用这些工具来终止。为什么数据库服务器的父进程不能用这些工具杀死呢?原因很简单,这些工具在强行终止数据库服务器时,会让数据库产生更多的文件碎片,当碎片达到一定程度的时候,数据库就有崩溃的危险。比如mysql服务器最好是按其正常的程序关闭,而不是用pkillmysqldkillallmysqld这样危险的动作;当然对于占用资源过多的数据库子进程,我们应该用kill来杀掉。

3.1kill

kill的应用是和pspgrep命令结合在一起使用的;

kill的用法:

kill[信号代码]进程ID

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

举例:

[root@localhost~]#psauxf|grephttpd

root49390.00.05160708pts/3S+13:100:00_grephttpd

root48300.11.32423210272?Ss13:020:00/usr/sbin/httpd

apache48330.00.6243644932?S13:020:00_/usr/sbin/httpd

apache48340.00.6243644928?S13:020:00_/usr/sbin/httpd

apache48350.00.6243644928?S13:020:00_/usr/sbin/httpd

apache48360.00.6243644928?S13:020:00_/usr/sbin/httpd

apache48370.00.6243644928?S13:020:00_/usr/sbin/httpd

apache48380.00.6243644928?S13:020:00_/usr/sbin/httpd

apache48390.00.6243644928?S13:020:00_/usr/sbin/httpd

apache48400.00.6243644928?S13:020:00_/usr/sbin/httpd

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

我们看上面例子中的第二列,就是进程PID的列,其中4830httpd服务器的父进程,从48334840的进程都是它4830的子进程;如果我们杀掉父进程4830的话,其下的子进程也会跟着死掉;

[root@localhost~]#kill4840注:杀掉4840这个进程;

[root@localhost~]#ps-auxf|grephttpd注:查看一下会有什么结果?是不是httpd服务器仍在运行?

[root@localhost~]#kill4830注:杀掉httpd的父进程;

[root@localhost~]#ps-aux|grephttpd注:查看httpd的其它子进程是否存在,httpd服务器是否仍在运行?

对于僵尸进程,可以用kill-9来强制终止退出;

比如一个程序已经彻底死掉,如果kill不加信号强度是没有办法退出,最好的办法就是加信号强度-9,后面要接杀父进程;比如;

[root@localhost~]#psaux|grepgaim

beinan50319.02.310499617484?S13:230:01gaim

root50360.00.05160724pts/3S+13:240:00grepgaim

[root@localhost~]#pgrep-lgaim

5031gaim

[root@localhost~]#kill-95031

3.2killall

killall通过程序的名字,直接杀死所有进程,咱们简单说一下就行了。

用法:killall正在运行的程序名

killall也和pspgrep结合使用,比较方便;通过pspgrep来查看哪些程序在运行;

举例:

[root@localhostbeinan]#pgrep-lgaim

2979gaim

[root@localhostbeinan]#killallgaim

3.3pkill

pkillkillall应用方法差不多,也是直接杀死运行中的程序;如果您想杀掉单个进程,请用kill来杀掉。

应用方法:

#pkill正在运行的程序名

举例:

[root@localhostbeinan]#pgrep-lgaim

2979gaim

[root@localhostbeinan]#pkillgaim

3.4xkill

xkill是在桌面用的杀死图形界面的程序。比如当firefox出现崩溃不能退出时,点鼠标就能杀死firefox。当xkill运行时出来和个人脑骨的图标,哪个图形程序崩溃一点就OK了。如果您想终止xkill,就按右键取消;

xkill调用方法:

[root@localhost~]#xkill

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7448378/viewspace-966435/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-09-27

  • 博文量
    38
  • 访问量
    195473