resolvconf 包创建损坏的 /etc/resolv.conf 文件

resolvconf 包创建损坏的 /etc/resolv.conf 文件

我在 debian 11 下使用 resolvconf 包遇到了一个奇怪的问题。

无论我输入哪种配置,由 resolvconf 服务创建的 /etc/resolv.conf 文件都有点损坏。

挖掘 说:

dig: parse of /etc/resolv.conf failed

如果我使用像 nano 这样的编辑器仅添加一个空格或换行符,甚至不添加任何内容,例如将文件从 nano 覆盖到 /etc/resolv.conf dig 会再次返回读取该文件,那么能够执行以下操作的操作系统也是如此dns 查找否则不会。

对我来说语法没问题,实际内容是:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

nameserver 127.0.0.1
nameserver 127.0.2.1

我在机器上有一个配置好的绑定服务器,可以正常工作,并且实际配置可以工作,但只有当我从 Nano 读取它并将其重新保存到位时。

关于文件本身,我认为可能是 resolvconf 守护进程和 nano 所做的事情之间的权限差异。

这是在纳米编辑之前:

lrwxrwxrwx 1 root root 29 Apr 10 19:24 /etc/resolv.conf -> ../run/resolvconf/resolv.conf

这是纳米编辑后的:

lrwxrwxrwx 1 root root 29 Apr 10 19:24 /etc/resolv.conf -> ../run/resolvconf/resolv.conf

我还把第一个做了个cp,换了,原来的不行,新的可以。

比较的文件是相同的...

我不知道发生了什么:(

答案1

我目视比较了这些文件,没有发现任何不同。然而,除了一点之外,权限错误@AB 建议我,我还发现我的头文件中有一行 with\r\n而不是。\n

使用 nano 编辑和保存文件会自动修复换行错误,但使用该diff工具一切都更加清晰。

不要相信视觉比较的使用差异! :D

相关内容