处理netstat中获取不到pid的进程

简介:

一般查看一台服务器,为了查看一台机器上运行的端口及监听的服务,常会用到netstat -luntp这个命令。

但是不是每一个运行的进程都能有pid显示,今天就遇到如下情况:

 

1、通过netstat 中加入一个e得参数查看,启动对应端口的用户。

netstat -letnp|grep 2049

tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      0          109911170   -               

tcp6       0      0 :::2049                 :::*                    LISTEN      0          109911174   -    

 

2、通过lsof -i:port 查看出,占用端口中启动的程序。

root@iZ239fkpuw4Z:~# lsof -i:2049

root@iZ239fkpuw4Z:~# 

 

3、另一种可能是,这是一个内核线程,这没有 PID,因为它运行在内核。

# rpcinfo -p localhost

   program vers proto   port  service

    100000    4   tcp    111  portmapper

    100000    3   tcp    111  portmapper

    100000    2   tcp    111  portmapper

    100000    4   udp    111  portmapper

    100000    3   udp    111  portmapper

    100000    2   udp    111  portmapper

    100024    1   udp  45890  status

    100024    1   tcp  39339  status

    100003    2   tcp   2049  nfs

    100003    3   tcp   2049  nfs

    100003    4   tcp   2049  nfs

    100227    2   tcp   2049

    100227    3   tcp   2049

    100003    2   udp   2049  nfs

    100003    3   udp   2049  nfs

    100003    4   udp   2049  nfs

    100227    2   udp   2049

    100227    3   udp   2049

    100021    1   udp  59559  nlockmgr

    100021    3   udp  59559  nlockmgr

    100021    4   udp  59559  nlockmgr

    100021    1   tcp  56671  nlockmgr

    100021    3   tcp  56671  nlockmgr

    100021    4   tcp  56671  nlockmgr

    100005    1   udp  39406  mountd

    100005    1   tcp  38170  mountd

    100005    2   udp  55870  mountd

    100005    2   tcp  43332  mountd

    100005    3   udp  55118  mountd

    100005    3   tcp  56334  mountd

目录
相关文章
|
Linux 测试技术 开发工具
Linux的进程pid编号极限
整理本文,起源是看到知乎上的一个问题,为什么Linux的进程pid编号极限最大值( process pid max)是131070?
235 0
|
7月前
|
缓存 数据安全/隐私保护 虚拟化
windows端口被占用,无法通过netstat找到进程,占用的端口又不能修改,该怎么办?
项目运行时服务器8080端口被占用,常规`netstat`命令找不到占用进程。解决方法包括:1) 强制关机重启释放端口;2) 使用`netstat -anobq`或Windows 10的`Get-NetTCPConnection` PowerShell命令查找BOUND状态的进程;3) 调整Windows动态端口范围,避免冲突。注意,强制关机可能影响数据安全。
1688 2
|
8月前
|
Linux Shell
【Linux】解决:为什么重复创建同一个【进程pid会变化,而ppid父进程id不变?】
【Linux】解决:为什么重复创建同一个【进程pid会变化,而ppid父进程id不变?】
|
8月前
驱动保护 -- 通过PID保护指定进程
驱动保护 -- 通过PID保护指定进程
77 0
驱动保护 -- 通过PID保护指定进程
|
8月前
|
监控 Unix Linux
C语言进程(第一章进程基础,fork()函数,pid_t, pid, getpid())
C语言进程(第一章进程基础,fork()函数,pid_t, pid, getpid())
385 0
|
8月前
|
网络协议 网络安全
百度搜索:蓝易云【通过netstat命令查看进程与端口的对应关系?】
通过netstat命令,你可以查看当前系统上所有的网络连接信息,并通过PID/Program name列确定与每个连接关联的进程。这对于识别占用特定端口的进程非常有用。
61 1
|
存储 Linux 虚拟化
Linux6.1中为什么用Radix树替换位图(bitmap)来管理进程pid
在过去的几十年中,Linux内核为了有效地管理进程,采用了位图(bitmap)数据结构来记录和跟踪进程的PID。我们知道Linux支持的最大进程数量为65535个,那么用位图来表示的话只需要16位bit就够了,这大大节约了内存空间,随着系统规模的扩大和复杂性增加,尤其是云计算、容器等新兴虚拟化技术大爆发的时代中,操作系统经常会在短时间内快速创建或者销毁大量进程,在这种场景下位图的全面查找时性能问题就逐渐暴露出来了。为了解决这些问题,Linux内核逐渐采用radix树(radix-tree)来替代位图,对进程PID进行管理,这个替换的思路就是用空间换时间。
|
SQL Windows
Windows 下80端口被进程 System & PID=4 占用的解决方法
Windows 下80端口被进程 System & PID=4 占用的解决方法
861 0
驱动保护 -- 通过PID保护指定进程
驱动保护 -- 通过PID保护指定进程
114 0
|
Shell
Shell - 根据PID过滤进程信息
Shell - 根据PID过滤进程信息
51 0