Por que recebo o nome do host: Nome ou erro de serviço não conhecido?

20

Estou recebendo este erro sempre que instalo pacotes por meio de apt-get :

hostname: Name or service not known
dpkg: error processing ssmtp (--configure):
 subprocess installed post-installation script returned error exit status 1
Setting up libt1-5 (5.1.2-3.4ubuntu1) ...
Setting up php5-gd (5.3.10-1ubuntu3.2) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Errors were encountered while processing:
 ssmtp
E: Sub-process /usr/bin/dpkg returned an error code (1)

Por que isso está acontecendo?

    
por batman 07.09.2012 / 12:53

6 respostas

10

Solução:

(Estes tipos de problemas não têm boas soluções. Mas somente alguns haking-ish)

Você deve primeiro tentar este comando em um terminal:

sudo apt-get -f install

Se não funcionar, processe com a solução haking-ish .

Tente mover temporariamente o script de configuração de ssmtp .

  1. Abra um terminal e execute este comando para movê-los para o diretório atual

     sudo mv /var/lib/dpkg/info/ssmtp* .
    
  2. Em seguida, tente usar apt-get

A causa do problema:

A instalação ou remoção anterior pode não ter sido concluída com êxito, deixando algumas etapas de configuração a serem feitas para ssmtp package. Como o dpkg não vai progredir sem antes completar as etapas, o uso subsequente de apt-get agora fica preso nessa etapa.

    
por Anwar 07.09.2012 / 13:38
17

execute hostname --fqdn

Se você receber um erro, edite / etc / hostname e / etc / hosts com um nome de host apropriado.

Então, aptitude install ssmtp novamente para instalá-lo.

    
por croaker___ 17.11.2012 / 15:18
12

Apenas para que todos saibam, a edição de / etc / hosts deu o truque que o etc / hostname estava correto com server.exmaple.com

no entanto, os anfitriões não estavam corretos

127.0.0.1 localhost
127.0.0.1 server

mude para isso:

127.0.0.1 localhost.localdomain  localhost
192.168.xxx.xxx  server.example.com   server

Eu executei o hostname -f e o hostname --fqdn e obtive o seguinte.

server.example.com

Pensei que todos gostariam de saber.

    
por nexusguy59 20.11.2012 / 04:04
2

O mais provável é que sua conexão com a Internet não esteja funcionando corretamente. Especificamente, acho que seu DNS não está resolvendo corretamente.

tente adicionar a linha

nameserver 80.80.80.80 

para o seu /etc/resolv.conf

Isso adicionará o servidor DNS da freenom temporariamente (até a próxima inicialização)

    
por user61664 07.09.2012 / 13:29
1

Eu recebi a mensagem em minha rede doméstica em um sistema Ubuntu com um endereço IP atribuído dinamicamente de um roteador fornecendo um servidor DHCP e DNS combinado para minha rede.

A mensagem: hostname: Name or service not known pode ser causada pela queda desse dispositivo, mesmo que por um instante.

Por exemplo, isso pode acontecer se meu roteador doméstico for reinicializado quando a energia acabar.

O problema aqui é que o serviço DHCP em que sua rede está confiando esquece todos os endereços IP atribuídos e os nomes de domínio associados. Quando o seu computador verifica o servidor dns associado para o seu próprio nome, o servidor não o possui mais. Alguns servidores DHCP podem evitar problemas escrevendo as atribuições que fizeram no disco ou na memória flash, para que nada seja perdido quando eles forem reiniciados.

O servidor pode normalmente pegar seu nome_do_computador da solicitação DHCP do seu sistema, torná-lo nome_do_computador .local e armazená-lo em seus registros, tornando-o disponível em seu servidor DNS associado simultaneamente. Normalmente, hostname -fqdn solicita o nome de domínio completo da sua rede do seu servidor DNS e, se tiver o registro, ele retornará esse nome. O sufixo .local faz com que pareça um nome de domínio totalmente qualificado válido (embora não seja realmente um nome de domínio global válido). É por isso que você pode não precisar especificar um nome de domínio manualmente nos arquivos / etc / hosts ou / etc / hostname.

A reinicialização do servidor DHCP pode causar mais problemas, pois os endereços IP podem ser atribuídos a vários computadores simultaneamente, fazendo com que alguns não possam se comunicar. O endereço é atribuído uma vez antes de o servidor ser reiniciado e novamente depois disso.

Se o seu servidor DHCP esquecer suas atribuições, a coisa segura a fazer é reconectar cada computador que ele serve quando ele é reiniciado. Quando perdi o meu, simplesmente desconectei e me reconectei ao meu ponto de acesso Wi-Fi. Em uma rede com fio, você pode usar ifdown e ifup ou simplesmente desconectar e reconectar o cabo de rede. Quando reconectar meu sistema automaticamente usa o dhclient para obter um novo endereço - meu computador e o servidor agora concordam com quem eu sou e a mensagem não aparece mais.

Se você esperar o tempo suficiente, a concessão do DHCP expirará e seu sistema solicitará e obterá uma nova concessão do servidor, eliminando o problema. Isso provavelmente será horas ou dias depois (para o meu servidor é um dia).

Se você tiver definido um nome e um endereço IP estáticos e se os registros de pesquisa reversa do DNS estiverem corretos, o problema não deverá acontecer.

    
por John S Gruber 29.09.2013 / 20:42
1

Eu encontrei este erro esta manhã e descobri que o nome do host estava escrito incorretamente em /etc/hostname . Corrigir isso para que concordasse com a ortografia do nome do host em /etc/hosts resolveu o problema. O comando hostname -b -F /etc/hostname que é executado na hora da inicialização aparentemente não pode ser concluído, a menos que /etc/hostname e /etc/hosts concordem.

    
por Michael Merideth 07.02.2017 / 21:13