linux 根据端口查看进程

在 Linux 系统中,根据端口查看对应进程的常用命令有 ssnetstatlsof 三种,以下是具体操作步骤和示例,优先推荐 ss(性能更优)和 lsof(信息更全)。

一、使用 ss 命令(推荐,替代 netstat

ss 是 Linux 下查看套接字信息的工具,速度快、占用资源少,默认系统一般自带。

1. 基本语法
bash 复制代码
ss -tulnp | grep 端口号
2. 参数说明
  • -t:显示 TCP 协议端口
  • -u:显示 UDP 协议端口
  • -l:仅显示监听状态的端口
  • -n:以数字形式显示端口号(不解析服务名)
  • -p:显示端口对应的进程 PID 和程序名(需要 root 权限,否则不显示进程信息)
3. 示例(查看 8080 端口进程)
bash 复制代码
# 普通用户执行(可能无进程信息)
ss -tulnp | grep 8080

# root 用户执行(完整信息)
sudo ss -tulnp | grep 8080
4. 输出示例
复制代码
LISTEN 0      128         0.0.0.0:8080      0.0.0.0:*    users:(("java",pid=1234,fd=42))

说明:8080 端口由 java 程序占用,进程 PID 为 1234

二、使用 lsof 命令(信息最全面)

lsofList Open Files 的缩写,可列出系统中打开的文件和端口关联的进程,部分系统需手动安装。

1. 安装 lsof(如未安装)
bash 复制代码
# CentOS/RHEL
sudo yum install lsof -y

# Ubuntu/Debian
sudo apt install lsof -y
2. 基本语法
bash 复制代码
lsof -i:端口号
3. 参数说明
  • -i:显示网络相关的文件 / 端口
  • :端口号:指定要查询的端口
4. 示例(查看 80 端口进程)
bash 复制代码
sudo lsof -i:80
5. 输出示例
bash 复制代码
COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   5678  root    6u  IPv4  12345      0t0  TCP *:http (LISTEN)
nginx   5679  www     6u  IPv4  12345      0t0  TCP *:http (LISTEN)

说明:80 端口由 nginx 程序占用,有两个进程,PID 分别为 56785679

三、使用 netstat 命令(传统工具,部分系统已弃用)

netstat 是传统的网络状态查看工具,功能与 ss 类似,但性能稍弱,部分系统需安装 net-tools 包。

1. 安装 netstat(如未安装)
bash 复制代码
# CentOS/RHEL
sudo yum install net-tools -y

# Ubuntu/Debian
sudo apt install net-tools -y
2. 基本语法
bash 复制代码
netstat -tulnp | grep 端口号
3. 参数说明

ss 命令参数完全一致:

  • -t TCP 端口 -u UDP 端口 -l 监听状态 -n 数字端口 -p 进程信息
4. 示例
bash 复制代码
sudo netstat -tulnp | grep 3306

四、补充技巧

  1. 根据 PID 查看进程详情 查到 PID 后,可通过 ps 命令查看进程的详细信息:

    bash 复制代码
    ps -ef | grep 进程PID

    示例:ps -ef | grep 1234

  2. 查看所有监听端口及进程

    bash 复制代码
    sudo ss -tulnp  # 或 sudo netstat -tulnp

注意事项

  1. 查看进程信息(-p 参数)需要 root 权限,普通用户执行可能无法显示 PID 和程序名。
  2. 如果端口未被监听或无进程占用,命令执行后无输出。
相关推荐
herinspace6 小时前
管家婆软件年结存后快马商城操作注意事项
服务器·数据库·windows
_F_y6 小时前
Linux:进程间通信
linux
嘻哈baby6 小时前
Ansible自动化运维入门:从手工到批量部署
运维·自动化·ansible
weixin_462446236 小时前
Kali/ubuntu Linux 中彻底删除 Cursor 编辑器(含 dpkg 非空目录警告解决)
linux·ubuntu·cursor
Hard but lovely6 小时前
linux:----进程守护化(Daemon)&&会话的原理
linux·运维·服务器
吕了了7 小时前
86 [深度解析] 系统的产生依赖于什么?
运维·windows·电脑·系统
芝麻馅汤圆儿7 小时前
sockperf 工具
linux·服务器·数据库
YJlio7 小时前
桌面工具学习笔记(11.1):BgInfo——给服务器桌面“刻”上关键信息
服务器·笔记·学习
IDC02_FEIYA7 小时前
Windows 服务器任务管理器用户客户端名怎么修改?Windows 10修改电脑设备名称
运维·服务器·windows