如何设置Debian Jessie系统的主机名?

Debian Jessie带有systemd 。 设置主机名的build议是使用systemname的hostnamectl。 但是, 在EC2上引导的Debian Jessie 映像上 ,该命令不起作用(即使显示当前主机名):

 sudo hostnamectl sudo: unable to resolve host ip-172-30-0-17 Failed to create bus connection: No such file or directory 

所以我试图在这里推荐Debian的build议。

 echo "myhostname" > /etc/hostname echo "127.0.0.1 myhostname" >> /etc/hosts /etc/init.d/hostname.sh start /etc/init.d/networking force-reload 

但是,注销并重新login后,主机名不会更改。 但重启后它会改变,但这对我来说是不可取的。

这个方法曾经在Debian Wheezy中工作。

任何帮助获得这一权利表示赞赏。

发现问题。 Debian Jessie在EC2上的基础AMI没有安装dbus。 hostnamectl似乎需要dbus。 所以解决的办法是:

 apt-get update && apt-get install -y dbus 

接着:

 hostname=myname echo "127.0.0.1 $hostname" >> /etc/hosts hostnamectl set-hostname "$hostname" echo "$hostname" > /etc/hostname # uneeded 

这工作。

要更改EC2主机的主机名,您必须按照以下步骤操作:

  1. 以root身份login: $: sudo su -
  2. 安装dbus: $: apt-get update && apt-get install -y dbus
  3. 设置主机名: hostnamectl set-hostname <HOSTNAME>

确保使用要设置的主机名来更改<HOSTNAME>