De acordo com este artigo , você deve executar hostnamectl set-hostname name
onde name
é o seu nome de host desejado. Eu presumo que você deveria rodar isso como root.
Troquei uma nova placa-mãe, cpu e renomei uma máquina. O nome da máquina antiga era bulldozer
e o nome da nova máquina é skylake
. Eu usei hostnamectrl --static
de acordo com Como alterar permanentemente o nome do host no Fedora 21 desde que a máquina é o Fedora 25.
Quando a máquina inicializa, systemd
ainda está usando o nome antigo:
skylake:~$ sudo dmesg | grep bulldozer
[ 1.085387] systemd[1]: Set hostname to <bulldozer>.
skylake:~$ hostname
skylake
De acordo com a página honamectrl
man , parece que --static
é suposto para fazê-lo: "... o hostname estático que é usado para inicializar o nome do host do kernel na inicialização ..." .
Grepping /etc
não revela nenhum resultado do nome antigo:
skylake:~$ sudo grep -R bulldozer /etc/ 2>/dev/null
skylake:~$
Eu também tentei /sbin/sysctl -q -w kernel.hostname=skylake
de acordo com Definindo corretamente o nome do host - Fedora 20 no Amazon EC2 . Mas também não funcionou.
Como altero o nome do host para systemd
?
De acordo com este artigo , você deve executar hostnamectl set-hostname name
onde name
é o seu nome de host desejado. Eu presumo que você deveria rodar isso como root.
Esta é uma resposta terrível, mas é fornecida para ser completa. O kernel foi atualizado hoje. O antigo kernel do Fedora era 4.9.13-200.fc25.x86_64
. O novo kernel é 4.9.13-201.fc25.x86_64
.
Após as atualizações do kernel, excluo manualmente o kernel antigo de /boot
usando rm
. Este é um procedimento padrão para mim no Linux (eu sempre faço isso para remover lixo indesejado). Neste caso, eu corri:
su -
cd /boot
rm -rf *4.9.13-200*
rm -rf .*4.9.13-200*
Após a remoção manual, eu gero novamente o menu do Grub e, em seguida, reinicializo. Este também é um procedimento padrão para mim no Linux.
grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
Após a reinicialização, o nome antigo não estava mais presente:
$ dmesg | egrep -i '(bulldozer|skylake)'
[ 0.065941] Performance Events: PEBS fmt3+, Skylake events, 32-deep LBR, full-width counters, Intel PMU driver.
[ 1.096957] systemd[1]: Set hostname to <skylake>.
Então, algo afetou o nome do host usado pelo systemd, mas não tenho certeza do que era.
Eu tentei regenerar grub.cfg
anteriormente, então não estou convencido de que seja a resposta. Eu estou supondo que um pacote desencadeou a correção, e após a reinicialização eu observei que as coisas estavam como o esperado.
Este método está obsoleto na versão atual do systemd, mas estou mantendo-o aqui como referência para alguns dos comentários.
The quickest way would be
sudo echo -e "bulldozer" > /etc/hostname
followed by a reboot.Systemd's network stack should pick it up and apply it on startup.
You can also use a text editor and create/edit
/etc/hostname
manually. (I recommendnano
, but you need to install it manually on fedora first)
O hostnamectl
do Systemd deve ser a maneira de fazê-lo hoje, parece.