Ändern Sie den Hostnamen Ihrer Instanz AL2 - Amazon Linux 2

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Ändern Sie den Hostnamen Ihrer Instanz AL2

Wenn Sie eine Instance in einer privaten VPC starten, EC2 weist Amazon einen Gastbetriebssystem-Hostnamen zu. Die Art des Hostnamens, den Amazon EC2 zuweist, hängt von Ihren Subnetzeinstellungen ab. Weitere Informationen zu EC2 Hostnamen finden Sie unter Hostnamentypen für EC2 Amazon-Instances im EC2 Amazon-Benutzerhandbuch.

Ein typischer EC2 privater DNS-Name von Amazon für eine EC2 Instance, die für die Verwendung einer IP-basierten Benennung mit einer IPv4 Adresse konfiguriert istip-12-34-56-78.us-west-2.compute.internal, sieht ungefähr so aus:, wobei der Name aus der internen Domain, dem Service (in diesem Fallcompute), der Region und einer Form der privaten IPv4 Adresse besteht. Teil dieses Hostnamens wird von der Shell-Anzeige gezeigt, wenn Sie sich bei der Instance anmelden (z. B., ip-12-34-56-78). Jedes Mal, wenn Sie Ihre EC2 Amazon-Instance beenden und neu starten (es sei denn, Sie verwenden eine Elastic IP-Adresse), ändert sich die öffentliche IPv4 Adresse, ebenso wie Ihr öffentlicher DNS-Name, Ihr System-Hostname und Ihre Shell-Eingabeaufforderung.

Wichtig

Diese Informationen gelten für Amazon Linux. Weitere Informationen zu anderen Verteilungen finden Sie in der jeweiligen Dokumentation.

Ändern des Systemhostnamens

Falls Sie für die IP-Adresse der Instance einen öffentlichen DNS-Namen registriert haben (z. B. webserver.mydomain.com), können Sie den Systemhostnamen so einstellen, dass sich die Instance als Teil dieser Domain identifiziert. Dadurch wird auch die Shell-Eingabeaufforderung so geändert, dass sie den ersten Teil dieses Namens anstelle des von AWS (z. B.) angegebenen Hostnamens anzeigt. ip-12-34-56-78 Auch wenn Sie keinen öffentlichen DNS-Namen registriert haben, können Sie den Hostnamen ändern. Allerdings unterscheidet sich die Vorgehensweise ein wenig.

Damit Ihre Hostnamen-Aktualisierung fortbesteht, müssen Sie sicherstellen, dass die preserve_hostname-Cloud-Init-Einstellung auf true eingestellt ist. Sie können den folgenden Befehl ausführen, um diese Einstellung zu bearbeiten oder hinzuzufügen:

sudo vi /etc/cloud/cloud.cfg

Wenn die preserve_hostname-Einstellung nicht aufgeführt ist, fügen Sie am Ende der Datei die folgende Textzeile hinzu:

preserve_hostname: true
Ändern Sie den Systemhostnamen wie folgt in einen öffentlichen DNS-Namen:

Führen Sie diese Schritte aus, falls Sie bereits einen öffentlichen DNS-Namen registriert haben.

    • Für AL2: Verwenden Sie den hostnamectl Befehl, um Ihren Hostnamen so einzustellen, dass er den vollqualifizierten Domainnamen wiedergibt (z. B.webserver.mydomain.com).

      [ec2-user ~]$ sudo hostnamectl set-hostname webserver.mydomain.com
    • Für Amazon Linux AMI: Öffnen Sie auf der Instance die Konfigurationsdatei /etc/sysconfig/network in einem Texteditor Ihrer Wahl und ändern Sie den Eintrag HOSTNAME so, dass er den vollqualifizierten Domain-Namen wiederspiegelt (z. B. webserver.mydomain.com).

      HOSTNAME=webserver.mydomain.com
  1. Starten Sie die Instance neu, damit der neue Hostname übernommen und angezeigt wird.

    [ec2-user ~]$ sudo reboot

    Alternativ können Sie den Neustart über die EC2 Amazon-Konsole durchführen (wählen Sie auf der Seite Instances die Instance aus und wählen Sie Instance state, Reboot instance).

  2. Melden Sie sich bei der Instance an und überprüfen Sie, ob der Hostname aktualisiert wurde. Ihr Eintrag sollte den neuen Hostnamen bis zum ersten "." anzeigen, und der Befehl hostname sollte den vollqualifizierten Domain-Namen anzeigen.

    [ec2-user@webserver ~]$ hostname webserver.mydomain.com
