Cela peut être lié à l'exécution de 18.04 LTS en tant que machine virtuelle (l'hôte est Win 2016 DC), mais je ne comprends pas comment. J'ai essayé toutes les méthodes que je connaisse pour changer le nom d'hôte, mais elle revient toujours au nom d'hôte que j'ai entré lorsque j'ai créé la machine lors du redémarrage. J'ai essayé ce qui suit:
Je n'ai pas de DNS pour ce serveur pour le moment.
Exemple:
XXXX@iwrxmail:~# hostnamectl
Static hostname: iwrxmail
Pretty hostname: Interwrx Ubuntu Mail Server
Transient hostname: ctl
Icon name: computer-vm
Chassis: vm
Machine ID: 01ef0d836d2c4945b51a4fab8e506381
Boot ID: e6608fe238d843f883cde52af7631a79
Virtualization: Microsoft
Operating System: Ubuntu 18.04 LTS
Kernel: Linux 4.15.0-20-generic
Architecture: x86-64
XXXX@iwrxmail:~# hostnamectl set-hostname test
XXXX@iwrxmail:~# hostnamectl
Static hostname: test
Icon name: computer-vm
Chassis: vm
Machine ID: 01ef0d836d2c4945b51a4fab8e506381
Boot ID: e6608fe238d843f883cde52af7631a79
Virtualization: Microsoft
Operating System: Ubuntu 18.04 LTS
Kernel: Linux 4.15.0-20-generic
Architecture: x86-64
root@iwrxmail:~# cat /etc/hostname
test
root@iwrxmail:~# cat /etc/hosts
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
However on reboot I get this again ....
XXXX@iwrxmail:~# hostnamectl
Static hostname: iwrxmail
Icon name: computer-vm
Chassis: vm
Machine ID: 01ef0d836d2c4945b51a4fab8e506381
Boot ID: 25a00676b22048eb8d43492c9de4f147
Virtualization: Microsoft
Operating System: Ubuntu 18.04 LTS
Kernel: Linux 4.15.0-20-generic
Architecture: x86-64
J'avais eu ce problème avec la version bêta de 18.04, mais je pensais que j'attendrais la copie de publication. J'ai également envisagé le problème du fait que j'avais cloné les ordinateurs virtuels, mais il s'agissait d'une toute nouvelle version construite à partir de zéro avec la distribution qui vient de sortir.
Qu'est-ce que je rate?
Merci d'avance.
Commencez par éditer /etc/cloud/cloud.cfg et définissez le paramètre "preserve_hostname" de "false" sur "true", puis modifiez/etc/hostname.
Le nom d'hôte est en cours de réinitialisation par cloud-init
qui peut être désactivé de la manière suivante (après quoi vous pouvez définir le nom d'hôte de manière normale, par exemple à l'aide de hostnamectl
):
Sudo touch /etc/cloud/cloud-init.disabled
Ou vous pouvez utiliser cloud-init et créer/modifier le fichier user-data
(qui se trouve généralement à l'adresse: /var/lib/cloud/seed/nocloud-net/user-data
) de sorte que l'entrée hostname:
soit définie sur le nom d'hôte souhaité (à condition que preserve_hostname:
ne soit pas défini). Tout d'abord, vous devrez nettoyer la configuration existante:
Sudo cloud-init clean
Et puis réinitialisez la configuration de cloud-init à partir du fichier de données utilisateur nouveau/modifié:
Sudo cloud-init init
Puis redémarrez. Voir le cloud-init docs pour plus de détails.
Pour les "gars paresseux" comme moi, une solution copier-coller :)
Sudo sed -i '/preserve_hostname: false/c\preserve_hostname: true' /etc/cloud/cloud.cfg && Sudo hostnamectl set-hostname ReplaceThisWithTheHostnamePreferred
La première commande permet au système d'exploitation de garder en mémoire le nouveau nom d'hôte.
La deuxième partie (après le &&) ne sera exécutée que si la première partie s’est terminée avec succès et définira le nom d’hôte sur la valeur souhaitée.
Cordialement! L
1- Editez vi /etc/cloud/cloud.cfg
et changez
preserve_hostname: false
À
preserve_hostname: true
Sauvegarder et quitter.
2- Éditez vi /etc/hostname
et remplacez votre nouveau nom dans ce fichier ou vous pouvez effectuer cette étape avec la commande ci-dessous.
hostnamectl set-hostname NEWNAME
Profitez-en :)
J'ai eu le même problème et j'ai constaté qu'après avoir supprimé les packages cloud, vous pouvez changer votre nom d'hôte.
apt remove cloud-init cloud-initramfs-copymods cloud-initramfs-dyn-netconf