我在EC2上使用Amazon Linux,在安装时将以下云init指令作为用户数据传递:
#cloud-config hostname: example.com locale: en_US.utf8 manage_etc_hosts: true manage_resolv_conf: false package_update: true package_upgrade: true timezone: Europe/Berlin
除了主机名之外,任何工作都可以正常工作。 不知何故,它不会改变,即使重新启动它仍然在IP地址。 如果我尝试与红帽企业Linux AMI完全相同,一切正常 – 包括主机名。 有谁知道我怎么能在亚马逊Linux上也能工作?
我有这个确切的问题,几次了。 我发现解决的唯一方法是强制使用crontab在重新启动时进行设置;
types:
crontab -e -u root
放入它:
@reboot /usr/bin/hostname web1.whatever.com
您可能需要确认hostname的位置(使用which hostname并放置完整path,crontab很less有$ PATH,并且大部分都不能在/bin之外find二进制文件)。 保存并退出。 如果你愿意,重新启动。
当它回来,主机名应该是你设置它。