“# 自动生成的主机名。请不要删除此评论。”为什么不呢?

“# 自动生成的主机名。请不要删除此评论。”为什么不呢?

在 CentOS (但可能是其他发行版),/etc/hosts有以下评论:

# Auto-generated hostname. Please do not remove this comment.

由于评论本身要求不要被删除,因此似乎好像它除了提供信息之外还有其他用途。也许一些包会检查它是否存在。

用谷歌搜索这个确切的评论会显示许多主机文件都包含它,尽管没有任何结果可以解释评论本身的来源。


编辑:另一个提到此评论的问题指出,这是重启时 hosts 文件被覆盖的原因。对我来说情况并非如此,因为我的 hosts 文件已经有自定义条目,从未被任意覆盖。仅有的我拥有的带有此评论的机器处于生产环境中,因此我无法重新启动或删除该评论进行测试。

这个问题在这里: 为什么我的主机文件在重启时重置?


这条评论的原因是什么?删除它会产生什么后果?

答案1

我们去问问吧Debian 代码搜索关于此文本。结果 1 的 1:

vzctl_4.9.4-6/etc/dists/scripts/functions

本地主机=“$2”
本地 IP=“$3”
local comm='# 自动生成的主机名。请不要删除此评论。'
[ -f “${cfg}” ] || 触摸 ${cfg}

似乎与控制寄存器包,它是OpenVZ/Virtuozzo容器“虚拟化”系统。

在这个文件中,有一个awk脚本会动态重写 /etc/hosts,以确保系统自己的本地主机名在使用 更改后仍可解析vzctl set --hostname。它会查找此注释 ( $0 == comm) 以便……嗯,我不太清楚是什么。

如果您不使用 vzctl,删除标题应该不会有问题。

附注:尽管编辑 /etc/hosts 以匹配系统主机名一直是必要的,即使在 OpenVZ 之外,但现在由于 nss-myhostname 和/或 systemd-resolved 能够动态产生相同的答案,它逐渐变得无关紧要。

相关内容