📌  相关文章
📜  错误:监听 EADDRINUSE:地址已在使用中 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:58:16.358000             🧑  作者: Mango

监听 EADDRINUSE 错误

当你尝试在网络上建立一个监听时,可能会遇到 EADDRINUSE 错误,该错误意味着网络端口已被占用,该端口已被其他进程占用。这可能会发生在以下情况下:

  • 你没有关闭先前启动的进程,该进程仍在监听相同的端口。
  • 你尝试在相同的端口上启动两个不同的服务。
  • 其他进程正在使用相同的端口。
如何解决 EADDRINUSE 错误
1. 找到占用端口的进程

使用以下命令可以找到正在占用端口的进程:

sudo lsof -i :端口号

其中 端口号 是你想要查找的端口号。该命令将返回占用端口的进程的详细信息。

2. 杀死占用端口的进程

使用以下命令来杀死占用端口的进程:

kill -9 进程ID

其中 进程ID 是你在上一步中找到的进程的PID。

3. 更改服务端口

如果你不能杀死占用端口的进程,或者你想在同一台计算机上启动多个服务,则可以更改服务端口。在更改端口时,请确保你所选择的端口未被其他进程使用。

在大多数情况下,这些步骤都可以帮助你解决 EADDRINUSE 错误。如果你仍然无法解决问题,请检查你的代码,并确保你正在正确地启动并终止服务。

注意:请谨慎使用 kill -9 命令,因为它会强制杀死进程并可能导致数据丢失。在可行的情况下,请使用 kill 命令并等待进程正常退出。