为什么更改 /etc/hosts 中的完全限定域名不会更新完全限定域名?

Why does changing the fully qualified domain name in /etc/hosts not update the fully qualified domain name?

我在虚拟机中 运行 Ubuntu 18.04。当我使用 hostname 检查主机名或使用 hostname -fhostname --fqdnhostnamectl 检查完全限定的域名时,我得到每个默认值 ubuntu。我想将主机名永久更新为 host 并将完全限定域名更新为 host.okd.dns.

我已将文件 /etc/hostname 更改为仅包含名称 host。我还更改了文件 /etc/hosts 以显示如下(不包括 IPv6 主机):

127.0.0.1       localhost
127.0.1.1       host.okd.dns

保存并重新启动 VM 后,当我检查 hostname 它 returns host 时如预期的那样,但是当我使用 hostname -f、[=14 检查 FQDN 时=] 或 hostnamectl 它也 returns host 只是没有像我期望的那样附加 .okd.dns

更新Ubuntu 18.04 的FQDN 似乎有几种方法,我已经尝试了大部分方法,包括这种方法,它似乎是最常见的。我需要做什么才能更新并保留对 FQDN 的更改?

显然,我需要在 /etc/hosts 文件中的 host.okd.dns 之后添加 host。我确定我过去曾尝试过此操作,但也许我在某处犯了其他错误,但没有反映出来。执行此操作并重新启动后,hostname -fhostname --fqdn 都如预期的那样 return host.okd.dns