我正在运行 ec2 debian 实例并尝试让 puppet 在其上运行。我希望我的主机名更具可读性,因此我更改了/etc/hostname
,然后运行/etc/init.d/hostname.sh start
,我可以在提示符中看到我的人性化主机名。其他所有应用程序似乎都可以很好地运行,但 puppet 不行(实际上这似乎是真正的问题):
$ cat /etc/hostname
service.XXX.com
$ hostname
service.XXX.com
$ facter | egrep '(host|domain)'
domain => compute-1.amazonaws.com
hostname => ec2-107-22-XXX-XXX
$ cat /etc/debian_version
6.0.1
我已经检查过 facter 代码,似乎它除了解析hostname
输出之外什么都不做。这个东西是从哪里来的?我想要我的主机名!
答案1
哎呀,看来它解析了 /etc/hosts,而我漂亮的主机名应该是“127.0.0.1”的第一个别名 ( 127.0.0.1 service.XXX.com localhost localhost.localdomain ...
)。有谁知道,这是预期的行为吗?
我仍然不确定 ec2-blah-blah-blah 来自哪里,但问题似乎已经解决。