Shivakar Vulli

Archive for the ‘OpenSource’ Category

Using Beagle to Speed Up Desktop Searches on Linux

leave a comment

About Beagle

Beagle is a desktop-indepedent search service for Linux that lets you search your user files. It has the capability to search and index all files including images, music, videos, documents (pdf, odt, odp, etc.), emails, web history, IM conversations, addressbook, calendar, source code, archives and much more. It is a complete desktop search service perfect for anyone using Linux.

Beagle indexes user data in real time with indexing done at the time of file creation, re-indexing on modification and purged from index on deletion. E-mail is indexed up on arrival and IM conversations are indexed in real time. Beagle searches not only the text contained in the document, but also all metadata such as ID3 Tags for music, header information from emails, etc.

I use GNOME on a Fedora 11 machine, therefore I will detail the procedure to get beagle search up and running in the same. The procedure would be all that different with a different desktop or Linux distribution.

Installing Beagle

On Fedora you can install Beagle using

yum install beagle

Using Beagle

Once the installation is completed, start Places > Search and select Search > Preferences. Select the options you need but do check the option for Start search & indexing services automatically in the Searching tab. In the Indexing tab, add any paths that you want to be indexed, and any application data sources (like Thunderbird and Pidgin) that you want beagle to index in the Data sources tab. I have not used indexing remote search-enabled hosts feature, but you can check it out in Network options. You can also enable a web-interface and allow external access to local search services in the same tab.

To check the installation, open a terminal and issue the following command

beagled --fg --debug

This should display the settings of beagled. You can kill the service by pressing Ctrl-C.

When you login the next time, beagle will be running and indexing your existing files and should index any new file created. However, if you want to speed things up and index all the existing files before you start using your system again, beagle has a solution.

You need to export the following variable to set accelerated indexing. Keep in mind this is going to use as much as your CPU as needed and will take time some time depending on the number of files you have in your included search directories.

 export BEAGLE_EXCERCISE_THE_DOG=1

Now run the following command to start beagle in the accelerated indexing mode.

beagled --indexing-test-mode

This will set beagled to exit after indexing all the files in the current search directories. Once this is done you can logout and log back in to start using beagle for your searches.

At any time if you want to check the current status of beagled, issue the following command

beagled-status

And to shut down beagled you can either do it from Service Options in the search window or by issuing the beagle-shutdown from a terminal.

For more information on beagle, visit the project homepage.

Written by Shivakar

October 30th, 2009

Posted in Fedora, Linux, OpenSource

Tagged with , , ,