Xapian Omega is amazing. And it runs on most operating systems.
From the website:
Xapian is a highly adaptable toolkit
which allows developers to easily add
advanced indexing and search
facilities to their own applications.
It supports the Probabilistic
Information Retrieval model and also
supports a rich set of boolean query
operators.
Then combine this with Omega, again a quote from their site
Omega operates on a set of databases.
Each database is created and updated
separately using either omindex or
scriptindex. You can search these
databases (or any other Xapian
database with suitable contents) via a
web front-end provided by omega, a CGI
application. A search can also be done
over more than one database at once.
It is easy to install and get working and is very fast even on large collections of files.
We use it to index a website upload directory and samba shares of ~350GB.