Desktop-Suche mit Beagle, Kat und Kio-Clucene

Desktop-Suche mit Beagle, Kat und Kio-Clucene

Redaktion LinuxUser
20.11.2005

Hund und Katz

Traditionelle Verzeichnisse als Ordnungshilfe haben ausgedient. Suchmaschinen prägen in Zukunft unsere Arbeit am Computer. Dieser Artikel stellt drei Programme vor, die sich unter Linux um den ersten Platz streiten.

von Marcel Hilzinger

Der folgende Artikel wurde ursprünglich in LinuxUser Ausgabe 12/2005 veröffentlicht. Diesen und weitere Beiträge findet ihr auch auf der LinuxUser-Homepage.

Hier interessiert uns natürlich euer Feedback. Schreibt uns eure Meinung, sodass wir in Zukunft weitere interessante Artikel aus unseren Heften auswählen können.

Readme

Desktop-Suchmaschinen erstellen einen Index von Stichworten, Datei-Inhalten und Metainformationen. Eine Suche in diesem Index dauert wenige Sekunden. Lesen Sie hier, wie Beagle, Kat und Kio-Lucene diese Aufgabe lösen.

"Wo habe ich bloß dieses verflixte Dokument abgespeichert?" Stellen Sie sich diese Frage des öfteren oder sogar täglich, ist es höchste Zeit für Sie, eine Desktop-Suchmaschine anzuschaffen. Die neueste Generation dieser Anwendungen nimmt Ihre Dokumente bereits beim Erstellen in einen Index auf. Speichern Sie das Dokument aus Versehen in einem falschen Verzeichnis, müssen Sie keine langwierige Suche durchführen: Wissen Sie auch nur ein Wort aus dem Dokument, findet ein gutes Desktop-Suchprogramm es in Sekundenbruchteilen.

Die Konkurrenz

Unter Linux läutete das in Mono programmierte Programm Beagle [1] das Zeitalter der Desktop-Suchmaschinen ein. Es taucht in Suse Linux 9.3 erstmals für normale Benutzer auf. Wenig später erhielt Beagle Konkurrenz aus dem KDE-Lager: Die Suchmaschine Kat [2] nutzt Techniken des KDE-Desktops, um den Suchindex auf aktuellem Stand zu haben. Kat ist inzwischen fester Bestandteil von Mandriva Linux 2006. Während Beagle und Kat als eigenständige Programme arbeiten, versucht das Projekt Kio-Clucene [3] die Suchmaschinen-Funktion direkt in Konqueror einzubinden. Über die URL clucene:/Suchbegriff starten Sie so aus jedem KDE-Programm heraus eine Suche. Kio-Clucene baut auf die Search Engine Clucene auf -- den C++-Port von Lucene. Lucene ist die Suchmaschine, die auch Beagle benutzt. Last, but not least, existiert auch für Beagle ein Kio-Slave, den dieser Artikel aber nur am Rande behandelt, da das Projekt vermutlich in naher Zukunft mit Kio-Clucene zusammenwächst.


Kio-Slave: KDE Input/Output Slave. Virtuelle Adresse, um auf einheitliche Art und Weise Zugang zu allen möglichen Arten von Daten zu erlangen.

Feature-Übersicht
  Beagle Kat Kio-Clucene
Inotify X X -
MP3-Tags X X -
OGG-Vorbis-Tags X X -
EXIF-Informationen X X -
Office-Metadaten X - -
Office-Dateien X X -
Unicode-Support X - X
Suche speichern X - X
Web-Frontend X - X
Erste Indexerstellung (in Minuten) 1:55 über 10 Minuten 2:15

Installation

