目录
  • 一、查看已知端口占用情况
  • 二、查看全部端口占用情况
  • 三、查看具体端口被哪个程序占用
  • 四、kill被占用的进程
  • 五、检查对应端口是否还在占用

一、查看已知端口占用情况

比如,我们想知道8080端口的使用情况,或者说被谁占用了,命令如下:

 netstat -anp | grep 8080

结果如下:

也可以使用命令:

netstat -tln | grep 8080

结果:

和上个命令对比,少了“/java”,这个显示的是进程号以及被哪个程序所占用。

如果没有被占用,就什么都不显示。

二、查看全部端口占用情况

netstat -anp # 或者 netstat -tln

显示结果分别如下面:

[root@Cent0S8-FTP sysconfig]# netstat -anp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:44321 0.0.0.0:* LISTEN 1740/pmcd   
tcp 0 0 127.0.0.1:4330 0.0.0.0:* LISTEN 2715/pmlogger   
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd   
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1191/sshd   
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1196/cupsd
tcp 0 0 192.168.10.111:22 192.168.10.112:56798 ESTABLISHED /sshd: fangd
tcp 0 0 192.168.10.111:22 192.168.10.112:58794 ESTABLISHED /sshd: fangd
tcp 32 0 192.168.10.111:35222 8.43.85.13:443 CLOSE_WAIT 3876/gnome-shell
tcp 0 52 192.168.10.111:22 192.168.10.112:56674 ESTABLISHED /sshd: fangd
tcp6 0 0 ::1:44321 :::* LISTEN 1740/pmcd   
tcp6 0 0 ::1:4330 :::* LISTEN 2715/pmlogger   
tcp6 0 0 :::111 :::* LISTEN 1/systemd   
tcp6 0 0 :::21 :::* LISTEN 1430/vsftpd   
tcp6 0 0 :::22 :::* LISTEN 1191/sshd   
tcp6 0 0 ::1:631 :::* LISTEN 1196/cupsd
udp 0 0 0.0.0.0:5353 0.0.0.0:* 982/avahi-daemon: r
udp 0 0 192.168.10.111:46722 193.182.111.143:123 ESTABLISHED 985/chronyd   
udp 0 0 0.0.0.0:67 0.0.0.0:* 2632/dnsmasq
udp 0 0 192.168.10.111:68 192.168.10.1:67 ESTABLISHED 1176/NetworkManager
udp 0 0 0.0.0.0:111 0.0.0.0:* 1/systemd   
udp 0 0 0.0.0.0:45242 0.0.0.0:* 982/avahi-daemon: r
udp 0 0 127.0.0.1:323 0.0.0.0:* 985/chronyd   
udp6 0 0 :::5353 :::* 982/avahi-daemon: r
udp6 0 0 :::111 :::* 1/systemd   
udp6 0 0 ::1:323 :::* 985/chronyd   
udp6 0 0 :::41737 :::* 982/avahi-daemon: r
raw6 0 0 :::58 :::* 7 1176/NetworkManager
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node PID/Program name Path
unix 2 [ ACC ] SEQPACKET LISTENING 24579 1/systemd /run/systemd/coredump
unix 2 [ ACC ] STREAM LISTENING 29959 967/lsmd /var/run/lsm/ipc/simc

[root@Cent0S8-FTP sysconfig]# netstat -tln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:44321 0.0.0.0:* LISTEN   
tcp 0 0 127.0.0.1:4330 0.0.0.0:* LISTEN   
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN   
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN   
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN   
tcp6 0 0 ::1:44321 :::* LISTEN   
tcp6 0 0 ::1:4330 :::* LISTEN   
tcp6 0 0 :::111 :::* LISTEN   
tcp6 0 0 :::21 :::* LISTEN   
tcp6 0 0 :::22 :::* LISTEN   
tcp6 0 0 ::1:631 :::* LISTEN

三、查看具体端口被哪个程序占用

lsof -i :8080

[root@Cent0S8-FTP sysconfig]# lsof -i :8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java root 45u IPv6 0t0 TCP *:webcache (LISTEN)

四、kill被占用的进程

我们通过三中的命令得到PID对应的,或者通过命令“netstat -anp | grep 8080”得到的“/java”,这里的都是端口占用的对应进程的进程号,我们杀掉对应进程号即可。

 kill -9 

五、检查对应端口是否还在占用

在“四”中,我们kill了对应的进程,那么是否成功了呢,我们可以通过“一”中的命令再查看一下8080端口的使用情况。

netstat -anp | grep 8080

到此这篇关于Linux查看端口占用情况的文章就介绍到这了,更多相关Linux查看端口内容请搜索本网站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本网站!

您可能感兴趣的文章:

  • Linux查看端口占用情况的常用命令
  • Linux查看端口占用的几种常用命令
  • LINUX中如何查看某个端口是否被占用的方法
  • linux下端口被占用问题以及解除方式