След Пред Содержание

## 6. Программы и размещение установленного ПО Harvest

## 6.1 $HARVEST_HOME

Верхний каталог, в который вы установили Harvest, обозначим $HARVEST_HOME. По умолчанию $HARVEST_HOME -- это /usr/local/harvest. В $HARVEST_HOME находятся следующие файлы и каталоги:

> `

>             RunHarvest*         brokers/            gatherers/          tmp/
>             bin/                cgi-bin/            lib/

> `

`RunHarvest` -- это скрипт, используемый для создания и запуска серверов Harvest (см. раздел Запуск системы: команда RunHarvest и связанные с ней команды. `RunHarvest` имеет такой же синтаксис командной строки, что и `Harvest`.

## 6.2 $HARVEST_HOME/bin

Каталог $HARVEST_HOME/bin содержит только те программы, которые пользователи обычно могут сразу запустить. Все другие программы (например, отдельные summarizer'ы для Gatherer'а) так же, как и библиотечный код Perl находятмя в каталоге lib. Каталог bin содержит следующие программы:

`CreateBroker`

  Создает брокер.

  Использование: `CreateBroker [skeleton-tree [destination]]`

`Gatherer`

  Главный пользовательский интерфейс Gatherer'а. Эта программа запускается скриптом `RunGatherer`, который находится в каталоге Gatherer'а.

  Использование: `Gatherer [-manual|-export|-debug] file.cf`

`Harvest`

  Эта программа используется `RunHarvest` для создания и запуска серверов Harvest согласно описанию пользователя.

  Использование: `Harvest [flags]`

  Где флаги (flags) могут быть следующие:

  > `

  >             -novice         Простейшая форма вопрос-ответ. В основном использует установки по умолчанию.
  >             -glimpse        Использовать Glimpse для брокера. (по умолчанию)
  >             -swish          Использовать Swish для брокера.
  >             -wais           Использовать WAIS для брокера.
  >             -dumbtty        Немой режим TTY.
  >             -debug          Режим отладки.
  >             -dont-run       Не запускать брокер и Gatherer.
  >             -fake           Не строить сервера Harvest.
  >             -protect        Не менять umask.

  > `

`broker`

  Программа Broker. Эта программа запускается скриптом `RunBroker`, который находится в каталоге брокера. Записывает лог-сообщения как в broker.out, так и в admin/LOG.

  Использование: `broker [broker.conf file] [-nocol]`

`gather`

  Клиентский интерфейс Gatherer'а.

  Использование: `gather [-info] [-nocompress] host port [timestamp]`

## 6.3 $HARVEST_HOME/brokers

Каталог $HARVEST_HOME/brokers содержит картинки и логотипы в каталоге images, некоторые основные учебные HTML страницы и файлы-скелеты, которые использует `CreateBroker` для построения новых брокеров. Вы можете изменить значения по умолчанию в этих создаваемых брокерах, отредактировав файлы в skeleton.

## 6.4 $HARVEST_HOME/cgi-bin

Каталог $HARVEST_HOME/cgi-bin содержит программы, необходимые для WWW интерфейса брокера (описанного в разделе Программы CGI) и конфигурационные файлы для `search.cgi` в каталоге lib.

## 6.5 $HARVEST_HOME/gatherers

Каталог $HARVEST_HOME/gatherers содержит примеры Gatherer, обсуждаемые в разделе Примеры Gatherer'ов. `RunHarvest` по умолчанию создаст новый Gatherer в этом каталоге.

## 6.6 $HARVEST_HOME/lib

Каталог $HARVEST_HOME/lib содержит много функций библиотеки Perl и другие программы, необходимые различным частям Harvest'а, например, следующие:

chat2.pl, ftp.pl, socket.ph

  Библиотеки Perl, используемые для соединения с удаленными серверами FTP.

dateconv.pl, lsparse.pl, timelocal.pl

  Библиотеки Perl, используемые для разбора выхода `ls`.

`ftpget`

  Программа, используемая для получения файлов и каталогов с серверов FTP.

  Использование: `ftpget [-htmlify] localfile hostname filename A,I username password`

`gopherget.pl`

  Программа Perl для получения файлов и меню с серверов Gopher.

  Использование: `gopherget.pl localfile hostname port command`

`harvest-check.pl`

  Программа Perl для проверки, запущены ли брокеры и gatherer'ы.

  Использование: `harvest-check.pl [-v]`

`md5`

  Программа для вычисления контрольных сумм MD5.

  Использование: `md5 file [...]`

`newsget.pl`

  Программа Perl для получения статей и резюме групп USENET с серверов NNTP.

  Использование: `newsget.pl localfile news-URL`

soif.pl, soif-mem-efficient.pl

  Библиотека Perl для обработки SOIF.

`urlget`

  Программа для извлечения данных с URL.

  Использование: `urlget URL`

`urlpurge`

  Программа чистки локального URL кэша, используемая `urlget` и Gatherer'ом.

  Использование: `urlpurge`

## 6.7 $HARVEST_HOME/lib/broker

Каталог $HARVEST_HOME/lib/broker содержит поисковые и индексные программы, необходимые брокеру, а также несколько утилит для администрирования брокера:

`BrokerRestart`

  Эта программа выполнит команду перезапуска брокера.

  Использование: `BrokerRestart [-password passwd] host port`

`brkclient`

  Клиентский интерфейс брокера. Может быть использован для отправления запросов или административных команд брокеру.

  Использование: `brkclient hostname port command-string`

`dumpregistry`

  Печатает файл-реестр брокера в удобном для чтения формате.

  Использование: `dumpregistry [-count] [BrokerDirectory]`

`agrep, glimpse, glimpseindex, glimpseserver`

  Система индекса и поиска Glimpse, описанная в разделе Broker.

`swish`

  Программа индекса и поиска Swish как альтернатива Glimpse.

`info-to-html.pl, mkbrokerstats.pl`

  Программы Perl для генерирования статистики брокера и создания stats.html.

  Использование: `gather -info host port | info-to-html.pl > host.port.html`

  Использование: `mkbrokerstats.pl broker-dir > stats.html`

## 6.8 $HARVEST_HOME/lib/gatherer

Каталог $HARVEST_HOME/lib/gatherer содержит summarizer'ы, описанные в разделе Получение данных для индексации: подсистема суммирования Essence, а также различные утилиты, необходимые summarizer'ам и Gatherer'у, как например:

URL-filter-default

  Фильтр URL по умолчанию, описанный в разделе Описание RootNode.

bycontent.cf, byname.cf, byurl.cf, magic, stoplist.cf, quick-sum.cf

  Конфигурационные файлы Essence, описанные в разделе Настройка шагов распознавания типов, выбора кандидатов, извлечения прдставлений и суммирования.

`*.sum`

  Summarizer'ы Essence, описанные в разделе Получение данных для индексации: подсистема суммирования Essence.

`HTML-sum.pl`

  Альтернативные HTML summarizer'ы, написанные на Perl.

`HTMLurls`

  Программы для извлечения URL'ов из файлов HTML.

  Использование: `HTMLurls [--base-url url] filename`

`catdoc, xls2csv,` catdoc-lib

  Программы и файлы, используемые summarizer'ом Microsoft Word.

`dvi2tty, print-c-comments, ps2txt, ps2txt-2.1, pstext, skim`

  Программы, используемы разными summarizer'ами.

`gifinfo`

  Программа для поддержки summarizer'ов.

`l2h`

  Программа, используемая summarizer'ом TeX.

`rast, smgls, sgmlsasp,` sgmls-lib

  Программы и файлы для SGML summarizer'а.

`rtf2html`

  Программа для RTF summarizer'а.

`wp2x, wp2x.sh,` wp2x-lib

  Программы и файлы для WordPerfect summarizer'а.

`hexbin, unshar, uudecode`

  Программы для извлечения упакованных объектов.

`cksoif`

  Программы для проверки точности потока SOIF (например, чтобы убедиться, что нет ошибок разбора).

  Использование: `cksoif < INPUT.soif`

`cleandb, consoldb, expiredb, folddb, mergedb, mkgathererstats.pl, mkindex, rmbinary`

  Программы для подготовки базы данных Gatherer'а для экспорта при помощи `gatherd`.

  `cleandb` удостоверяется в том, что все объекты SOIF не содержат ошибок, и удалaет все объекты с ошибками;

  `consoldb` объединяет n файлов баз данных GDBM в один файл;

  `expiredb` удаляет все объекты SOIF, которые устарели согласно атрибту Time-to-Live (время жизни);

  `folddb` проделывает все необходимые операции, необходимые для подготовки базы данных Gatherer'а к экспорту при помощи `gatherd`;

  `mergedb` объединяет файлы GDBM, как описано в разделе Включение в Gatherer информации, сгенерированной вручную;

  `mkgathererstats.pl` генерирует файл статистики INFO.soif

  `mkindex` генерирует кэш временных меток;

  `rmbinary` удаляет двоичные данные из базы данных GDBM.

`enum, prepurls, staturl`

  Программы, используемые `Gatherer'ом` для нумерации RootNode и LeafNode, как описано в разделе Описание RootNode.

  `enum` выполняет нумерацию RootNode данных URL'ов;

  `prepurls` -- программа-упаковщик для взаимодействия `Gatherer'а` и `essence`;

  `staturl` получает LeafNode URL и определяет изменился URL или нет.

`fileenum, ftpenum, ftpenum.pl, gopherenum-*, httpenum-*, newsenum`

  Программы, используемые `enum`, чтобы выполнять нумерацию в зависимости от протокола.

  `fileenum` выполняет нумерацию RootNode для URL'ов типа ``file'';

  `ftpenum` вызывает `ftpenum.pl` для выполнения нумерации RootNode URL'ов по ``ftp'';

  `gopherenum-breadth` выполняет широкую нумерацию RootNode для URL'ов типа ``gopher'';

  `gopherenum-depth` выполняет глубокую нумерацию RootNode для URL'ов типа ``gopher'';

  `httpenum-breadth` выполняет широкую нумерацию RootNode для URL'ов типа ``http'';

  `httpenum-depth` выполняет глубокую нумерацию RootNode для URL'ов типа ``http'';

  `newsenum` выполняет нумерацию RootNode для ``news'' URL'ов;

`essence`

  Система извлечения содержимого Essence, описанная в разделе Настройка шагов распознавания типов, выбора кандидатов, извлечения прдставлений и суммирования.

  Использование: `essence [options] -f input-URLs` или `essence [options] URL ...`

  где опции (options):

  > `

  >             --dbdir directory       Каталог для размещения базы данных
  >             --full-text             Использовать весь файл вместо суммирования
  >             --gatherer-host         Хост Gatherer'а
  >             --gatherer-name         Имя Gatherer'а
  >             --gatherer-version      Версия Gatherer'а
  >             --help                  Выдает информацию об использовании
  >             --libdir directory      Каталог для размещения конфигурационных файлов
  >             --log logfile           Имя файла для лог-сообщений
  >             --max-deletions n       Число удалений GDBM перед реорганизацией
  >             --minimal-bookkeeping   Генерирует минимальное число атрибутов учета ресурсов
  >             --no-access             Не читать содержимое объектов
  >             --no-keywords           Не генерировать автоматически ключевые слова
  >             --allowlist filename    Файл со списком допустимых типов
  >             --stoplist filename     Файл со списком типов, которые нужно удалять
  >             --tmpdir directory      Имя каталога для временных файлов
  >             --type-only             Только выдавать данные, не суммировать объекты
  >             --verbose               Более полный вывод
  >             --version               Информация о версии

  > `

`print-attr`

  Читает поток SOIF из stdin и печатает данные, связанные с данным атрибутом, на stdout.

  Использование: `cat SOIF-file | print-attr Attribute`

`gatherd, in.gatherd`

  Демоны, которые экспортируют базу данных Gatherer'а. `in.gatherd` используется для запуска этого демона из inetd.

  Использование: `gatherd [-db | -index | -log | -zip | -cf file] [-dir dir] port`

  Использование: `in.gatherd [-db | -index | -log | -zip | -cf file] [-dir dir]`

`gdbmutil`

  Программа для выполнения различных действий над базой данных GDBM.

  > `

  >     Использование: gdbmutil consolidate [-d | -D] master-file file [file ...]
  >     Использование: gdbmutil delete file key
  >     Использование: gdbmutil dump file
  >     Использование: gdbmutil fetch file key
  >     Использование: gdbmutil keys file
  >     Использование: gdbmutil print [-gatherd] file
  >     Использование: gdbmutil reorganize file
  >     Использование: gdbmutil restore file
  >     Использование: gdbmutil sort file
  >     Использование: gdbmutil stats file
  >     Использование: gdbmutil store file key < data

  > `

`mktemplate`

  Программа для генерирования правильных SOIF на основе более простого редактируемого формата, подобногоSOIF (например, SOIF без подсчета байтов).

  Использование: `mktemplate < INPUT.txt > OUTPUT.soif`

`quick-sum`

  Простоая программа Perl для эмулирования обработки quick-sum.cf Essence для тех, кто не может откомпилировать Essence с соответствующим кодом на C.

`template2db`

  Конвертирует поток объетов SOIF (из stdin или данных файлов) в базу данных GDBM.

  Использование: `template2db database [tmpl tmpl...]`

`wrapit`

  Преобразует данные из stdin в пары SOIF атрибут-значение с подсчетом байт. Используется summarizer'ами Essence и легко гнерирует SOIf.

  Использование: `wrapit [Attribute]`

`kill-gatherd`

  Скрипт для убивания процесса gatherd.

## 6.9 $HARVEST_HOME/tmp

Каталог $HARVEST_HOME/tmp используется search.cgi для хранения страниц результатов поиска.

След Пред Содержание