Ouvi dizer que alterar o nome do host nas novas versões do Fedora é feito com o hostnamectl comando. Além disso, recentemente (e com sucesso) mudei meu hostname no Arch Linux com este método. No entanto, ao executar:

 [root@localhost ~]# hostnamectl set-hostname --static paragon.localdomain [root@localhost ~]# hostnamectl set-hostname --transient paragon.localdomain [root@localhost ~]# hostnamectl set-hostname --pretty paragon.localdomain  

As alterações não são preservadas após uma reinicialização (ao contrário do que muitas pessoas afirmam que sim). O que está errado?

  • Eu realmente não quero editar /etc/hostname manualmente.

Também devo observar que este é um Fedora completamente padrão. Ainda não instalei meus aplicativos principais.

Comentários

  • Também tinha informações semelhantes sobre o problema: ask.fedoraproject.org/en/question/37413/… & isto: dbaora.com/install-fedora-20
  • Na verdade, esta é uma das minhas fontes. No entanto, nenhuma das soluções que consegui extrair daquela página funcionou …
  • Há quanto tempo você instalou / configurou este sistema? O problema está presente desde a instalação? Além disso, há algum erro com esses comandos hostnamectl? O link para o bug do bugzilla que algo postou parece ser a sua melhor pista.
  • Eu instalei em 01/10/14, e desde então os comandos hostnamectl não funcionam, mas agora funcionam.
  • O bug vinculado à solução aceita foi apenas um momento infeliz para você. Eles ' consertaram o upstream e ele deve estar funcionando para futuros usuários.

Resposta

O comando para definir o nome do host é definitivamente, hostnamectl.

root ~ # hostnamectl set-hostname --static "YOUR-HOSTNAME-HERE" 

Aqui está uma fonte adicional que descreve um pouco mais esta funcionalidade, intitulada: Configurando corretamente o nome do host – Fedora 20 no Amazon EC2 .

Além disso, a página do manual para hostnamectl:

HOSTNAMECTL(1) hostnamectl HOSTNAMECTL(1) NAME hostnamectl - Control the system hostname SYNOPSIS hostnamectl [OPTIONS...] {COMMAND} DESCRIPTION hostnamectl may be used to query and change the system hostname and related settings. This tool distinguishes three different hostnames: the high-level "pretty" hostname which might include all kinds of special characters (e.g. "Lennart"s Laptop"), the static hostname which is used to initialize the kernel hostname at boot (e.g. "lennarts-laptop"), and the transient hostname which is a default received from network configuration. If a static hostname is set, and is valid (something other than localhost), then the transient hostname is not used. Note that the pretty hostname has little restrictions on the characters used, while the static and transient hostnames are limited to the usually accepted characters of Internet domain names. The static hostname is stored in /etc/hostname, see hostname(5) for more information. The pretty hostname, chassis type, and icon name are stored in /etc/machine-info, see machine-info(5). Use systemd-firstboot(1) to initialize the system host name for mounted (but not booted) system images. 

Há um bug no Fedora 21 onde o SELinux impede o acesso hostnamectl , encontrado aqui, intitulado: Bug 1133368 – SELinux está impedindo systemd-hostnam de “desvincular” acessos no arquivo hostname .

Este bug parece estar relacionado. Há um problema com os contextos SELinux não sendo aplicados corretamente ao arquivo /etc/hostname durante a instalação. Isso se manifesta na ferramenta hostnamectl não ser capaz de manipular o arquivo /etc/hostname. Esse mesmo tópico ofereceu esta solução alternativa:

$sudo restorecon -v /etc/hostname 

NOTA: Esses patches foram aplicados ao Anaconda (a ferramenta de instalação) para que este problema seja eliminado no futuro para novos usuários.

Resposta

A causa provável disso é o seu cliente dhcp. Se você estiver usando dhcpcd, que é comum, a solução é adicionar a seguinte linha a /etc/dhcpcd.conf:

nohook hostname 

Isso evita que o dhcpcd chame o script que altera o nome do host do seu sistema.

Por padrão, o dhcpcd executa todos os ganchos presentes /lib/dhcpcd/dhcpcd-run-hooks (o caminho pode ser diferente em seu sistema). Usar nohook desativa alguns específicos.

Comentários

  • Para ambos meus 21 e instalações do rawhide, /etc/dhcpd.conf não existe. Além disso, systemctl status dhcpcd retorna not-found (Reason: No such file or directory)

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *