'last -d' ist WIRKLICH langsam

'last -d' ist WIRKLICH langsam

Ich kann den Befehl last(und last -i) in einem Bruchteil einer Sekunde ausführen, aber wenn ich ausführe last -d,nach meinen Testsdauert es satte 5 Minuten und 22 Sekunden.

Nur als Referenz. Das Hinzufügen der -dFlagge bewirkt Folgendes:

   -d     For non-local logins, Linux stores not only the host name of the
          remote host but its IP number as well.  This  option  translates
          the IP number back into a hostname.

In den Manpages gibt es keinen Hinweis darauf, dass es so viel mehr Zeit in Anspruch nehmen sollte. Wie es heißt, speichert Linux die IP bereits, sodass es keine langsame Rückwärtssuche der IP basierend auf dem Hostnamen vor Ort durchführen muss. Darüber hinaus ist es langsam, selbst wenn es „nachschlägt“, dass der Hostname-Wert :0(eines lokalen Logins) den „IP-Adress“-Wert von zurückgeben sollte 0.0.0.0.

Ist die -dFlagge auf allen Computern langsam oder nur auf meinem? Könnte dies auf eine beschädigte Datei irgendwo hinweisen, die möglicherweise nicht zugänglich oder schwer zu lesen ist?

Zur Information: Ich führe32-Bit-Ubuntu 13.10(noch nicht aktualisiert).

Antwort1

Wie ist die DNS-Suchreihenfolge ? Die erste Option /etc/nsswitch.confsollte lauten : -files

hosts:      files mdns4_minimal [NOTFOUND=return] dns myhostname

Es kann sinnvoll sein, die Suchreihenfolge in Ihrem System zu bestätigen.

Ich habe den gleichen Test durchgeführt und das Ergebnis betrug 47 Sekunden last -d.

Ich habe es dann hinzugefügt 0.0.0.0 localhostund /etc/hostsjetzt dauert die Ausführung lediglich 0,031 Sekunden last -d.

Hinweis - Ich habe das 0.0.0.0seit entfernt, dalaut Wikipedia, es ist nicht gültig, es dort zu haben.

verwandte Informationen