Je loue un serveur exécutant Ubuntu 16.04 dans une entreprise, appelons-la company.org.
Actuellement, mon serveur est configuré comme ceci:
- nom d'hôte:
server737263
- nom de domaine:
company.org
Voici mon nom de domaine complet:
user@server737263:~ $ hostname --fqdn
server737263.company.org
Ce n'est pas surprenant.
Je loue aussi un nom de domaine, nommons-le domain.org
. Ce que je voudrais faire serait de renommer mon serveur en server1.domain.org
.
Cela signifie configurer mon nom d’hôte en tant que server1
et mon nom de domaine en tant que domain.org
.
Comment puis-je le faire correctement?
En effet, la page de manuel pour hostname
n'est pas claire. Pour moi au moins:
NOM D'HOTE (1)
[...]
SET NAME
- Lorsqu'elles sont appelées avec un argument ou avec l'option --file, les commandes définissent le nom d'hôte ou le nom de domaine NIS / YP. nomhôte utilise la fonction sethostname (2), tandis que les trois noms de domaine, ypdomainname et nisdomainname utilisent setdomainname (2). Notez que cela n’est effectif qu’au prochain redémarrage. Éditez / etc / hostname pour un changement permanent.
[...]
LE FQDN
- Vous ne pouvez pas modifier le nom de domaine complet avec le nom d'hôte ou le nom de domaine dns.
[...]
Il semble donc que l'édition /etc/hostname
ne suffit pas? Parce que s'il avait vraiment changé le nom d'hôte, il aurait changé le nom de domaine complet. Il y a aussi une astuce que j'ai lue pour changer le nom d'hôte avec la commande sysctl kernel.hostname=server1
, mais rien ne dit si c'est la bonne façon ou une astuce moche.
Alors:
Quelle est la bonne façon de définir le nom d'hôte?
Quelle est la bonne façon de définir le nom de domaine?
DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
sur mon serveur (même version)./etc/resolvconf/resolv.conf.d/head
. Tout le contenu du fichier de tête est ajouté au/etc/resolv.conf
fichier de sortie résultant . C’est pourquoi l’avertissement est présent, de sorte qu’il apparaisse dans le résultat final. M'a jeté pour une boucle au début./etc/resolvconf/resolv.conf.d/head
ni utilitaireresolvconf
.hostnamectl
sudo nano /etc/cloud/cloud.cfg
updatepreserve_hostname: true
(par défautfalse
).sudo nano / etc / hostname
sudo nano / etc / hosts
REBOOT!
DOIT AVOIR UN SEUL NOM D'HÔTE après le nom de domaine complet dans le fichier / etc / hosts. Fonctionne bien sur Ubuntu 18.04.1 et toutes les autres versions. Sur EC2 et ailleurs.
Ne plaisante pas avec résoudre le fichier ou quoi que ce soit d'autre.
Cela montre le nom d’hôte dans le shell, puis le FQDN quand vous en avez besoin.
la source
~ $ man hostname
Cela a été gentiment signalé par poige dans un autre fil et est exactement ce que Lutz a proposé ici.
Vous ne devriez pas mettre votre fqdn dans
/etc/hostname
.la source
Instructions écrites contre Ubuntu 18.04.3 LTS (bionique)
Changer le nom d'hôte:
Vérifiez le résultat en exécutant
hostnamectl
:Modifiez le domaine via le nouveau gestionnaire de réseau, Netplan , en modifiant
/etc/netplan/01-netcfg.yaml
et modifiant lesearch
paramètre:Exemple de configuration:
Testez les modifications en vous connectant une seconde fois, en exécutant l'
sudo netplan try
une des sessions et en vérifiant les paramètres de l'autre:Tout va bien, appuyez sur ENTRÉE à l'
sudo netplan try
invite pour rendre les choses permanentes.la source
J'ai essayé de changer mon entrée de domaine de
myhome.local
àmyhome.lan
je devais éditer le/etc/hosts
fichier et le/etc/network/interfaces
fichier. Mon/etc/hosts
fichier ressemble maintenant à:et mon
/etc/network/interfaces
fichier ressemble maintenant à:Ça fonctionne bien pour moi.
la source