我已经编辑了我的 /etc/hosts 文件,但是当我重新启动时,我编辑的不需要的行被添加到我的 /etc/hosts 文件中。
哪个进程正在执行此操作?它从哪里获取主机名和别名?
答案1
我在 Ubuntu 20.04 上遇到了同样的问题,我在 /etc/hosts 中发现了以下信息
# Your system has configured 'manage_etc_hosts' as True.
# As a result, if you wish for changes to this file to persist
# then you will need to either
# a.) make changes to the master file in /etc/cloud/templates/hosts.debian.tmpl
# b.) change or remove the value of 'manage_etc_hosts' in
# /etc/cloud/cloud.cfg or cloud-config from user-data
我选择了选项“a”并更改了 /etc/cloud/templates/hosts.debian.tmpl。它为我解决了这个问题。
答案2
/etc/cloud/cloud.cfg
禁用以停止/etc/hosts
被覆盖的实际选项是 - update_etc_hosts
,而不是主机文件注释中所说的内容。
为了防止/etc/hosts
被覆盖,请将其注释掉,如下所示:
# The modules that run in the 'init' stage
cloud_init_modules:
- migrator
- seed_random
- bootcmd
- write-files
- growpart
- resizefs
- disk_setup
- mounts
- set_hostname
- update_hostname
- ca-certs
- rsyslog
- users-groups
- ssh
# - update_etc_hosts