読者です 読者をやめる 読者になる 読者になる

Ubuntu 8.04にHyper Estraierをインストールしてみたのでメモ

Ubuntu 10.04対応の記事はこちら
Hyper Estraier全文検索システム。今回は~/Documents以下を全文検索できるようにしてみる。まず、

sudo apt-get install hyperestraier

GNOMEターミナルで実行してインストール。Word・ExcelPowerPointのファイルも対象としたい場合は、

sudo apt-get install wv xlhtml ppthtml

と実行すればいいらしい。インストールが終了したら、

sudo leafpad /etc/default/hyperestraier

と実行してHyper Estraierの設定ファイルを開き、NO_START=1NO_START=0に変更して保存。これでブート時に自動的に起動するようになる。手動での起動は、

sudo /etc/init.d/hyperestraier start

と実行すればOK。http://localhost:1978/にアクセスするとブラウザで色々設定できるらしい(よく分からんので未確認。初期ユーザ名とパスワードはadmin)。

Hyper Estraierを実行するにはWebサーバが必要なのでlighttpdをインストールする。

sudo apt-get install lighttpd lighttpd-doc

でインストールは完了、http://localhost/にアクセスできればOK。cgiを利用するには、

sudo lighty-enable-mod cgi

とコマンドを実行して設定を変更しておく必要があるらしい。他にも設定の変更が必要なので、

sudo leafpad /etc/lighttpd/lighttpd.conf

と実行してlighttpdの設定ファイルを開き、最下部に

cgi.assign += (
    ".pl"  => "/usr/bin/perl",
    ".cgi" => "/usr/bin/perl",
    ".php" => "/usr/bin/php-cgi",
    ".py"  => "/usr/bin/python",
    ".rb" => "/usr/bin/ruby",
    ".bin" => ""
)

を追加しておく。

Hyper Estraierlighttpdで動かすためには、いくつかのファイルを別の場所にコピーする必要があるので、まず

sudo mkdir /var/www/search
sudo ln -s /home/ユーザ名/Documents/ /var/www/

と実行してフォルダとシンボリックリンクを作っておき、

sudo cp /usr/lib/estraier/estseek.cgi /var/www/search/estseek.bin

とコマンドを打ってestseek.cgiをestseek.binに名前を変えてコピーする(そのままだと設定を変更しないと動かない)。さらに、

sudo cp /usr/share/hyperestraier/locale/ja/estseek.* /var/www/search/

とコマンドを打ってestseek.conf、estseek.help、estseek.tmpl、estseek.topの4つのファイルをコピーする。

sudo leafpad /var/www/search/estseek.conf

と実行して設定ファイルを開き、indexnamereplaceを変更する。

indexname: /home/ユーザ名/.software/search/casket
省略
replace: ^file:///home/ユーザ名/Documents/{{!}}http://localhost/Documents/
省略
mkdir -p /home/ユーザ名/.software/search

と実行してインデックスを置くフォルダを作成し、

cd /home/ユーザ名/.software/search

でそのフォルダに移動、

estcmd gather -il ja -pc UTF-8 -sd casket /home/ユーザ名/Documents/

と実行することでDocuments以下のファイルがインデックスに追加される。オプションに-pc UTF-8を付けないと日本語ファイル名が文字化けする。あとは、

sudo /etc/init.d/lighttpd restart
sudo /etc/init.d/hyperestraier restart

と実行してサービスを再起動し、ウェブブラウザでhttp://localhost/search/estseek.binにアクセスすれば検索ページが表示される。

※Webサーバとか立てたこと無いヘボユーザがこういう事するとすごく疲れる。

※Beagleなどのデスクトップ検索ツールと違い、全ユーザが利用できる。制限とかどーやったらいいのかよく分からん。

※テキストファイルやHTMLファイルの文字コードShift_JISでもOK。

※/var/www/以下にDocumentsへのシンボリックリンクを作っておくと、httpでDocuments以下のファイルにアクセスできる。他にもやり方は色々あるだろうが、どうせ自分しか使わないしコレでいいや。

参考:UbuntuにHyperEstraierをインストール
参考:ぷちWiki - Hyper Estraier
参考:Apacheの代わりにLighttpdを入れる