Antworten:
Die Antwort hängt von der Version von locateIhnen verwenden, aber es gibt eine faire Chance es ist mlocate, das updatedbläuft schnell durch Scans tun Full - Disk zu vermeiden:
mlocate ist eine locate / updatedb-Implementierung. Das 'm' steht für "Zusammenführen": updatedb verwendet die vorhandene Datenbank erneut, um zu vermeiden, dass der größte Teil des Dateisystems erneut gelesen wird. Dadurch wird updatedb schneller und der Systemcache wird nicht so stark geleert.
(In der Datenbank wird der Zeitstempel jedes Verzeichnisses ctimeoder mtime, je nachdem, welcher neuer ist, gespeichert .)
Wie die meisten Implementierungen updatedb, mlocate‚s wird auch Dateisysteme und Pfade überspringen , die es so konfiguriert ist , zu ignorieren. Standardmäßig gibt es keine in mlocate‚s Fall, aber Verteilungen typischerweise eine Basis bieten updatedb.confdie Systeme vernetzen Datei ignoriert, virtuelle Dateisysteme usw. (siehe Debians Konfigurationsdatei zum Beispiel, das ist gängige Praxis in Debian, so GNU updatedbist ähnlich konfiguriert ).
mtimeseines unmittelbaren Elternteils ändern .
mlocatekümmert es mich ctimeund mtimewas bedeutet, dass es nur darum geht, ob die Liste der Verzeichniseinträge immer noch dieselbe ist (keine entfernten oder hinzugefügten Dateien), was bedeutet, dass es sich nicht um tatsächliche Dateien selbst handelt. Ist das korrekt ?
locateist nicht grep -R. Es werden keine Dateiinhalte gelesen.
mlocateIgnoriert nicht nur die Änderungszeiten, sondern auch bestimmte Teilbäume des Dateisystems mit vielen uninteressanten oder möglicherweise doppelten Dateien, wie in /etc/updatedb.conf angegeben (und in man updatedb.conf beschrieben ):
updatedbImplementierungen unterstützen auch konfigurierte Ausschlüsse.)