Haben Sie keine Lust, Beagle oder Kat von Hand zu kompilieren, benutzen Sie am besten Ubuntu 5.10, Suse Linux 10.0 oder Mandriva 2006. Diese Distributionen bringen Pakete von Beagle oder Kat mit. Um allerdings die neuesten Versionen der Programme zu benutzen, kommen Sie oft nicht um die Kompilierung herum. Kat von Hand zu übersetzen ist dabei wesentlich einfacher als die Kompilierung von Beagle, da Sie für die aktuelle Version 0.1.1 von Beagle nebst sämtlichen Gnome-Entwicklerpaketen eventuell auch eine neue Mono-Version benötigen. Das neue Beagle bringt erstmals Unterstützung für E-Mails von KMail mit und verfügt über ein Web-Frontend. Bevor Sie sich an die Arbeit machen, sollten Sie einen Blick auf die Tabelle "Feature-Übersicht" werfen.

Möchten Sie Kat aus dem Quellcode übersetzen, laden Sie sich die Sourcen von der Projekt-Homepage herunter, und entpacken Sie mit dem Befehl tar xvfj kat-0.6.4.tar.bz2. Anschließend wechseln Sie mit cd kat-0.6.4 ins neue Verzeichnis und starten hier den Übersetzungsvorgang mit dem üblichen Dreischritt

./configure
make
su -c 'make install'

Benutzer von Suse Linux ersetzen dabei den ersten Befehl durch ./configure --prefix=/opt/kde3. Kat benötigt für die Übersetzung zahlreiche KDE-Entwicklerpakete. Unter Suse Linux installieren Sie diese durch Markieren der Selektion KDE Entwicklung. Bei der Download-Version von Mandriva müssen Sie die KDE-Devel-Pakete übers Internet herunterladen.

Um Beagle zu kompilieren, benötigen Sie neben den gewöhnlichen Gnome-Entwicklerpaketen auch zahlreiche Mono-Pakete. Diese befinden sich nur auf der Retail-DVD von Suse Linux sowie auf dem FTP-Server, sind hingegen nicht Teil der OSS-DVD. Vergessen Sie nicht, auch gmime-devel zu installieren. Möchten Sie mit Beagle auch im Web-Browser suchen, rufen Sie das Configure-Skript mit der Option --enable-webservices auf. So können Sie später über die Adresse http://localhost:8888/beagle/search.aspx auf den Suchindex zugreifen. Nach ./configure starten Sie make und als Root make install. Klappt es nicht mit dem Kompilieren, laden Sie sich aktuelle RPM-Pakete von [4] herunter. Für Ubuntu gibt es bereits Beagle-Pakete der Version 0.1.1 im Universe-Repository.

Für den Kio-Slave clucene:/ müssen Sie zunächst die Suchmaschine Clucene [5] installieren. Für unsere Tests benutzten wir Version 0.8.13. Hier ist es wichtig, dass Sie die Übersetzung nicht mit ./configure starten, sondern zunächst autoconf, automake und aclocal aufrufen. Erst dann starten Sie die Kompilierung mit ./configure && make und make install als Root. Anschließend entpacken Sie den Tarball des Kio-Slaves, wechseln ins Verzeichnis kio-clucene-0.1.0 und starten das übliche Dreigespann:

./configure
make
su -c 'make install'

Index erstellen

Bevor Sie mit der Suche beginnen können, muss jedes Programm zuerst einen Index erstellen. Am einfachsten erledigt dies Beagle. Hier starten Sie einfach über [Alt]+[F2] das Programm beagled. Der Daemon startet dann die Indizierung im Hintergrund. Welche Verzeichnisse das Mono-Programm in die Suche mit einbezieht, legen Sie in der aktuellen Version 0.1.1 über das Tool beagle-settings fest (Abbildung ((1))). Bei älteren Versionen benutzen Sie das Kommandozeilentool beagle-config. In der Grundeinstellung durchsucht Beagle automatisch sämtliche Verzeichnisse unter /home. Bereits nach weniger als zwei Minuten hatte Beagle das Home-Verzeichnis mit einigen Office-Dokumenten erfolgreich indiziert.

((1)) In der neuesten Version von Beagle legen Sie die zu durchsuchenden Verzeichnisse bequem über ein grafisches Frontend fest.


Inotify: Eine spezielle Funktion des Kernels, die das System über neue oder geänderte Dateien informiert. Der Kernel unterscheidet dabei bis zu 15 verschiedene Ereignisse. Inotify ist seit Kernel 2.6.13 fester Bestandteil von Linux.

