Was unterscheidet sich zwischen dem statischen Hostnamen und dem Symbolnamen und dem hübschen Hostnamen in RHEL 7?

8

Ich studiere RHEL 7 und habe einige Fragen.

Mit dem hostnamectlBefehl erhalte ich Informationen über den RHEL 7-Hostnamen und andere.

Wenn ich den Hostnamen ändern möchte, gibt es einige Optionen mit hostnamectl:

[root@linux7 ~]# hostnamectl set-
set-chassis     set-deployment  set-hostname    set-icon-name 

Zum Ändern des Hostnamens wird der statische Hostname set-hostnameverwendet. Was ist also mit set-icon-nameund --prettyund welche bestimmte Datei wird geändert?

Das folgende Beispiel ist angegeben:

[root@linux7 ~]# hostnamectl set-hostname Linuxindia
[root@linux7 ~]# hostnamectl set-icon-name mumbailinux
[root@linux7 ~]# systemctl restart systemd-hostnamed.service 

[root@linuxindia ~]# hostnamectl set-
set-chassis     set-deployment  set-hostname    set-icon-name   
[root@linuxindia ~]# hostnamectl set-hostname "hellolinux" --pretty
[root@linuxindia ~]# hostnamectl status 
   Static hostname: linuxindia
   Pretty hostname: hellolinux
         Icon name: mumbailinux
           Chassis: vm
        Machine ID: f3ffdd0447604e20a0a4278c56f4275b
           Boot ID: 70c3c85ec1fa4dceb5a7f52789eed524
    Virtualization: kvm
  Operating System: Red Hat Enterprise Linux Server 7.3 Beta (Maipo)
       CPE OS Name: cpe:/o:redhat:enterprise_linux:7.3:beta:server
            Kernel: Linux 3.10.0-493.el7.x86_64
      Architecture: x86-64
[root@linuxindia ~]# 

Fordern Sie auch Informationen zum vorübergehenden Hostnamen an.

Sagar Dalvi
quelle

Antworten:

8

Der Symbolname ist der Name des Geräts gemäß der XDG-Symbolnamensspezifikation .

Bei --prettyVerwendung wurde der hübsche Hostname des Computers festgelegt. Dieser Name ist ein vom Menschen lesbarer Name, der dem Benutzer und nicht dem Computer zur Verfügung steht. Es gibt keine Einschränkung des Internet-Domainnamens. Sie können einen beliebigen gültigen UTF-8-Namen dafür verwenden:

$ hostnamectl --pretty set-hostname "$(perl -CO -le 'print "\x{1f389}"')"
$ hostnamectl --pretty status
🎉

Beachten Sie, dass DNS zwar Domänennamen mit bis zu 255 Zeichen zulässt, der Hostname unter Linux jedoch nur auf 64 Zeichen beschränkt ist:

$ hostnamectl set-hostname "$(perl -le 'print "A" x 65')"
$ awk '{print length}' /etc/hostname
64

Das hostnamewurde gespeichert /etc/hostname, pretty nameund icon namewerden gespeichert in /etc/machine-info.

cuonglm
quelle
2

Das RHEL 7-Netzwerkhandbuch enthält einige Details zu Hostnamen:

Es gibt drei Klassen von Hostnamen: statisch, hübsch und vorübergehend. Der „statische“ Hostname ist der traditionelle Hostname, der vom Benutzer ausgewählt werden kann und in der Datei / etc / hostname gespeichert ist. Der "vorübergehende" Hostname ist ein dynamischer Hostname, der vom Kernel verwaltet wird. Es wird standardmäßig mit dem statischen Hostnamen initialisiert, dessen Wert standardmäßig "localhost" ist. Sie kann zur Laufzeit per DHCP oder mDNS geändert werden. Der „hübsche“ Hostname ist ein Freiform-UTF8-Hostname zur Präsentation für den Benutzer.

Hinweis: Ein Hostname kann eine Freiformzeichenfolge mit einer Länge von bis zu 64 Zeichen sein. Red Hat empfiehlt jedoch, dass sowohl statische als auch vorübergehende Namen mit dem vollqualifizierten Domänennamen (FQDN) übereinstimmen, der für den Computer in DNS verwendet wird, z. B. host.example.com. Es wird auch empfohlen, dass die statischen und transienten Namen nur aus 7-Bit-ASCII-Kleinbuchstaben, keinen Leerzeichen oder Punkten bestehen und sich auf das Format beschränken, das für DNS-Domänennamenbezeichnungen zulässig ist, obwohl dies keine strenge Anforderung ist. Ältere Spezifikationen lassen den Unterstrich nicht zu, weshalb ihre Verwendung nicht empfohlen wird. Das hostnamectl-Tool erzwingt Folgendes: Statische und vorübergehende Hostnamen, die aus az, AZ, 0-9, "-", "_" und "." Bestehen. nur, um nicht in einem Punkt zu beginnen oder zu enden und nicht zwei Punkte unmittelbar nacheinander zu haben. Die Größenbeschränkung von 64 Zeichen wird erzwungen.

CertDepot
quelle