Библиотека сайта rus-linux.net
Google Desktop Search - новый взгляд на поиск в Linux
Оригинал: Google Desktop Search - Redefining search for Linux
Автор: Ravi Kumars
Дата: 24 июля 2007
Перевод А.Тарасова, дата перевода: 26 июля 2007
Буквально пару лет назад поиск документов на компьютере был ограничен поиском файлов, основанном на определенном критерии, например имя файла, дата создания и т.п. В таких условиях было трудно найти файл, если пользователь не помнил его имя. Приходилось искать несколько раз, угадывая имя файла, либо копаться по всему дереву каталогов. Причем такая ситуация была характерной для всех операционных систем.
В последние два года локальный поиск претерпел значительные изменения и превратился в эффективный инструмент поиска точно того, что нужно. Источник этой эффективности заключается в переходе от обычных исполняемых файлов к службам, которые активно индексируют в реальном времени все изменения в файловой системе. Так стало возможным искать и находить текстовый документ, к примеру, по фразе из текста. Это позволило эффективно искать почту, файлы, музыку, фотографии и много другое на компьютере пользователя так, как будто поиск ведется в интернете.
Mac OSX, установленная на компьютеры Apple, содержит поисковую систему 'Spotlight', для Microsoft Windows также существуют инструменты поиска, например, предоставленные Yahoo и Google. К сожалению, до недавнего времени Linux не имел таких мощных поисковых программ, как в Windows и OSX. Конечно, у нас есть Beagle - инструмент от Novell, который эффективно работает. Но он не интегрируется в окружение, как хотелось бы, и он зависит от Mono, который во многих дистрибутивах Linux по умолчанию не установлен.
В последнее время ситуация для линуксоидов улучшилась, так как Google выпустила свою программу Desktop Search специально для Linux. По моему мнению, локальный поиск - очень важная вещь в любой операционной системе, поэтому я решил скачать Desktop Search Tool для Linux и попробовать его в действии.
Зависимостей у Google Desktop для Linux не так много: у вас всего лишь должны быть установлены библиотеки glibc 2.3.2+
и gtk+ 2.2.0+
. Они у вас наверняка имеются, если вы используете новый дистрибутив, выпущенный по крайней мере в последние два года. Я использую Debian Etch, в котором перечисленные библиотеки установлены по умолчанию, поэтому я не встретил препятствий при установке Google Desktop. Google выпустил свой инструмент поиска в двух форматах пакетов: RPM и Deb. Для их установки вам нужно ввести соответствующие команды:
# rpm -ivh google-desktop-linux-1.0.1.0060.rpmдля дистрибутивов, основанных на Red Hat и
# dpkg -i google-desktop-linux-1.0.1.0060.debдля дистрибутивов, использующих Debian-систему управления пакетами, например, Ubuntu.
При установке файлы копируются в каталог /opt
, и создается ярлык в меню Gnome или KDE. При первом запуске Google Desktop пользователя благоразумно спрашивают, нужно ли включать продвинутые функции, которые отсылают некоторые данные разработчикам Google Desktop. В отсылаемую информацию входит статистика по количеству локальных запросов, время, затрачиваемое на выполнение запросов и отчеты об ошибках и падениях Google Desktop. Все это производится в целях улучшения программы.
Использование Google Desktop Search
Установка прошла успешно, пришло время испробовать функции локального Google. При запуске Google Desktop Search он минимизируется в панель задач, вызвать меню можно щелчком правой кнопки мыши.
Рисунок 1: Google Desktop Search встраивается в панель задач Gnome
Первое, что я сделал - изменил настройки для поиска. Для доступа к настройкам щелкните правой кнопкой мыши на значке и выберите "Preferences...", перед вами в окне браузера появится список настраиваемых параметров, в том числе правила индексирования. К примеру, я могу указать не индексировать определенные каталоги, не индексировать определенные типы файлов, такие как веб-история, почта и т.д. и даже убрать упоминания об удаленных файлах из результатов поиска. После настройки на ваш вкус нажмите "save preferences" для сохранения внесенных изменений.
Рисунок 2: Окно настроек открывается в веб-браузере
(щелкните по картинке, чтобы увеличить)
Индексирование файлов на жестком диске - интенсивный процесс, казалось бы он должен мешать работе пользователя, но в этом вопросе Google Desktop достаточно аккуратен. Индексация происходит лишь когда ваша система ненагружена. А когда пользователь начинает пользоваться компьютером, создание индекса останавливается. Благодаря этому пользователь наверняка не почувствует неудобства с Google Desktop. Еще одна функция, которую я хотел бы отметить - клавиатурная комбинация для быстрого поиска. Просто быстро дважды нажмите клавишу 'Ctrl', и всплывет окно быстрого поиска, где вы сможете ввести искомую фразу. При этом сразу выпадет меню с результатами поиска. После выбора нужного файла из предложенного списка окно поиска исчезает.
Рисунок 3: Окно быстрого поиска Google Desktop
Функции Google Desktop Search для Linux
- Индексирует разнообразные файлы, включая PDF, PostScript, страницы info и man, текстовые файлы, электронная почта, аудио и видео файлы, веб-история и даже защищенные страницы (HTTPS) в веб-истории.
- Использует мало системных ресурсов, индексация включается лишь при простоях.
- Быстрый доступ к поиску посредством двойного нажатия Ctrl
- Файлы открываются в соответствующих приложениях. Например, man-страницы открываются в Gnome Yelp (программа просмотра документации), текстовые файлы - в редакторе, установленном по умолчанию, веб-страницы в веб-браузере и т.д.
- Заложены основы системы версий файлов - Google Desktop кэширует копии (снимки) файлов и других объектов каждый раз при их изменении, и сохраняет копии на диске. В итоге у вас появляется возможность искать информацию даже среди удаленных файлов!
- Легко интегрируется с рабочим окружением
Другие детали...
Хотя Google Desktop для Linux зависит от различных открытых библиотек, сама программа является закрытой, так как Google еще не опубликовывал ее исходные тексты. Полагаю, у Google есть веские причины этого решения.В любом случае, Google Desktop для Linux - полезный инструмент, улучшающий производительность труда пользователя за счет эффективного поиска данных.