Bei Kat starten Sie zunächst das KDE-Programm über [Alt]+[F2] und die Eingabe von kat. Ein Assistent überprüft danach, ob der Kernel des Systems Inotify unterstützt (Abbildung ((2))), sämtliche Hilfsprogramme installiert sind und ob der Kat-Daemon läuft.

((2)) Zu alt für eine effiziente Desktop-Suche: Der Kernel von Suse Linux 9.3 unterstützt noch kein Inotify.

Im Hauptfenster von Kat wählen Sie Einstellungen | Kat einrichten. Im neuen Dialogfenster wählen Sie Katalog | Hinzufügen und füllen dann die einzelnen Felder aus (Abbildung ((3))). Vergessen Sie nicht, die Option Automatische Aktualisierung anzuklicken, damit Kat den Katalog stets aktuell hält. Pro Katalog müssen Sie den Startordner und den Namen angeben. Über die Reiter Mime-Typen, Metainformationen, Volltext und Vorschaubilder legen Sie fest, welche Informationen das Suchprogramm in den Index einbindet. Mit Vorschaubildern dauert es zum Beispiel wesentlich länger, den Suchindex zu erstellen. Ist ein Katalog einmal erstellt, können Sie diesen nicht mehr ändern, sondern nur noch löschen und wieder neu anlegen.

Unter dem Menüpunkt Erweitert legen Sie auszuschließende Dateien und Verzeichnisse fest. Die beiden Schieberegler bestimmen, mit welcher Priorität der Kat-Daemon arbeitet und wie lange er zwischen zwei Suchdurchläufen warten soll. Um einen ersten Index zügig fertigzustellen, schieben Sie den Regler Taskplaner/Last auf 80 Prozent und die Wartezeit auf wenige Sekunden. Mit dem System lässt sich dann allerdings nicht mehr flüssig arbeiten. Ist der Grundindex erstellt, setzen Sie die Werte wieder zurück. Im Test mit den Office-Dokumenten brauchte Kat über 10 Minuten, um sämtliche Dokumente zu erfassen.

((3)) Kat arbeitet mit verschiedenen Katalogen. Für jeden Katalog können Sie einen Startordner angeben.

Kio-Clucene ist keine eigenständige Anwendung, sondern fest in Konqueror integriert. Tippen Sie im KDE-Browser die URL clucene:/ ein, sehen Sie die drei Symbole Saved Queries, Setup indexes und Start HTML search. Klicken Sie auf Setup indexes (Abbildung ((4))), erscheint der Konfigurations-Dialog. Hier müssen Sie zuerst den Namen des Indexes festlegen, und dann über Include URLs und einen Klick auf das Plus-Symbol ein Verzeichnis hinzufügen. Über einen Klick auf Append schalten Sie sämtliche Index-Arten frei und wählen dann die Option Overwrite All. Ist der erste Index einmal generiert, wechseln Sie die Option auf Update oder Sync, damit das Programm nur noch die Änderungen verfolgt.

In der unteren Fensterhälfte wählen Sie aus, welche Daten Kio-Clucene in den Index aufnehmen soll. Hier stellen Sie über einen Klick auf setup auch den Standard-Converter ein. Das Programm befindet sich noch in einer frühen Entwicklungsphase. Darunter leidet auch die Benutzerfreundlichkeit sehr. So ist das Hinzufügen weiterer Converter sehr umständlich. Auch eine Online-Hilfe oder Legende für die einzelnen Optionen fehlt. Nach Klicks auf Save changes und Start indexing, beginnt die Clucene-Suchmaschine ihre Arbeit. Auf dem Testrechner benötigte der Clucene-Kio-Slave gut zwei Minuten, um die Testdokumente zu erfassen.

((4)) Die Einrichtung von Kio-Clucene ist noch nicht ganz ausgereift und überfordert selbst fortgeschrittene Benutzer.

Schnell suchen

