ubuntu 20.04 突然使用端口 5432?

ubuntu 20.04 突然使用端口 5432?

我在 ubuntu 18.04 上成功使用了 postgres docker。现在我更新到了 ubuntu 20.04,突然无法启动 docker,因为弹出了以下错误 - 请注意,此错误在刚启动后一直出现:

$ sudo docker start pg
Error response from daemon: driver failed programming external connectivity on endpoint pg (d188f0712e7079530a6d82eaf8c8770ca0ba8b755e41d87810a691e945725f52): listen tcp4 0.0.0.0:5432: bind: address already in use
Error: failed to start containers: pg

现在,为了查看哪些进程可能正在使用该端口,我尝试了netstat -nlp但是这给出了无用的行:

tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      - 

表示“没有 PID/程序名称”正在使用该端口。- 是什么原因导致 ubuntu 突然阻止公共 postgres 端口。我可以更新 docker 以使用其他端口或防止 ubuntu 阻止该端口吗?(不破坏任何东西)。


lsof发现 postgres 数据库在该地址上运行:但是从 18.04 更新到 20.04 发生了什么变化,为什么突然使用了这个地址?我能找到哪个工具负责这个吗?

$ sudo lsof -i tcp:5432
COMMAND   PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
postgres 1285 postgres    3u  IPv4  37282      0t0  TCP localhost:postgresql (LISTEN)

pstree -s 1285(或重新启动后正确的版本)给出以下响应:

systemd───postgres───6*[postgres]

使用以下方法追踪启动进程sudo systemctl list-unit-files --type=service

返回以下内容:

postgresql.service                         enabled         enabled      
[email protected]                        indirect        enabled

但这仍然不能让我知道是什么原因导致 postgres 服务开始在我的电脑上运行(或哪个应用程序负责)。

相关内容