• <tr id='eekd9'><strong id='eekd9'></strong><small id='eekd9'></small><button id='eekd9'></button><li id='eekd9'><noscript id='eekd9'><big id='eekd9'></big><dt id='eekd9'></dt></noscript></li></tr><ol id='eekd9'><table id='eekd9'><blockquote id='eekd9'><tbody id='eekd9'></tbody></blockquote></table></ol><u id='eekd9'></u><kbd id='eekd9'><kbd id='eekd9'></kbd></kbd>
  • <i id='eekd9'><div id='eekd9'><ins id='eekd9'></ins></div></i>
    <ins id='eekd9'></ins>

          <dl id='eekd9'></dl>
          <acronym id='eekd9'><em id='eekd9'></em><td id='eekd9'><div id='eekd9'></div></td></acronym><address id='eekd9'><big id='eekd9'><big id='eekd9'></big><legend id='eekd9'></legend></big></address>
        1. <span id='eekd9'></span>

          <code id='eekd9'><strong id='eekd9'></strong></code>
        2. <i id='eekd9'></i>

            <fieldset id='eekd9'></fieldset>

            linux 查找进程及终止进程操作的相关命令

            • 时间:
            • 浏览:11
            • 来源:124软件资讯网

                使用linux操作系统 ,难免遇到一些软件“卡壳”的问题 ,这时就需要使用linux下强盛的kill下令来竣事相关历程  。这在linux系统下是极其容易的事情  ,你只需要kill xxx即可  ,这里xxx代表与此软件运行相关的历程PID号  。

                首先 ,我们需要使用linux下另外一个下令ps查找与历程相关的PID号:ps aux | grep program_filter_word

                1)ps a 显示现行终端机下的所有法式  ,包罗其他用户的法式  。

                2)ps -A 显示所有法式 。

                3)ps c 列出法式时  ,显示每个法式真正的指令名称  ,而不包罗路径  ,参数或常驻服务的标示  。

                4)ps -e 此参数的效果和指定"A"参数相同 。

                5)ps e 列出法式时 ,显示每个法式所使用的情况变量 。

                6)ps f 用ASCII字符显示树状结构  ,表达法式间的相互关系 。

                7)ps -H 显示树状结构  ,表现法式间的相互关系  。

                8)ps -N 显示所有的法式  ,除了执行ps指令终端机下的法式之外 。

                9)ps s 接纳法式信号的花样显示法式状态  。

                10)ps S 列出法式时  ,包罗已中止的子法式资料 。

                11)ps -t<终端机编号> 指定终端机编号  ,并列出属于该终端机的法式的状态  。

                12)ps u 以用户为主的花样来显示法式状态  。

                13)ps x 显示所有法式  ,不以终端机来区分 。

                最常用的要领是ps aux,然后再通过管道使用grep下令过滤查找特定的历程,然后再对特定的历程举行操作 。

                其次  ,使用kill下令竣事历程:kill xxx

                1)作用

                kill下令用来中止一个历程  。

                2)花样

                kill [ -s signal | -p ] [ -a ] pid ...

                kill -l [ signal ]

                3)参数

                -s:指定发送的信号  。

                -p:模拟发送信号  。

                -l:指定信号的名称列表 。

                pid:要中止历程的ID号 。

                Signal:表现信号  。

                4)说明

                历程是Linux系统中一个很是主要的观点  。Linux是一个多使命的操作系统 ,系统上经常同时运行着多个历程  。我们不体贴这些历程事实是怎样分配的  ,或者是内核怎样治理分配时间片的  ,所体贴的是怎样去控制这些历程  ,让它们能够很好地为用户服务  。

                Linux操作系统包罗三种差别类型的历程 ,每种历程都有自己的特点和属性  。交互历程是由一个Shell启动的历程  。交互历程既可以在前台运行  ,也可以在 后台运行  。批处置惩罚历程和终端没有联系 ,是一个历程序列  。监控历程(也称系统守护历程)是Linux系统启动时启动的历程  ,并在后台运行  。例如  ,httpd 是著名的Apache服务器的监控历程  。

                kill下令的事情原理是 ,向Linux系统的内核发送一个系统操作信号和某个法式的历程标识号 ,然后系统内核就可以对历程标识号指定的历程举行操作 。比 如在top下令中 ,我们看到系统运行许多历程  ,有时就需要使用kill中止某些历程来提高系统资源 。在解说安装和上岸下令时 ,曾提到系统多个虚拟控制台的 作用是当一个法式堕落造成系统死锁时  ,可以切换到其它虚拟控制台事情关闭这个法式  。此时使用的下令就是kill ,由于kill是大多数Shell内部下令 可以直接挪用的  。

                5)应用实例

                (1)强行中止(经常使用杀掉)一个历程标识号为324的历程:

                #kill -9 324

                (2)排除Linux系统的死锁

                在 Linux中有时会发生这样一种情形:一个法式瓦解  ,而且处于死锁的状态  。此时一样平常不用重新启动盘算机  ,只需要中止(或者说是关闭)这个有问题的法式即 可 。当kill处于X-Window界面时  ,主要的法式(除了瓦解的法式之外)一样平常都已经正常启动了 。此时打开一个终端  ,在那里中止有问题的法式  。好比  , 若是Mozilla浏览器法式泛起了锁死的情形  ,可以使用kill下令来中止所有包罗有Mozolla浏览器的法式 。首先用ps下令查找该法式的 PID  ,然后使用kill下令制止这个法式:

                #kill -SIGKILL XXX

                其中 ,XXX是包罗有Mozolla浏览器的法式的历程标识号 。

                (3)使用下令接纳内存

                我们知道内存对于系统是很是主要的 ,接纳内存可以提高系统资源  。kill下令可以实时地中止一些“越轨”的法式或很长时间没有响应的法式  。例如 ,使用top下令发现一个无用 (Zombie) 的历程 ,此时可以使用下面下令:

                #kill -9 XXX

                其中  ,XXX是无用的历程标识号  。

                然后使用下面下令:

                #free

                此时会发现可用内存容量增添了 。

                (4)killall下令

                Linux下还提供了一个killall下令  ,可以直接使用历程的名字而不是历程标识号 ,例如:

                # killall -HUP inetd