在Linux系统中,查看端口及其关联的应用程序是一项常见的任务,有助于了解系统的网络服务和资源占用情况。以下是几种常用的方法来查看端口和应用:
netstat
命令netstat
是一个强大的网络统计工具,可以显示网络连接、路由表、接口统计等。
基本用法:
netstat -tuln
-t
: 显示TCP连接。-u
: 显示UDP连接。-l
: 仅显示监听套接字。-n
: 以数字形式显示地址和端口号。示例输出:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp6 0 0 :::80 :::* LISTEN
udp 0 0 0.0.0.0:123 0.0.0.0:*
ss
命令ss
是 netstat
的替代品,性能更好,输出更简洁。
基本用法:
ss -tuln
-t
: 显示TCP连接。-u
: 显示UDP连接。-l
: 仅显示监听套接字。-n
: 以数字形式显示地址和端口号。示例输出:
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 100 [::]:80 [::]:*
lsof
命令lsof
(List Open Files)可以列出当前系统打开的所有文件,包括网络端口。
基本用法:
lsof -i :port_number
-i
: 指定网络协议和端口号。示例输出:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 1234 root 3u IPv4 12345 0t0 TCP *:22 (LISTEN)
nginx 2345 www-data 6u IPv4 23467 0t0 TCP *:80 (LISTEN)
fuser
命令fuser
可以显示使用指定文件或文件系统的进程。
基本用法:
fuser -n tcp port_number
-n tcp
: 指定网络协议为TCP。示例输出:
port_number: 1234/tcp: sshd
问题1:无法查看端口信息
问题2:端口被占用但找不到进程
通过以上方法,你可以有效地查看Linux系统中的端口及其关联的应用程序,帮助你更好地管理和维护系统。
领取专属 10元无门槛券
手把手带您无忧上云