Ändern Sie den Systemhostnamen wie folgt ohne einen öffentlichen DNS-Namen:
    • Für AL2: Verwenden Sie den hostnamectl Befehl, um Ihren Hostnamen so einzustellen, dass er dem gewünschten System-Hostnamen entspricht (z. B.webserver).

      [ec2-user ~]$ sudo hostnamectl set-hostname webserver.localdomain
    • Für Amazon Linux AMI: Öffnen Sie auf Ihrer Instance die Konfigurationsdatei /etc/sysconfig/network in einem Texteditor Ihrer Wahl und ändern Sie den Eintrag HOSTNAME so, dass er den gewünschten Systemhostnamen widerspiegelt (z. B. webserver).

      HOSTNAME=webserver.localdomain
  1. Öffnen Sie die Datei /etc/hosts in einem Texteditor Ihrer Wahl und ändern Sie den mit 127.0.0.1 beginnenden Eintrag so, dass er dem folgenden Beispiel entspricht, wobei Sie einen eigenen Hostnamen angeben.

    127.0.0.1 webserver.localdomain webserver localhost4 localhost4.localdomain4
  2. Starten Sie die Instance neu, damit der neue Hostname übernommen und angezeigt wird.

    [ec2-user ~]$ sudo reboot

    Alternativ können Sie den Neustart über die EC2 Amazon-Konsole durchführen (wählen Sie auf der Seite Instances die Instance aus und wählen Sie Instance state, Reboot instance).

  3. Melden Sie sich bei der Instance an und überprüfen Sie, ob der Hostname aktualisiert wurde. Ihr Eintrag sollte den neuen Hostnamen bis zum ersten "." anzeigen, und der Befehl hostname sollte den vollqualifizierten Domain-Namen anzeigen.

    [ec2-user@webserver ~]$ hostname webserver.localdomain

Sie können auch mehr programmatische Lösungen implementieren, z. B. die Angabe von Benutzerdaten zur Konfiguration Ihrer Instance. Wenn Ihre Instance Teil einer Auto-Scaling-Gruppe ist, können Sie Lebenszyklus-Hooks verwenden, um Benutzerdaten festzulegen. Weitere Informationen finden Sie unter Ausführen von Befehlen auf Linux-Instances beim Start und Lebenszyklus-Hook für Instance-Start im AWS CloudFormation -Benutzerhandbuch.

Ändern der Shell-Anzeige ohne Auswirkungen auf den Hostnamen

Wenn Sie den Hostnamen für Ihre Instance nicht ändern möchten, aber einen sinnvolleren Systemnamen (wie) als den von AWS (z. B.webserver) angegebenen privaten Namen angezeigt haben möchten, ip-12-34-56-78 können Sie die Shell-Prompt-Konfigurationsdateien so bearbeiten, dass Ihr System-Spitzname anstelle des Hostnamens angezeigt wird.

Lassen Sie die Shell-Anzeige wie folgt einen Hostspitznamen anzeigen:
  1. Erstellen Sie eine Datei unter /etc/profile.d, die die Umgebungsvariable NICKNAME auf den Wert einstellt, den die Shell-Anzeige anzeigen soll. Führen Sie den folgenden Befehl aus, um als Systemspitznamen beispielsweise webserver festzulegen.

    [ec2-user ~]$ sudo sh -c 'echo "export NICKNAME=webserver" > /etc/profile.d/prompt.sh'
  2. Öffnen Sie die Datei /etc/bashrc (Red Hat) oder /etc/bash.bashrc (Debian/Ubuntu) in Ihrem bevorzugten Texteditor (z. B. vim oder nano). Sie müssen sudo mit dem Editorbefehl verwenden, da /etc/bashrc und /etc/bash.bashrc Eigentum von root sind.

  3. Bearbeiten Sie die Datei und ändern Sie die Shell-Anzeigenvariable (PS1) so, dass der Spitzname anstelle des Hostnamens angezeigt wird. Suchen Sie die folgende Zeile, in der die Shell-Anzeige in /etc/bashrc oder /etc/bash.bashrc festlegt wird (die Stelle und mehrere umgebende Zeilen werden im Folgenden angezeigt, um Kontext zu liefern. Suchen Sie die Zeile, die mit [ "$PS1" beginnt):

    # Turn on checkwinsize shopt -s checkwinsize [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ " # You might want to have e.g. tty in prompt (e.g. more virtual machines) # and console windows

    Ändern Sie den Wert von \h (Symbol für hostname) in dieser Zeile auf den Wert der Variable NICKNAME.

    # Turn on checkwinsize shopt -s checkwinsize [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@$NICKNAME \W]\\$ " # You might want to have e.g. tty in prompt (e.g. more virtual machines) # and console windows
  4. (Optional) Führen Sie die folgenden Schritte aus, um die Titel von Shell-Fenstern auf den neuen Spitznamen einzustellen.

    1. Erstellen Sie eine Datei namens /etc/sysconfig/bash-prompt-xterm.

      [ec2-user ~]$ sudo touch /etc/sysconfig/bash-prompt-xterm
    2. Machen Sie die Datei mithilfe des folgenden Befehls ausführbar:

      [ec2-user ~]$ sudo chmod +x /etc/sysconfig/bash-prompt-xterm
    3. Öffnen Sie die Datei /etc/sysconfig/bash-prompt-xterm mit einem Texteditor Ihrer Wahl (z. B. vim oder nano). Sie müssen sudo mit dem Editor verwenden, da die Datei /etc/sysconfig/bash-prompt-xterm Eigentum von root ist.

    4. Fügen Sie der Datei die folgende Zeile hinzu.

      echo -ne "\033]0;${USER}@${NICKNAME}:${PWD/#$HOME/~}\007"
  5. Melden Sie sich ab und wieder an, damit der neue Spitzname übernommen und angezeigt wird.

Ändern des Hostnamens auf anderen Linux-Bereitstellungen

Die Vorgehensweisen auf dieser Seite sind ausschließlich für die Verwendung mit Amazon Linux gedacht. Weitere Informationen zu anderen Linux-Bereitstellungen finden Sie in der jeweiligen Dokumentation und den folgenden Artikeln: