Fess は、日本のエヌツーエスエムという会社が作成し、オープンソースとして提供している簡単に構築可能な全文検索サーバーです。Java 実行環境があればどの OS でも実行可能なので、Linux だけでなく、Windows でも MAC でも利用することができます。
Webページ、ファイルシステム、Windows共有フォルダ、データベースを監視対象する事ができ、クローラが定期的にインデックスを自動で作ってくれます。
今回は、サーバのローカルファイルを検索対象とします。ローカルファイルを参照する為には、サーバのGUI上でブラウザを起動する必要があるのでGUI設定がなされているものとします。
Java のバージョンは、8 以上が推奨されているので、openjdk-8-jre を以下のコマンドでインストールします。
$ sudo apt-get -y install openjdk-8-jre
Fess のダウンロードは以下より行います。執筆時の最新バージョンは、10.1.2 でしたが適宜変更しダウンロードして下さい。
http://fess.codelibs.org/ja/downloads.html
$ wget https://github.com/codelibs/fess/releases/download/fess-10.1.2/fess-10.1.2.zip
unzip コマンドが無い場合は、unzip コマンドをインストールして、fess-10.1.2.zip を解凍します。
$ sudo apt-get -y install unzip $ unzip fess-10.1.2.zip
Fess は、でのディレクトリに置いても実行できますが、今回は、/opt/ 配下に配置します。
$ sudo mv fess-10.1.2 /opt/fess/ $ /opt/fess/bin/fess
以下の URL にアクセスすると Fess の画面が表示されます。http://localhost:8080/
右上のログインボタンを押して、初期パスワード id : admin password : admin でログインします。
「クローラ」->「ファイルシステム」の「新規作成」をクリックして
名前: 任意
パス : file:/検索するパス
を入力します。
クローラは定期的に実行されますが、「システム」->「スケジューラ」->「Default Crawler」をクリックして「今すぐ開始」を実行するとインデックスが作成されます。「検索」を行うと、検出結果が出力されます。
なお、最近セキュリティ強化の影響で file:/ のリンクをクリックしてもローカルファイルを参照出来なくなりました。Chrome の場合リンクにフォーカスをあってて URL をコピー、他のタブで参照して下さい。
Firefox の場合
./firefox/xxxxxxx.default/prefs.js に以下を追加することにより file:/ のリンクをクリックで開けるようになります。
user_pref("capability.policy.localfilelinks.checkloaduri.enabled", "allAccess"); user_pref("capability.policy.localfilelinks.sites", "http://localhost:8080"); user_pref("capability.policy.policynames", "localfilelinks");