linux根据进程号PID查找启动程序的全路径

工作环境中遇到网络不正常,检测是某服务器异常往外发送数据包,使用netstat命令查看,发现有程序.IptabLex的这个进程状态为异常连接.无法有效清除,因此想知道是哪个目录的此程序处于僵死状态.

[root@edu-web1 /]# netstat –anp | less

出问题时进程的状态为:

[root@edu-web1 /] ps x

找到某进程启动路径的方法是:

1.我们可以从ps命令中得到僵死进程的PID,如上例中23347

2.进入/proc目录下以该PID命名的目录中

3.输入ls -ail,结果中 exe链接对应的就是可执行文件的全路经详细信息

[root@edu-web1 /] ls /proc/  找到23347文件夹

[root@edu-web1 /] cd /proc/23347

[root@edu-web1 23347] ls –ail

可以发现此连接有异常,对应的应用也有问题,剩下的就是想办法删除此僵尸进程对应的应用程序了,一般都是冗余或垃圾程序,可rm -f 干掉……

总结

以上所述是小编给大家介绍的linux根据进程号PID查找启动程序的全路径,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

(0)

相关推荐

  • Linux下查看端口占用进程号,程序名的方法

    linux下查看端口占用情况: 1. 查看哪个进程占用了819端口: case9-sghfofo:/usr/local/cnbj/tomcat-bj/bin # lsof -i:859 运行后的结果: COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME java 24907 root 31u IPv4 248905027 TCP *:859 (LISTEN) 由以上我们知道了859端口被进程号为24907的进程占用了, 是个java进程. 2. 查看进程

  • linux根据进程号PID查找启动程序的全路径

    工作环境中遇到网络不正常,检测是某服务器异常往外发送数据包,使用netstat命令查看,发现有程序.IptabLex的这个进程状态为异常连接.无法有效清除,因此想知道是哪个目录的此程序处于僵死状态. [root@edu-web1 /]# netstat –anp | less 出问题时进程的状态为: [root@edu-web1 /] ps x 找到某进程启动路径的方法是: 1.我们可以从ps命令中得到僵死进程的PID,如上例中23347 2.进入/proc目录下以该PID命名的目录中 3.输入

  • 利用kernel提供的接口打印进程号(pid)

    c文件printPid.c 复制代码 代码如下: #include <linux/kernel.h>#include <linux/module.h>#include <linux/init.h>#include <linux/sched.h>#include <linux/list.h> static __init int printPid(void) //安装模块函数{    struct task_struct *task,*p;    s

  • Linux 僵尸进程产生原因及解决方法

    Linux 允许进程查询内核以获得其父进程的 PID,或者其任何子进程的执行状态.例如,进程可以创建一个子进程来执行特定的任务,然后调用诸如 wait() 这样的一些库函数检查子进程是否终止.如果子进程已经终止,那么,它的终止代号将告诉父进程这个任务是否已成功地完成. 为了遵循这些设计原则,不允许 Linux 内核在进程一终止后就丢弃包含在进程描述符字段中的数据.只有父进程发出了与被终止的进程相关的 wait() 类系统调用之后,才允许这样做.这就是引入僵死状态的原因:尽管从技术上来说进程已死,

  • linux杀进程的多种方法

    常规篇: 首先,用ps查看进程,方法如下: 复制代码 代码如下: $ ps -ef $ ps -ef --smx       1822     1  0 11:38 ?        00:00:49 gnome-terminalsmx       1823  1822  0 11:38 ?        00:00:00 gnome-pty-helpersmx       1824  1822  0 11:38 pts/0    00:00:02 bashsmx       1827    

  • Linux查找特定程序whereis实例详解

    Linux 查找特定程序 whereis whereis 命令主要用于查找程序文件,并提供这个文件的二进制可执行文件.源代码文件和使用手册存放位置. 1.查找命令程序 例如,查找 touch 命令 [root@node1 /]# whereis touch touch: /usr/bin/touch /usr/share/man/man1/touch.1.gz 执行效果如下: 如果只需要查找 touch 命令的二进制文件,可以使用 -b 选项实现: [root@node1 /]# whereis

  • C语言编写Linux守护进程实例

    守护进程(Daemon)是运行在后台的一种特殊进程.它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件.守护进程是一种很有用的进 程.Linux的大多数服务器就是用守护进程实现的.比如,Internet服务器inetd,Web服务器httpd等.同时,守护进程完成许多系统任 务.比如,作业规划进程crond,打印进程lpd等. 守护进程的编程本身并不复杂,复杂的是各种版本的Unix的实现机制不尽相同,造成不同Unix环境下守护进程的编程规则并不一致.这需要读者注意,照搬 某些书上的

  • Linux查看进程的所有信息的方法示例

    服务器上有一个任务进程,当我们使用ps -ef | grep task查看时,只能得到一些最基本的信息,假如我们需要知道对应的文件路径.启动命令的完整路径,就无从下手了. 今天教大家一个方法来查看进程的所有信息,包括启动命令的完整路径.对应的文件完整路径等等信息:ls -l /proc/PID 例如使用ps -ef | grep webhook查看进程时,只能得到如下信息 > ps -ef | grep webhook root 15902 1 0 Aug15 ? 00:00:00 python

  • LINUX查看进程的4种方法(小结)

    进程是在 CPU 及内存中运行的程序代码,而每个进程可以创建一个或多个进程(父子进程). **查看进程方法:** 第一种: ps aux ps命令用于报告当前系统的进程状态.可以搭配kill指令随时中断.删除不必要的程序.ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态.进程是否结束.进程有没有僵死.哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的. a:显示当前终端下的所有进程信息,包括其他用户的进程. u:使用以用户为主

  • Linux ps命令详解及Linux查看进程的操作方法

    目录 一.常用操作 1.查看所有进程(连带命令行) 2.显示所有包含其他使用者的进程 3.查看指定进程(grep过滤) 4.查看CPU/内存占用率最高的进程 5.查看指定用户的进程 6.分页查看进程 二.拓展 1.TTY字段(终端类型) 2.STAT字段(进程状态) 3.僵尸进程 作用:查看系统进程,比如正在运行的进程有哪些,什么时候开始运行的,哪个用户运行的,占用了多少资源. 参数: -e     显示所有进程 -f     显示所有字段(UID,PPIP,C,STIME字段) -a     

随机推荐