M1 mac 进程不断自动生成并锁定我的端口

Posted

技术标签:

【中文标题】M1 mac 进程不断自动生成并锁定我的端口【英文标题】:M1 mac process keeps autogenerating and locks my port 【发布时间】:2021-11-06 23:41:37 【问题描述】:

我尝试使用端口 5000 运行我的 express 应用程序,但我发现一些进程已经在使用它:

↳ lsof -i :5000
COMMAND    PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
ControlCe 1677 user   32u  IPv4 0x728ff8e52d51c6dd      0t0  TCP *:commplex-main (LISTEN)
ControlCe 1677 user   33u  IPv6 0x728ff8e51d98ec65      0t0  TCP *:commplex-main (LISTEN)

所以我只是尝试杀死它们以解锁端口,但它不起作用,因为一旦我运行 kill(或 sudo kill)命令,具有新 PID 的进程再次锁定我的 5000 端口。

↳ kill 1677
↳ lsof -i :5000
COMMAND    PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
ControlCe 2159 user   32u  IPv4 0x728ff8e52fd4dc1d      0t0  TCP *:commplex-main (LISTEN)
ControlCe 2159 user   33u  IPv6 0x728ff8e51d98d0e5      0t0  TCP *:commplex-main (LISTEN)

我杀死了进程 1677,然后出现了一个新进程(PID 为 2159)。 它有不同的PID和不同的设备。我已经尝试重新启动我的笔记本电脑,但它也无法正常工作。有没有使用 M1 或 Intel Mac 的人遇到过类似的问题?

编辑:我认为 ControlCe 是指控制中心?

【问题讨论】:

【参考方案1】:

关闭AirPlay Receiver(监听端口 5000)为我解决了这个问题:

转到系统偏好设置 --> 分享 --> 取消选中AirPlay Receiver

更多详情: https://utf9k.net/questions/macos-port-5000-monterey/

【讨论】:

拯救了我的一天。谢谢!【参考方案2】:

我也遇到了同样的问题。我认为这是因为 macOS Monterey (12.0)。要修复它,请在终端中运行以下命令:

pkill ControlCenter; nc -l 5000

...然后在几秒钟后按 Ctrl+C。

这会做什么,它会杀死ControlCenter 进程,然后它会启动一个空的netcat TCP 服务器,监听ControlCenter 使用的端口,即5000。这样,因为ControlCenter杀死时自动重启,它会在ControlCenter启动之前分配那个端口,这样当它启动时,它会发现它的端口在使用中,它会死。

【讨论】:

以上是关于M1 mac 进程不断自动生成并锁定我的端口的主要内容,如果未能解决你的问题,请参考以下文章

Clion for Mac(M1)配置环境傻瓜教学

M1 Mac 使用 gitlab-runner 自动化打包上传

串行 Mac OS X 不断冻结/锁定/消失 USB 到 Arduino

Mac使用技巧:移除Mac开机密码或屏幕锁定密码的方法

为啥我的 PDF 生成进程会锁定我站点中的其他 ajax 进程?

生成树中的5种交换机端口状态和3种生成树协议模式