Für die Suche mit Beagle stehen Ihnen zwei grafische Programme zur Verfügung. Das Original heißt Best. Nach dem Start über [Alt]+[F2] und der Eingabe des Befehls best finden Sie im Systemabschnitt der KDE-Kontrollleiste ein neues Symbol (Beagle-Hund mit rotem B-Buchstaben). Klicken Sie auf dieses Symbol, öffnet sich das Suchfenster. Hier geben Sie den gewünschten Begriff ein und klicken auf Find. In der Grundeinstellung sucht Best in Dateien, im Adressbuch und in E-Mails von Evolution, in Chats von Gaim und in den Programmnamen der Gnome-Applikationen. Möchten Sie Ihre Suche auf einen gewissen Typ beschränken, klicken Sie auf die Liste In Dateien, und wählen dann den passenden Eintrag aus. Ein Beispiel für eine einfache Suche zeigt Abbildung ((5)).

((5)) Die grafische Oberfläche zum Beagle-Deamon heißt Best. Das Programm zeigt von Bildern automatisch Vorschauen an.

Alternativ zum Gnome-Programm öffnen Sie in Konqueror den URI beagle:/ (Abbildung ((6))). Dazu muss allerdings der Beagle-Kio-Slave installiert sein, der standardmäßig nur bei Suse Linux 10.0 mit an Bord ist. Eine weitere Alternative stellt bei der neuesten Beagle-Version das Web-Frontend dar. Dazu geben Sie in einem beliebigen Browser die Adresse http://localhost:8888/beagle/search.aspx ein. Ein Beispiel zeigt Abbildung ((7)).

((6)) Mit Hilfe des Beagle-Kio-Slaves greife Sie bequem über Konqueror auf die Index-Dateien des Beagle-Daemons zu.

((7)) Das Web-Frontend ist neu in Version 0.1.1 von Beagle. Es ist auch von einem entfernten Rechner aus erreichbar.

Für die Suche mit Kat geben Sie den Befehl kat ein und klicken dann auf das Symbol für die Suche. Kat zeigt die gefundenen Dateien wahlweise als Liste oder mit Vorschaugrafiken an. Ein Rechtsklick auf einen Treffer öffnet ein Kontext-Menü mit weiterführenden Möglichkeiten. Beim Clucene-Kio-Slave starten Sie über [Alt]+[F2] und die Eingabe von clucene:/Suchbegriff eine Suche. Das Programm zeigt die Treffer anschließend in Konqueror an (Abbildung ((8))). Über einen Klick auf KCLucene Home gelangen Sie zum Hauptmenü zurück. Hier können Sie Suchen per Drag & Drop auf den Ordner Saved Queries speichern. Dies ist ein großer Pluspunkt von Kio-Clucene gegenüber den anderen Suchmaschinen. Eine Suchanfrage dauert bei sämtlichen Programmen höchstens zwei bis drei Sekunden.

((8)) KCLucene zeigt Treffer direkt in Konqueror an. Über einen Klick auf das KCLucene Home-Icon können Sie Suchanfragen speichern.

Alltagstauglich?

Beagle behauptet von sich, dass sich die grafische Oberfläche noch im Beta-Stadium befände. Kio-Clucene ist sogar noch Alpha-Software. Kat schweigt sich über die Stabilität des Programms aus. Was stimmt nun? Ganz klar noch nicht für die Praxis geeignet ist der Kio-Slave für die Clucene-Engine. Ohne zusätzliche Tools und Einstellungen indiziert das Programm lediglich Textdateien. Darüber hinaus ist die Einrichtung ziemlich umständlich. Kio-Clucene bringt aber gute Ansätze mit, wie das Speichern von Anfragen als virtuellem Ordner und die Integration in Konqueror. Die Zusammenarbeit mit den Entwicklern von Kat und Kio-Beagle lässt hoffen. Zur Zukunft der Suchmaschinen von KDE lesen Sie den Kasten "Einer für alle".

Einer für alle

