Debian Jessie viene con systemd
. La recomendación para establecer el nombre de host es usar hostnamectl para systemd. Sin embargo, este comando no funciona (incluso para mostrar el nombre de host actual) en la imagen de Debian Jessie arrancada en EC2 :
sudo hostnamectl
sudo: unable to resolve host ip-172-30-0-17
Failed to create bus connection: No such file or directory
Así que intenté seguir adelante con la recomendación de Debian aquí .
echo "myhostname" > /etc/hostname
echo "127.0.0.1 myhostname" >> /etc/hosts
/etc/init.d/hostname.sh start
/etc/init.d/networking force-reload
Sin embargo, después de cerrar sesión y volver a iniciar sesión, el nombre de host no cambia. Sin embargo, cambia después de un reinicio, pero eso no es deseable para mí.
Este método solía funcionar en Debian Wheezy.
Cualquier ayuda para hacer esto bien es apreciada.
Respuestas:
Encontró el problema. La base AMI en EC2 para Debian Jessie no tiene instalado dbus. hostnamectl parece necesitar dbus. Entonces la solución es:
Y entonces:
Esto funcionó.
fuente
hostnamectl set-hostname myhostname
actualiza automáticamente el contenido de/etc/hostname
(el nombre de host estático), por lo que no es necesario el primerecho
comando.timedatectl
tiene la misma dependencia hacia dbus ... ¡gracias por compartir su solución!Para cambiar el host de su host EC2, debe seguir los pasos a continuación:
$: sudo su -
$: apt-get update && apt-get install -y dbus
hostnamectl set-hostname <HOSTNAME>
Asegúrese de cambiar
<HOSTNAME>
con el nombre de host que desea establecer.fuente
En realidad, no necesitamos instalar ningún paquete, solo necesitamos editar el archivo según su distribución de la lista a continuación.
Edite la línea como se muestra a continuación, (Una comentada es la línea original), reemplace {{fqdn}} y {{hostname}} como se muestra a continuación.
Alternativamente, establezca "manage_etc_hosts:" en falso como se muestra a continuación y podrá modificar el archivo / etc / hosts ya que dejará de anular el archivo hosts.
fuente