O mencionado killall -9 node, sugerido por Patrick, funciona conforme o esperado e resolve o problema, mas você pode ler a parte de edição desta resposta sobre o porquê.kill -9 não ser a melhor maneira de fazê-lo.
Além disso, convém direcionar um único processo, em vez de matar cegamente todos os processos ativos.
Nesse caso, primeiro obtenha o ID do processo (PID) do processo em execução nessa porta (por exemplo, 8888):
lsof -i tcp:8888
Isso retornará algo como:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
node 57385 You 11u IPv6 0xac745b2749fd2be3 0t0 TCP *:ddi-tcp-1 (LISTEN)
Então faça (ps - na verdade não . Por favor, continue lendo abaixo):
kill -9 57385
Você pode ler um pouco mais sobre isso aqui .
Edição: Eu estava lendo sobre um tópico bastante relacionado hoje e me deparei com este tópico interessante sobre por que eu não deveria kill -9um processo .
Geralmente, você deve usar kill -15 antes de kill -9 para dar ao processo de destino a chance de se limpar. (Os processos não podem capturar ou ignorar o SIGKILL, mas podem e muitas vezes capturam o SIGTERM.) Se você não der ao processo a chance de concluir o que está fazendo e limpar, poderá deixar arquivos corrompidos (ou outro estado) por perto. que não será capaz de entender depois de reiniciado.
Portanto, como declarado, você deve matar melhor o processo acima com:
kill -15 57385
EDIT 2 : Como observado em um comentário por aqui muitas vezes, esse erro é consequência de não sair de um processo normalmente. Isso significa que muitas pessoas saem de um comando de nó (ou qualquer outro) usando CTRL + Z . A maneira correta de interromper um processo em execução é emitir o CTRL + C comando que executa uma saída limpa.
Sair de um processo da maneira correta liberará essa porta ao desligar. Isso permitirá que você reinicie o processo sem ter o trabalho de matá-lo antes de poder executá-lo novamente.