Percebi que o método "preferido" de definir o nome do host do sistema é fundamentalmente diferente entre os sistemas Red Hat / CentOS e Debian / Ubuntu.
A documentação do CentOS e o guia de implantação do RHEL dizem que o nome do host deve ser o FQDN :
HOSTNAME=<value>
, onde<value>
deve estar o FQDN (nome de domínio totalmente qualificado), comohostname.example.com
, mas pode ser o nome de host necessário.
O guia de instalação do RHEL é um pouco mais ambíguo:
A Instalação solicita que você forneça um nome de host para este computador, como um nome de domínio totalmente qualificado (FQDN) no formato hostname.domainname ou como um nome de host curto no formato hostname .
A referência Debian diz que o nome do host não deve usar o FQDN :
3.5.5 O nome do host
O kernel mantém o nome do host do sistema . O script init no nível de execução S, com o link simbólico para " /etc/init.d/hostname.sh " define o nome do host do sistema no momento da inicialização (usando o comando hostname ) como o nome armazenado em " / etc / hostname ". Este arquivo deve conter apenas o nome do host do sistema, não um nome de domínio totalmente qualificado.
Não vi nenhuma recomendação específica da IBM sobre qual usar, mas alguns softwares parecem ter uma preferência.
Minhas perguntas:
- Em um ambiente heterogêneo, é melhor usar a recomendação do fornecedor ou escolher uma e ser consistente em todos os hosts?
- Qual software você encontrou que é sensível a saber se o nome do host está definido como o FQDN ou o nome abreviado?
fonte
hostname
seja o FQDN. Apenas tê-lo/etc/hosts
não é bom o suficiente. Isso mexeu com a minha consistência./etc/sysconfig/network
conter linhas semelhantes:NETWORKING=yes
,NETWORKING_IPV6=no
,HOSTNAME=example.com
,NISDOMAIN=example
?hostname(1)
em qualquer máquina Linux.Praticamente todo software é sensível à configuração correta do nome do host. Enquanto trabalhava no Digg, uma vez reduzi o site inteiro por 2 horas devido a uma mudança aparentemente inocente
/etc/hosts
que afetou a noção de nome de host do sistema. Pise levemente. Dito isto, você pode estar um pouco confuso aqui. Eu não acho que aHOSTNAME=
configuração seja diretamente equivalente a como as distribuições baseadas no Debian usam/etc/hostname
.O que funciona para mim em um ambiente heterogêneo é:
hostname
comando para definir o nome do host usado pelo kernel, etc.Em
/etc/hosts
:Essa configuração ainda não falhou comigo.
fonte
Você certamente não terá problemas para encontrar referências on-line, o que lhe dirá para fazê-lo definitivamente de uma maneira ou de outra. Parece-me, no entanto, que ter um nome abreviado como o nome do host e ter o nome completo em / etc / hosts é certamente muito mais prevalente. Parece a maneira mais sensata, pois os serviços que precisam de um nome totalmente qualificado podem ser adaptados para serem chamados
hostname --fqdn
.Recentemente, encontrei apenas um software recentemente que exige rigidamente a devolução de um fqdn
hostname
, que era ganeti. Eles documentam isso aqui . Não vejo nenhuma razão pela qual eles não possam se adaptarhostname --fqdn
.fonte
hostname --fqdn
" é respondido no primeiro parágrafo em "Por que um nome completo de host" - requer adivinhação e requer um resolvedor funcional. Pedir o kernel é a opção mais segura e confiável.10.0.0.1 hostname.example.com hostname
) e /etc/nsswitch.conf especifique a resolução local antes do DNS (hosts: files dns
), a resolução de um trabalho é realizada pelo arquivo hosts local. Como tal, esse argumento para usar um FQDN em vez de um nome de host raramente retém água. Além disso, outro exemplo de software que exige rigidamente ohostname
retorno de um FQDN é o pacote do servidor de correio Zimbra.De maneira um tanto tangencial, enquanto pesquisava essa pergunta, fiquei louco o suficiente para verificar o código fonte de "hostname" e escrever um script para imprimir resultados de investigação (Fedora 19). O que está faltando é uma olhada em "/ etc / hosts", que na minha humilde opinião deve ser mantida fora de tudo isso em primeiro lugar.
A saída em uma VM Amazon EC2 executando o Fedora 19 , após definir manualmente os valores e o preenchimento do kernel
/etc/hostname
, mas sem alterações,/etc/hosts
pode ser assim:A maneira resiliente de obter o nome completo do host em perl seria:
e no bash seria:
Notas
Nota 1: HOSTNAME é uma variável de shell que o bash fornece ("Definido automaticamente como o nome do host atual."), Mas não há nenhuma indicação sobre o bash chegar a esse valor.
Nota 2: Nunca esqueça / etc / hostname em /boot/initrams-FOO.img ...
fonte
As opções / etc / hosts funcionam bem.
Mas você deseja garantir que todos os arquivos adequados sejam atualizados, execute a ferramenta de configuração
fonte
Hm ... Nos hosts linux, se você deseja alterar HOSTNAME e FQDN, deve resolver 3 etapas (por exemplo, o novo host é rizzo.ifp.com ):
Etapa # 1 Altere o valor HOST na configuração de propriedades da REDE:
Alterar ou adicionar sequência:
Etapa # 2 Edite sua configuração de hosts
Etapa 3: Reinicie seu host Bem feito, basta verificar a nova configuração
fonte
O pedido não está certo. Tem que ser:
Portanto, o exemplo pode ser assim:
fonte