Como definir o nome do host para um sistema Debian Jessie?

17

Debian Jessie vem com systemd . A recomendação para definir o nome do host está usando hostnamectl para systemd. No entanto, este comando não funciona (mesmo para exibir o nome do host atual) na imagem do Debian Jessie inicializado no EC2 :

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

Então eu tentei seguir em frente com a recomendação do Debian aqui .

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

No entanto, após efetuar logout e efetuar login novamente, o nome do host não é alterado. No entanto, muda após uma reinicialização, mas isso não é desejável para mim.

Este método usado para trabalhar no Debian Wheezy.

Qualquer ajuda para acertar isso é bem-vinda.

    
por donatello 27.04.2015 / 13:33

3 respostas

31

Encontrou o problema. A base AMI no EC2 para o Debian Jessie, não possui o dbus instalado. hostnamectl parece precisar de dbus. Então a correção é para:

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

E então:

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

Isso funcionou.

    
por 27.04.2015 / 13:55
2

Para mudar a hostanme do seu host EC2, você deve seguir os passos abaixo:

  1. Faça login como root: $: sudo su -
  2. Instalar o dbus: $: apt-get update && apt-get install -y dbus
  3. Nome do host de configuração: hostnamectl set-hostname <HOSTNAME>

Certifique-se de alterar <HOSTNAME> com o nome do host que você deseja definir.

    
por 04.07.2017 / 11:55
0

Na verdade, não precisamos instalar nenhum pacote, basta editar o arquivo de acordo com a distribuição da lista abaixo.

root@ServerOne:~# ls -l /etc/cloud/templates/
total 32
-rw-r--r-- 1 root root 1487 Nov 18  2015 chef_client.rb.tmpl
-rw-r--r-- 1 root root  941 May  3 23:37 hosts.debian.tmpl
-rw-r--r-- 1 root root  914 Nov 18  2015 hosts.freebsd.tmpl
-rw-r--r-- 1 root root  912 Nov 18  2015 hosts.redhat.tmpl
-rw-r--r-- 1 root root  866 Nov 18  2015 hosts.suse.tmpl
-rw-r--r-- 1 root root  812 Nov 18  2015 resolv.conf.tmpl
-rw-r--r-- 1 root root 1506 Nov 18  2015 sources.list.debian.tmpl
-rw-r--r-- 1 root root 2841 Nov 18  2015 sources.list.ubuntu.tmpl
root@ServerOne:~#

Edite a linha como abaixo, (Comentou um é a linha original), substitua {{fqdn}} e {{hostname}} como abaixo.

#127.0.1.1 {{fqdn}} {{hostname}}
127.0.1.1 ServerOne.opsplus.io ServerOne

Como alternativa, defina "manage_etc_hosts:" para false como abaixo e você está livre para modificar o arquivo / etc / hosts, pois ele irá parar de substituir o arquivo hosts.

root@ServerOne:~# cat /etc/cloud/cloud.cfg.d/01_debian_cloud.cfg
apt_preserve_sources_list: true
manage_etc_hosts: true
root@ServerOne:~#
    
por 04.05.2018 / 01:48