Rumah > Soal Jawab > teks badan
伊谢尔伦2017-04-17 17:10:57
用一下命令查看
[root@web ~]# netstat -anp | grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1652/nginx: master
tcp 0 0 127.0.0.1:8080 0.0.0.0:* LISTEN 1377/httpd
tcp 0 0 10.1.1.14:9300 10.1.1.18:59080 ESTABLISHED 1305/java
tcp 0 0 127.0.0.1:49800 127.0.0.1:3306 ESTABLISHED 1715/zabbix_server:
tcp 0 0 10.1.1.14:50480 10.1.1.17:10050 TIME_WAIT -
tcp 0 0 127.0.0.1:3306 127.0.0.1:49806 ESTABLISHED 1410/mysqld
tcp 0 0 127.0.0.1:50280 127.0.0.1:3306 ESTABLISHED 1699/zabbix_server:
tcp 0 0 127.0.0.1:3306 127.0.0.1:49800 ESTABLISHED 1410/mysqld
tcp 0 0 127.0.0.1:3306 127.0.0.1:49804 ESTABLISHED 1410/mysqld
tcp 0 0 10.1.1.14:33880 10.1.2.16:10050 TIME_WAIT -
tcp 0 0 127.0.0.1:49806 127.0.0.1:3306 ESTABLISHED 1711/zabbix_server:
tcp 0 0 127.0.0.1:49808 127.0.0.1:3306 ESTABLISHED 1724/zabbix_server:
tcp 0 0 10.1.1.14:36802 10.1.1.18:10050 TIME_WAIT -
tcp 0 0 127.0.0.1:49804 127.0.0.1:3306 ESTABLISHED 1708/zabbix_server:
tcp 0 0 127.0.0.1:49802 127.0.0.1:3306 ESTABLISHED 1706/zabbix_server:
tcp 0 0 10.1.1.14:54880 10.1.1.16:10050 TIME_WAIT -
tcp 0 0 10.1.1.14:54808 10.1.1.16:10050 TIME_WAIT -
tcp 0 0 127.0.0.1:3306 127.0.0.1:49808 ESTABLISHED 1410/mysqld
tcp 0 0 127.0.0.1:3306 127.0.0.1:49802 ESTABLISHED 1410/mysqld
tcp 0 0 127.0.0.1:3306 127.0.0.1:50280 ESTABLISHED 1410/mysqld
raw 0 768 0.0.0.0:1 0.0.0.0:* 7 23580/fping
例如:1652/nginx: master,其中“1652”就是PID,“nginx: master”是程序名称。
用以下命令kill掉即可:
[root@web ~]# kill -9 1652
如果你知道这是什么程序,建议使用程序自带的命令停止服务,不要用kill粗暴地结束掉。
巴扎黑2017-04-17 17:10:57
这个是因为系统需要一定的时间去释放端口,例如当编写flask服务时如果没有设置为DEBUG模式会经常需要CTRL+C这样会导致5000端口无法立即释放,再次启动服务就会报端口已被占用。如果是自己编写的socket服务可以增加一行代码使系统能在服务停止后立即释放端口。
socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)