Startseite > Paket- & Systemverwaltung > getent

getent: Abfrage von Name Service Switch (NSS)-Einträgen

Der Befehl getent fragt Einträge aus verschiedenen Systemdatenbanken (z. B. Benutzer-, Gruppen-, Host-Informationen) mithilfe der Name Service Switch (NSS)-Bibliothek ab. Dies ermöglicht den Abruf von Informationen nicht nur aus lokalen Dateien wie /etc/passwd, /etc/group, /etc/hosts, sondern auch aus anderen Quellen, die in der NSS-Konfiguration definiert sind, wie NIS, LDAP usw.

Übersicht

getent durchsucht verschiedene Datenbanken wie Benutzer, Gruppen und Hosts gemäß der Name Service Switch (NSS)-Konfiguration des Systems. Es kann Informationen nicht nur aus lokalen Dateien (/etc/passwd, /etc/group usw.), sondern auch aus netzwerkbasierten Diensten (NIS, LDAP usw.) abrufen, was nützlich ist, um zu überprüfen, wie das System bestimmte Informationen interpretiert und verwendet.

Hauptmerkmale

  • Abfrage verschiedener Datenquellen gemäß NSS-Konfiguration
  • Suche nach Systeminformationen wie Benutzern, Gruppen, Hosts, Diensten
  • Unterstützung für lokale Dateien und Netzwerkdienste (NIS, LDAP)
  • Nützlich für die Diagnose von Systeminformationen und die Verwendung in Skripten

Hauptdatenbanken für Abfragen

Dies sind repräsentative Datenbanktypen, die mit getent abgefragt werden können.

  • passwd: Benutzerkontoinformationen (z. B. /etc/passwd)
  • group: Gruppeninformationen (z. B. /etc/group)
  • hosts: Hostnamen- und IP-Adressinformationen (z. B. /etc/hosts, DNS)
  • services: Netzwerkdienste und Portnummern (z. B. /etc/services)
  • protocols: Netzwerkprotokollinformationen (z. B. /etc/protocols)
  • networks: Netzwerknamen und Adressinformationen (z. B. /etc/networks)

Hauptoptionen

Der Befehl getent verwendet hauptsächlich den Datenbanknamen und den Abfrageschlüssel als Argumente, bietet aber auch einige nützliche Optionen.

Abfragesteuerung

Erzeugter Befehl:

Kombinieren Sie die Befehle.

Beschreibung:

`getent` Führen Sie den Befehl aus.

Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.

Anwendungsbeispiele

Beispiele für die Verwendung des Befehls getent zur Abfrage verschiedener Systeminformationen.

Alle Benutzer auflisten

getent passwd

Gibt alle auf dem System registrierten Benutzerkontoinformationen aus.

Informationen zu einem bestimmten Benutzer abfragen

getent passwd root

Gibt die Kontoinformationen für den angegebenen Benutzernamen (z. B. 'root') aus.

Alle Gruppen auflisten

getent group

Gibt alle auf dem System registrierten Gruppeninformationen aus.

Informationen zu einer bestimmten Gruppe abfragen

getent group sudo

Gibt die Informationen für den angegebenen Gruppennamen (z. B. 'sudo') aus.

IP-Adresse anhand des Hostnamens abfragen

getent hosts google.com

Gibt die IP-Adressinformationen für den angegebenen Hostnamen (z. B. 'google.com') aus. Folgt der DNS-Konfiguration.

Hostname anhand der IP-Adresse abfragen

getent hosts 8.8.8.8

Fragt die Hostnameninformationen für die angegebene IP-Adresse (z. B. '8.8.8.8') umgekehrt ab.

Portnummer eines bestimmten Dienstes abfragen

getent services ssh

Gibt die Portnummer und Protokollinformationen für den angegebenen Dienst (z. B. 'ssh') aus.

Benutzerinformationen nur aus Dateien abfragen

getent -s files passwd

Gibt Benutzerinformationen nur aus lokalen Dateien wie /etc/passwd ab, indem die NSS-Quelle explizit auf 'files' gesetzt wird.

Tipps & Hinweise

Tipps und Hinweise zur effektiveren Nutzung des Befehls getent.

Verständnis der NSS-Konfigurationsdatei

getent fragt Datenquellen in der Reihenfolge ab, in der sie in der Datei `/etc/nsswitch.conf` definiert sind. Es ist wichtig, diese Datei zu überprüfen, um zu verstehen, in welcher Reihenfolge das System Informationen abruft. Zum Beispiel bedeutet `passwd: files systemd`, dass zuerst die lokalen Dateien (`/etc/passwd`) überprüft und dann versucht wird, Benutzerinformationen über den `systemd`-Dienst zu finden.

Nützliche Tipps

  • **Diagnose von Netzwerkproblemen:** Verwenden Sie `getent hosts`, um Probleme mit der DNS- oder NIS-Konfiguration zu diagnostizieren.
  • **Validierung von Benutzern/Gruppen in Skripten:** Nützlich, um in Skripten zu überprüfen, ob ein bestimmter Benutzer oder eine Gruppe im System vorhanden ist.
  • **Unterschied zum Befehl `id`:** Der Befehl `id` zeigt die UID/GID und die Gruppenzugehörigkeit des aktuell angemeldeten oder eines angegebenen Benutzers an, während `getent passwd` detaillierte Informationen zu allen auf dem System registrierten Benutzerkonten über NSS abruft.

Gleiche Kategorie Befehle