Ich miete einen Server, auf dem Ubuntu 16.04 bei einer Firma ausgeführt wird, nennen wir ihn company.org.
Derzeit ist mein Server folgendermaßen konfiguriert:
- Hostname:
server737263
- Domain Name:
company.org
Hier ist mein FQDN:
user@server737263:~ $ hostname --fqdn
server737263.company.org
Das ist nicht überraschend.
Ich vermiete auch einen Domainnamen, nennen wir ihn domain.org
. Ich würde meinen Server gerne umbenennen als server1.domain.org
.
Dies bedeutet, dass ich meinen Hostnamen als server1
und meinen Domainnamen als konfiguriere domain.org
.
Wie kann ich das richtig machen?
In der Tat ist die Manpage für hostname
nicht klar. Zumindest für mich:
HOSTNAME (1)
[...]
NAME EINSETZEN
- Bei Aufruf mit einem Argument oder mit der Option --file legen die Befehle den Hostnamen oder den NIS / YP-Domänennamen fest. hostname verwendet die Funktion sethostname (2), während alle drei Domänennamen, ypdomainname und nisdomainname setdomainname (2) verwenden. Beachten Sie, dass dies nur bis zum nächsten Neustart wirksam ist. Bearbeiten Sie / etc / hostname, um eine dauerhafte Änderung vorzunehmen.
[...]
DER FQDN
- Sie können den FQDN nicht mit Hostname oder DNS-Domänenname ändern.
[...]
Es scheint also, dass die Bearbeitung /etc/hostname
nicht ausreicht? Denn wenn es den Hostnamen wirklich geändert hätte, hätte es den FQDN geändert. Es gibt auch einen Trick, den ich gelesen habe, um den Hostnamen mit dem Befehl zu ändern sysctl kernel.hostname=server1
, aber nichts sagt aus, ob dies der richtige Weg oder ein hässlicher Trick ist.
So:
Wie kann ich den Hostnamen richtig setzen?
Wie kann ich den Domainnamen richtig setzen?
DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
auf meinem Server (dieselbe Version)./etc/resolvconf/resolv.conf.d/head
. Alles in der Kopfdatei wird der resultierenden/etc/resolv.conf
Ausgabedatei vorangestellt, daher befindet sich die Warnung dort, sodass sie im Endergebnis angezeigt wird. Warf mich zuerst für eine Schleife./etc/resolvconf/resolv.conf.d/head
und es gibt kein solches Hilfsprogrammresolvconf
.hostnamectl
sudo nano /etc/cloud/cloud.cfg
Updatepreserve_hostname: true
(Standard istfalse
).sudo nano / etc / hostname
sudo nano / etc / hosts
NEUSTART!
MUSS EINEN HOSTNAME nach dem FQDN in der Datei / etc / hosts haben. Funktioniert gut auf Ubuntu 18.04.1 und allen anderen Versionen. Auf EC2 und anderswo.
Ich habe mich nicht mit der Auflösungsdatei oder irgendetwas anderem herumgetrieben.
Das zeigt den Hostnamen in der Shell und hat dann den vollqualifizierten Domänennamen, wenn Sie ihn brauchen.
quelle
~ $ man Hostname
Dies wurde freundlicherweise von poige in einem anderen Thread hervorgehoben und ist genau das, was Lutz hier vorschlug.
Sie sollten Ihre fqdn nicht in setzen
/etc/hostname
.quelle
Anweisungen geschrieben gegen Ubuntu 18.04.3 LTS (bionic)
Ändern Sie den Hostnamen:
Überprüfen Sie das Ergebnis mit
hostnamectl
:Ändern Sie die Domäne über den neuen Netzwerkmanager Netplan , indem Sie
/etc/netplan/01-netcfg.yaml
diesearch
Parameter bearbeiten und ändern :Beispielkonfiguration:
Testen Sie Änderungen, indem Sie sich ein zweites Mal anmelden,
sudo netplan try
in einer der Sitzungen ausführen und die Einstellungen in der anderen überprüfen:Alles ist gut, drücken Sie die EINGABETASTE an der
sudo netplan try
Eingabeaufforderung, um die Dinge dauerhaft zu machen.quelle
Ich habe versucht, meinen Domain-Eintrag von
myhome.local
auf zu ändern.myhome.lan
Ich musste die/etc/hosts
Datei und die/etc/network/interfaces
Datei bearbeiten . Meine/etc/hosts
Datei sieht jetzt so aus:und meine
/etc/network/interfaces
datei sieht nun so aus:Es funktioniert gut für mich.
quelle