Locate
locate sucht nach Dateien
Beschreibung
- Hierbei wird aber nicht das gesamte Datenverzeichnis durchsucht (wie bei find), sondern eine Datenbank, die zuvor angelegt wurde.
- Diese wird regelmäßig aktualisiert, damit locate immer die korrekten Orte anzeigt, an denen sich die Dateien befinden und somit neue Dateien und Datenbewegungen erfasst werden.
- Der Vorteil diese Methode besteht darin, dass das Durchsuchen der Datenbank sehr schnell geht, und die Suchergebnisse praktisch sofort zur Verfügung stehen.
- Allerdings muss man beachten, dass die Verzeichnisse (und deren Unterverzeichnisse) /tmp, /var/spool und /media von Haus aus nicht indexiert werden, da sich die Inhalte dieser Verzeichnisse permanent ändern.
Installation
locate gibt es in verschiedenen Varianten. Empfohlen wird das Paket
# apt install mlocate
Aktualisierung der Datenbank
- Aktuelle Änderungen am Dateibestand werden durch locate nicht gefunden, da ja nur eine Datenbank durchsucht wird.
- Hat man also erst kürzlich Daten manipuliert und möchte sie wiederfinden, so verwendet man entweder find oder man stößt die Aktualisierung der Datenbank von Hand an und wartet je nach Größe des Dateisystems ein bisschen.
# updatedb
Weitere Benutzereingriffe sind normalerweise nicht notwendig, da mittels /etc/cron.daily/mlocate eine automatische Aktualisierung einmal pro Tag stattfindet.
Syntax
$ locate Suchbegriff
Optionen
Anwendungen
Zu beachten ist hierbei, dass zwischen Groß- und Kleinschreibung unterschieden wird. Dies kann mit dem Schalter -i übergangen werden, sodass keine Unterscheidung mehr gemacht wird.
$ locate -i Suchbegriff
Konfiguration
Verzeichnisse ausschließen
/etc/updatedb.conf
PRUNEPATHS="/tmp /var/spool /media /home/.ecryptfs /media/backup"
Nach der nächsten Aktualisierung des Indexes findet locate dann keine Dateien und Ordner unterhalb dieser Verzeichnisse mehr.