最近,我将我的Linux发行版更新为wsl2。出现了一个错误,所以我的rails应用程序无法连接到PostgreSQL。我遵循了这文章中的说明,在重新启动计算机之前,一切都很正常。重新启动后,cat /etc/resolv.conf命令在nameserver项下显示不同的IP地址。看来,每次重启/关闭计算机后,我都必须更改pg_hba.conf。是否有任何方法将wsl2配置为具有稳定的nameserver,这样就不需要每次都更改pg_hba.conf了?谢谢。
发布于 2020-06-10 15:02:06
灵感来自这帖子。这就是我为解决这个问题所做的工作:
1.关闭/etc/resolv.conf 的生成
使用您的Linux提示符,(我使用Ubuntu)、修改(或创建) /etc/wsl.conf具有以下内容
[network]
generateResolvConf = false2.重新启动WSL2虚拟机
退出所有Linux提示并运行以下Powershell命令
wsl --shutdown/etc/resolv.conf 3.创建自定义
打开一个新的Linux提示符,并将cd发送到/etc
如果resolv.conf被软链接到另一个文件,则使用
rm resolv.conf创建具有以下内容的新resolv.conf
nameserver 172.20.128.14.重新启动WSL2虚拟机
编辑pg_hba.conf C:\Program Files\PostgreSQL\pg_version\data中的
TYPE DATABASE USER ADDRESS METHOD
host all all 172.20.0.1/16 md5因此,以这种方式,不需要每次在重新启动后编辑pg_hba.conf。
https://stackoverflow.com/questions/62301571
复制相似问题