Ich habe mehrere Skripte, die das Dienstprogramm erfordern getent
. Außerdem habe ich einige nützliche Tipps gelesen, die getent verwenden .
getent
ist ein Netzwerkdienstprogramm, das auf Unix-, * BSD- und Linux-basierten Systemen weit verbreitet ist. Dieses Tool wird häufig von Sysadmins und Hauptbenutzern verwendet, um Netzwerkinformationen (IP-Adressen usw.) nachzuschlagen. Was Hostnamen angeht, getent
ist dies eines der wenigen Tools, die sowohl /etc/hosts
DNS als auch DNS verwenden.
Wie Wikipedia sagt :
getent ist ein Unix-Befehl, mit dem ein Benutzer Einträge in einer Reihe wichtiger Textdateien abrufen kann, die als Datenbanken bezeichnet werden.
Das Wichtigste dabei ist, dass getent
Dienste mit demselben Namen in derselben Reihenfolge durchsucht werden wie die meisten Anwendungen auf einem Unix-ähnlichen System. Dies macht es von unschätzbarem Wert beim Debuggen von System- oder Anwendungsproblemen. Tools wie dig
und nslookup
speziell nur DNS betrachten, dscl
erwarten jedoch , dass Sie die Namensdienste buchstabieren, nach denen Sie suchen möchten.
Ich möchte getent
für zwei Testfälle verwenden:
Analysieren Sie,
/etc/hosts
bevor Sie DNS abfragen . Wenn ichtesthost.example.org
zum Beispiel hinzufüge/etc/hosts
,getent hosts testhost.example.org
sollte der Eintrag von verwendet werden,/etc/hosts
bevor DNS abgefragt wird.
MacPorts scheint kein Paket bereitzustellen getent
.
Gibt getent
es auf Snow Leopard?
quelle
getent
? Was tut es? Auf welchen Systemen ist es normalerweise verfügbar?getent
OS X gibt es keine 1: 1-Zuordnung, da OS X DirectoryService verwendet , um beispielsweise Hostnamen aufzulösen. Können Sie einige konkretegetent
Anwendungsbeispiele nennen? Dies würde es einfacher machen, Ihnen den entsprechenden Weg zu zeigen, um diese Informationen unter OS X zu erhalten.getent
ist normalerweise auf Unix-, * BSD- und Linux-ähnlichen Systemen verfügbar. Ich habe meine Frage aktualisiert.getent
? Hostnamen/etc/hosts
vor der Verwendung von DNS auflösen?/etc/hosts
vor DNS, was für Webserver und andere Netzwerktests nützlich ist. Aber ich (und andere Systemadministratoren) verwenden getent auch für andere Zwecke, z. B. zur Fehlerbehebung bei LDAP.Antworten:
dscacheutil
ist wahrscheinlich der beste Weg, dies zu tun. Es emuliert nicht den üblichen Suchprozess, sondern verwendet ihn, sodass Sie dieselben Ergebnisse wie bei einer Standardsuche erhalten (einschließlich Caching, / etc / hosts, Computerdatensätze in Verzeichnisdiensten, DNS, mDNS für lokale Namen). usw).quelle
Schauen Sie sich an, wie Sie Unix 'getent mit MacOSXs dscl emulieren . Da Sie Skripte haben, die diese verwenden
getent
, möchten Sie möglicherweise ein Skript als Wrapper um dscl verwenden.quelle
Es ist kein Hexenwerk, die Getent-Quelle von OpenSolaris (oder einem anderen Betriebssystem, ich würde eher eines der BSDs als Linux ausprobieren) zu durchsuchen und zu portieren. Ich habe das hauptsächlich dadurch funktioniert, dass ich nur die Dinge deaktiviert habe, für die macOS kein Äquivalent hatte (Netzmasken und Projekt - Solaris-spezifisch). Oder man kann es ziemlich einfach in Perl schreiben. Jemand hat vor langer Zeit eine begrenzte gemacht, und ich habe eine vollständigere gemacht; Ether werden nicht unterstützt, da es keine Standard-Suche für Perl gibt, aber der Rest scheint in Ordnung zu sein.
getent.pl
quelle