Linux ist bekannt dafür, dass für eine Aufgabe verschiedene Lösungen existieren. Leider sind diese Lösungen nicht immer perfekt. Auch die KDE-Suchmaschinen Kat, Kio-clucene und Kio-beagle bringen jeweils Vor- und Nachteile mit. Das Projekt KQUEST soll nun die Vorteile der drei Lösungen vereint und eine einheitliche Lösung für alle drei Ansätze schaffen. Details zum Projekt finden Sie auf der Homepage des Kio-Clucene-Projekts [3]. Kat soll zudem in KDE4 zentraler Bestandteil des KDE Desktops werden und über die nötige Konqueror-Integration verfügen.

Beagle und Kat sind bereits desktop-ready. Keines der Programme stürzte in den Tests ab und die Suchergebnisse waren durchaus zufriedenstellend. Beagle hat allerdings einen deutlichen Vorsprung gegenüber Kat. So bringt es nicht nur das übersichtlichere Interface mit und muss kaum konfiguriert werden, sondern liefert auch deutlich mehr Treffer. Zum Beispiel wertet Beagle bei OpenOffice-Dokumenten auch Metainformationen wie Autor und Kommentar aus, nicht nur den Datei-Inhalt. Auch bei Wörtern mit Sonderzeichen hat der Hund die Nase vorn. Hier findet Kat unter Mandriva 2006 nur Begriffe im Zeichensatz ISO-8859-15. Beagle unter Suse Linux 10.0 sucht hingegen das volle Unicode-Spektrum ab und findet -- zumindest in PDF-Dateien -- zum Beispiel auch Kyrillische Texte. Notizen in Office- oder PDF-Dokumenten findet keine der Suchmaschinen.

Ein Nebeneffekt, der nur auftritt, wenn Sie Kat und Beagle parallel benutzen: Kat durchsucht auch die Index-Dateien von Beagle. Das KDE-Tool listet deshalb viele Treffer unnötig doppelt auf. Beagle scheinen die SQLite-Datenbanken von Kat hingegen keine Sorgen zu bereiten. Unter Suse Linux fiel bei Kat weiter negativ auf, dass sich das Programm an den KDE-Daemon kded koppelt. Da dieser unter Suse auch für den URI media:/ verantwortlich ist, lässt er sich nicht so einfach abstellen. Das Kätzchen-Icon von Kat im Systemabschnitt des KDE-Panels lässt sich deshalb nicht entfernen, ohne das Kat-RPM zu löschen. (mhi)

Infos

[1] Beagle: http://beagle-project.org
[2] Kat: http://kat.mandriva.com
[3] Kio-Clucene: http://kioclucene.objectis.net
[4] Beagle-RPM: ftp://ftp.gwdg.de/pub/linux/usr-local-bin/10.0/i586
[5] Clucene: http://clucene.sourceforge.net

Ähnliche Artikel

  • Desktop-Suche mit Beagle, Kat und Kio-Clucene
    Traditionelle Verzeichnisse als Ordnungshilfe haben ausgedient. Suchmaschinen prägen in Zukunft unsere Arbeit am Computer. Dieser Artikel stellt drei Programme vor, die sich unter Linux um den ersten Platz streiten.
  • Recherche-Künstler
    Mit der wachsenden Datenflut auf dem PC steigt der Bedarf, die Informationen in den Griff zu bekommen. Die Desktop-Suchmaschinen Beagle, Tracker und Strigi helfen dabei.
  • Suchspiel
    Im Laufe der Zeit wachsen die Datenmengen auf dem Rechner in beinahe unüberschaubare Dimensionen. Desktop-Suchprogramme helfen Ihnen, den Überblick zu behalten.
  • Desktop-Suchmaschine Beagle
    Im Internet sucht Google. Auf dem heimischen PC schnüffelt ein kleiner Beagle nach versteckten Informationen.
  • Such!
    Desktop-Suchmaschinen sollen Dateien und Inhalte auf dem Rechner komfortabel und schneller finden. Wir testen die Kontrahenten Beagle, Strigi und Tracker.

Kommentare

Aktuelle Fragen

Artikelsuche
Erwin Ruitenberg, 09.10.2014 07:51, 1 Antworten
Ich habe seit einige Jahre ein Dugisub LinuxUser. Dann weiß ich das irgendwann ein bestimmtes Art...
Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 6 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...