Ich möchte den Hostnamen des Betriebssystems ändern, aber nicht neu starten.
Ich habe Änderungen vorgenommen /etc/hostname
, aber zur Implementierung ist ein Neustart erforderlich. Wie kann ich das vermeiden?
Antwort1
Das ist ganz einfach. Klicken Sie einfach auf das Zahnradsymbol (oben rechts auf dem Bildschirm), öffnen Sie den Bildschirm „Über diesen Computer“ (beim Zahnradsymbol) und bearbeiten Sie den „Gerätenamen“.
Oder verwenden Sie in einem Terminal den folgenden Befehl:
sudo hostname your-new-name
Dadurch wird der Hostname auf Ihren neuen Namen gesetzt, bis Sie neu starten. Sieheman hostname
UndWie ändere ich den Computernamen?für weitere Informationen. Nicht _
in Ihrem Namen verwenden.
Notiz
Nach einem Neustart werden Ihre Änderungen in/etc/hostname
wird verwendet, also sollten Sie (wie Sie in der Frage sagten) immer noch verwenden
sudo -H gedit /etc/hostname
(oder einen anderen Editor), sodass die Datei den Hostnamen enthält.
Um zu testen, ob die Datei richtig eingerichtet ist, führen Sie Folgendes aus:
sudo service hostname start
Sie sollten auch /etc/hosts
die folgende Zeile bearbeiten und ändern:
127.0.1.1 your-old-hostname
so dass es nun Ihren neuen Hostnamen enthält. (Dies ist erforderlich, da sonst viele Befehle nicht mehr funktionieren.)
Antwort2
Ab Ubuntu 13.04
Derhostnamectl
Der Befehl ist Teil der Standardinstallation sowohl der Desktop- als auch der Server-Editionen.
Es kombiniert das Setzen des Hostnamens über den hostname
Befehl und das Bearbeiten /etc/hostname
. Neben dem Setzen des statischen Hostnamens kann auch der „schöne“ Hostname gesetzt werden, der in Ubuntu nicht verwendet wird. Leider /etc/hosts
muss das Bearbeiten trotzdem separat erfolgen.
hostnamectl set-hostname new-hostname
Dieser Befehl ist Teil dessystemd-services
Paket (das ab Ubuntu 14.04 auch die Befehle timedatectl
und enthält localectl
). Da Ubuntu zu migriert systemd
, ist dieses Tool die Zukunft.
Antwort3
Ohne Neustart
Ändern des Hostnamens oder Computernamens in Ubuntuohne Neustart
Bearbeiten /etc/hostname
und auf den neuen Wert ändern,
nano /etc/hostname
Bearbeiten Sie /etc/hosts
die alte Zeile 127.0.1.1 und ändern Sie sie in Ihren neuen Hostnamen
127.0.0.1 localhost
127.0.1.1 ubuntu.local ubuntu # change to your new hostname/fqdn
Notiz: ich habe es in einem Forum gelesen > Bearbeiten /etc/hosts
und ändern Sie die alte Zeile 127.0.1.1 in Ihren neuen Hostnamen (wenn Sie dies nicht tun, können Sie es nicht sudo
mehr verwenden. Wenn Sie es bereits getan haben, drücken Sie ESC im Grub-Menü, wählen Sie „Wiederherstellung“ und bearbeiten Sie Ihre Hostdatei mit den richtigen Einstellungen).
Nach einem Neustart ist Ihr Hostname der neue, von Ihnen gewählte
Ohne Neustart
Wechselnohne Neustart, können Sie nach der Bearbeitung einfach hostname.sh verwenden /etc/hostname
. Sie müssen beide Hostnamen beibehalten /etc/hosts
(127.0.0.1 newhost oldhost), bis Sie den folgenden Befehl ausführen:
sudo service hostname start
Notiz: Obenstehender Befehl, um die Änderung zu aktivieren. Der in dieser Datei ( /etc/hostname
) gespeicherte Hostname bleibt beim Systemneustart erhalten (und wird mit demselben Dienst festgelegt).
Antwort4
Cloud-init (Ubuntu 18+) Hostnamenpersistenz
Während die oben genannten Ansätze ( hostnamectl
, etc/hostname
usw.) für eine sofortige Änderung des Hostnamens funktionieren,Cloud-Init- das die Einstellung des Hostnamens steuern kann - neben vielen anderen Dingen. Es bleibt also nach einem Neustart nicht erhalten, wenn cloud-init installiert ist. Wenn Sie möchten, dass die Änderung nach einem Neustart erhalten bleibt, müssen Sie dieCloud-Init-Konfigurationsdateien, deaktivieren Sie Cloud-InitHostname-Set/Update-Modul:
sudo sed 's/preserve_hostname: false/preserve_hostname: true/' /etc/cloud/cloud.cfg
oder deaktivieren Sie Cloud-Init vollständig:
sudo touch /etc/cloud/cloud-init.disabled