我想终止正在监听端口 5000 的进程。我不知道该怎么做,因为当我输入:
netstat -nlp | grep 5000
我有:
udp6 0 0 :::5000 :::* -
所以我不知道进程的名称。在这种情况下该如何处理。
问题针对:1. CentOS 2. Ubuntu
答案1
如果您看到的-
是(process ID)/(process name)
,那是因为您的用户没有权限查看正在监听该端口的进程。
您需要做的就是以 root 身份再次运行该命令 ( sudo netstat -nlp | grep 5000
)。
普通用户示例:
deltik@node51 [~]$ netstat -plant | grep '0.0.0.0:22'
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
以 root 用户为例:
deltik@node51 [~]$ sudo netstat -plant | grep '0.0.0.0:22'
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 14903/sshd
sshd
请注意,我现在可以看到PID 为1 的进程14903
正在监听 TCP 端口 22。