Linux 下查看端口占用情况

  • 使用 lsof

在管理者模式下,使用 ‘lsof -i’ 显示当前端口的占用情况

1
2
3
4
5
6
7
8
9
10
11
12
13
gax@ubuntu:~$ sudo lsof -i
[sudo] password for gax:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
avahi-dae 796 avahi 12u IPv4 18915 0t0 UDP *:mdns
avahi-dae 796 avahi 13u IPv6 18916 0t0 UDP *:mdns
avahi-dae 796 avahi 14u IPv4 18917 0t0 UDP *:57000
avahi-dae 796 avahi 15u IPv6 18918 0t0 UDP *:49216
cupsd 798 root 10u IPv6 20749 0t0 TCP ip6-localhost:ipp (LISTEN)
cupsd 798 root 11u IPv4 20750 0t0 TCP localhost:ipp (LISTEN)
cups-brow 829 root 8u IPv4 20936 0t0 UDP *:ipp
dhclient 976 root 6u IPv4 21916 0t0 UDP *:bootpc
dnsmasq 997 nobody 4u IPv4 21971 0t0 UDP ubuntu:domain
dnsmasq 997 nobody 5u IPv4 21972 0t0 TCP ubuntu:domain (LISTEN)

各列信息意义如下

1
2
3
4
5
6
7
8
9
COMMAND:进程名字
PID:进程标识符
USER:进程拥有者
FD:文件描述符
TYPE:文件类型
DEVICE:指定磁盘名称
SIZE/OFF:文件大小
NODE:索引节点
NAME:协议名称、IP、端口、状态。若是常见服务,则显示协议名称

查看某一端口的占用进程

1
2
3
gax@ubuntu:~$ sudo lsof -i:57000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
avahi-dae 796 avahi 14u IPv4 18917 0t0 UDP *:57000
  • 使用 netstat
1
2
3
4
5
6
7
8
9
10
gax@ubuntu:~$ netstat -apn |head
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN -
tcp6 0 0 ::1:631 :::* LISTEN -
udp 0 0 0.0.0.0:57000 0.0.0.0:* -
udp 0 0 0.0.0.0:5353 0.0.0.0:* -
udp 0 0 127.0.1.1:53 0.0.0.0:* -
udp 0 0 0.0.0.0:68 0.0.0.0:* -
udp 0 0 0.0.0.0:631 0.0.0.0:* -

显示 TCP, UDP 端口和进程情况

1
2
3
4
5
6
7
8
9
10
11
12
gax@ubuntu:~$ netstat -tunlp
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN -
tcp6 0 0 ::1:631 :::* LISTEN -
udp 0 0 0.0.0.0:57000 0.0.0.0:* -
udp 0 0 0.0.0.0:5353 0.0.0.0:* -
udp 0 0 127.0.1.1:53 0.0.0.0:* -
udp 0 0 0.0.0.0:68 0.0.0.0:* -
udp 0 0 0.0.0.0:631 0.0.0.0:* -
udp6 0 0 :::5353 :::* -
udp6 0 0 :::49216 :::* -
1
2
3
4
5
-t 仅显示tcp相关选项
-u 仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字
-l 仅列出在listen的服务状态
-p 显示建立相关链接的程序名

杀死进程

1
2
killall 进程名
kill pid
赞赏是对作者最大的支持!
0%