[[Vorlage(Getestet, focal)]] {{{#!vorlage Wissen [:Pakete_installieren: Installation von Programmen] [:Terminal: Ein Terminal öffnen] }}} [[Inhaltsverzeichnis()]] [gnomeprojects:Tracker:] {en} ist ein im Hintergrund laufender Dienst des [:GNOME:]-Desktops für die [:Desktopsuchmaschinen:Desktopsuche]. Er durchsucht Dateien mit Bildern, Videos, Musik und Textdateien, Dokumente, Quellcode usw. im Homeverzeichnis des jeweiligen Benutzers und speichert die indizierten Metadaten der Dateien in einer Datenbank. Es gibt für jeden Benutzer in seinem Homeverzeichnis eine eigene Datenbank. Beim Sammeln und Speichern der Daten folgt Tracker der [https://nepomuk.semanticdesktop.org/ NEPOMUK] {en} Spezifikation. Auf die von Tracker indizierten Daten greift z.B. die [:GNOME Shell:] und auch [:Nautilus:] zurück, wenn man in deren Suchleiste einen Suchbegriff eingibt. Tracker ist bis einschließlich [:21.04:] in der Version 2.x in den Paketquellen, ab [:21.10:] kommt Version 3 zum Einsatz. = Installation = Das Programm ist in der Standardinstallation von Ubuntu enthalten und wird auch automatisch mit installiert, wenn man bei einem Ubuntu-Derivat den Dateimanager Nautilus nachinstalliert: {{{#!vorlage Paketinstallation tracker }}} = Technik = Aus technischer Sicht besteht Tracker aus mehreren Komponenten. Der "Miner" namens '''tracker-miner-fs''' überwacht das Dateisystem auf neue Dateien. Bei neuen oder geänderten Dateien werden die Metadaten von '''tracker-extractor''' extrahiert und dann von '''tracker-store''' in eine [:SQLite:] Datenbank geschrieben. Diese ist unter '''/home/BENUTZER/.cache/Tracker/meta.db''' zu finden. Die Abfrage der Datenbank erfolgt über [wikipedia:SPARQL:]. Das Journal und die Logs von Tracker liegen unter '''/home/BENUTZER/.local/share/tracker/data'''. Das ganze läuft für den Nutzer völlig transparent im Hintergrund. Tracker (bzw. dessen Komponenten) werden über [:systemd/User_Units:systemd User Units] gestartet. Zwar gibt es auch [:.desktop-Dateien:] (zu finden unter '''/etc/xdg/autostart''') gestartet, die vor GNOME 3.34 für den Start zuständig waren. Die .desktop-Dateien enthalten aber die Direktive `X-GNOME-HiddenUnderSystemd=true`, d.h. sie überlassen systemd die Kontrolle. = Benutzung = Normalerweise gibt es keine Notwendigkeit, mit Tracker zu interagieren, das alles transparent im Hintergrund läuft. Möglich ist dies aber im Terminal[2]. Die allgemeine Syntax für die Befehle lautet {{{#!vorlage Befehl tracker BEFEHL [OPTION(EN)] [DATEI(EN)] }}} Eine Übersicht der Befehle bekommt man über {{{#!vorlage Befehl tracker --help }}} Hilfe zu jedem Befehl erhält man über {{{#!vorlage Befehl tracker BEFEHL --help }}} Außerdem gibt es zu jedem Befehl eine recht umfangreiche [:man:Manpage]. Beispiel für `tracker daemon`: der erste Befehl gibt eine Übersicht über die Optionen des Tracker Daemons, der zweite ruft die zugehörige Manpage auf: {{{#!vorlage Befehl tracker daemon --help man tracker-daemon }}} Zum Aufruf der zugehörigen Manpage muss also ein Minuszeichen `-` zwischen das Wort `tracker` und den Befehl gesetzt werden. Im folgenden einige Beispiel für die Interaktion mit Tracker: Der Befehl {{{#!vorlage Befehl tracker daemon -p }}} liste alle Prozesse auf, die von Tracker laufen. Wer Tracker bei der Arbeit zusehen möchte, kann die Optionen `-f` oder `-w` nutzen. Mit {{{#!vorlage Befehl tracker daemon -f }}} kann man im Terminal verfolgen, was Tracker gerade macht (z.B. Leerlauf, Dateien durchsuchen, Daten speichern), mit {{{#!vorlage Befehl tracker daemon -w }}} wird im Terminal ausgeben, was Tracker in die Datenbank schreibt. Beide Befehl muss man mit [[Vorlage(Tasten strg+c)]] beenden. Möchte die Informationen zu einer Datei in der Datenbank sehen, nutzt man den Befehl {{{#!vorlage Befehl tracker info /PFAD/ZUR/DATEI/DATEINAME }}} Es gibt auch die Möglichkeit, die Datenbank nach Begriffen zu durchsuchen. Dazu dient der Befehl {{{#!vorlage Befehl tracker search SUCHBEGRIFF }}} Als Ergebnis erhält man eine Liste der ersten 10 Suchtreffer. Es werden alle Dateien gezeigt, wo `SUCHBEGRIFF` im Dateinamen, in den Metadaten der Datei oder im Inhalt vorkommt. Möchte man mehr als 10 Treffer haben, nutzt man die Option `-l ANZAHL_TREFFER`. Möchte man die bestehende Datenbank komplett löschen, geschieht diese mit dem Befehl {{{#!vorlage Befehl tracker reset -r }}} Danach sollte man die Datenbank mit Hilfe des Befehls {{{#!vorlage Befehl tracker daemon -s }}} neu befüllen lassen. == Konfiguration == Tracker wird komplett über [:GNOME_Konfiguration/dconf:dconf] konfiguriert. Normalerweise besteht keine Notwendigkeit, eine der Voreinstellungen von Ubuntu zu ändern. Die Einstellungen kann man sich über den Befehl {{{#!vorlage Befehl gsettings list-recursively | grep -i org.freedesktop.Tracker | sort | uniq }}} ausgeben lassen. == bestimmte Dateitypen ausschließen == Eine Reihe von eigentlich indizierbaren Dateien ist in der Standardkonfiguration von Tracker bereits ausgeschlossen. Die Liste erhält man mit dem folgenden Befehl: {{{#!vorlage Befehl gsettings get org.freedesktop.Tracker.Miner.Files ignored-files }}} Möchte man die Liste ergänzen, fügt man z.B. mit Hilfe des [:dconf-editor:dconf-editors] den gewünschten Dateityp hinzu. Das Schema ist üblicherweise '''*.DATEIENDUNG''', also z.B. '''*.epub''' für E-Books im Epub-Format. == Verzeichnisse ausschließen == Man kann gezielt Verzeichnisse von der Überwachung und Indizierung durch Tracker ausschließen, ohne die Konfiguration von Tracker zu ändern. Dazu legt man einfach in dem Verzeichnis eine leere Datei Namens '''.trackerignore''' an. Sind in diesem Verzeichnis Dateien enthalten die vorher bereits von Tracker indiziert wurden, bleiben die Einträge in der Datenbank bestehen. Die Verzeichnisse '''.git''' und '''.hg''', in denen die Versionskontrollsystem [:Git:] bzw. [:Archiv/Mercurial:Mercurial] ihr Daten speichern, werden von Tracker ebenfalls automatisch ignoriert. == Journalgröße reduzieren == Tracker schreibt, wie oben erwähnt, ein Journal. Die maximale Größe ist auf 50 MB beschränkt. Wem das zu viel ist, kann unter dem Schlüssel `org.freedesktop.Tracker.DB journal-chunk-size` einen kleineren Wert vorgaben. Der Wert wird in MB angegeben. = Tracker deaktiviern = Wer Tracker gar nicht nutzt möchte, kann die entsprechenden systemd Units komplett deaktivieren. Da die Units als User Units laufen, muss man dies für jeden Nutzer, der Tracker nicht nutzen will, einzeln machen. Dazu stoppt man zuerst die entsprechenden Units {{{#!vorlage Befehl systemctl stop --user tracker-extract.service systemctl stop --user tracker-miner-fs.service systemctl stop --user tracker-store.service systemctl stop --user tracker-writeback.service }}} und maskiert diese {{{#!vorlage Befehl systemctl mask --user tracker-extract.service systemctl mask --user tracker-miner-fs.service systemctl mask --user tracker-store.service systemctl mask --user tracker-writeback.service }}} Nach einem Neustart des Systems ist Tracker für den Nutzer, unter dem die Befehle ausgeführt wurden, deaktiviert. Überprüfen kann man dies über {{{#!vorlage Befehl tracker daemon status }}} was eine Ausgabe wie die folgende geben sollte: {{{ Speichern: 03 Jan 2022, 20:52:15: ✗ Store - Nicht verfügbar Indizierer: 03 Jan 2022, 20:52:15: ✗ Dateisystem - Läuft nicht oder Plugin ist deaktiviert 03 Jan 2022, 20:52:15: ✗ Entdecker - Läuft nicht oder Plugin ist deaktiviert }}} Zum Reaktivieren einfach die vier Units über `systemctl unmask --user NAME_DER_UNIT` wieder reaktivieren. = Problembehebung = == Übermäßiger Speicherverbrauch == Hat man sehr viele und / oder sehr große indizierbare Dateien (z.B. eine große Sammlung Ebooks im Epub-Format, kann die Tracker Datenbank sowie das Backup sehr viel Platz in Anspruch nehmen und damit die '''/home''' Partition voll läuft. Abhilfe kann man schaffen, in dem man entweder dieses Verzeichnis von der Indizierung [#Verzeichnisse-auschliessen ausschließt] oder, sofern der Speicherverbrauch nur durch einen Dateityp verursacht wird, diesen [#bestimmte-Dateitypen-ausschließen Dateityp ausschließen]. = Links = == intern == * [:Desktopsuchmaschinen:] {Übersicht} Übersichtsartikel == extern == * [gnomeprojects:Tracker/Features:Features von Tracker] {en} * [gnomeprojects:Tracker/SupportedFormats:Liste der unterstützen Formate] {en} * [gnomeprojects:Tracker/Documentation/GettingStarted:Startanleitung] {en} # tag: GNOME, Desktopsuche