トップ «前の日記(2011-06-09(Thu)) 最新 次の日記(2011-06-13(Mon))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2011-06-10(Fri) 曇ってきてるようだ

メール全文検索

Mew には Hyper Estraier への対応機能があるが、なんか環境によって インデックス作成がコケたりする(現在調査中)。
それに何もかもEmacsというわけでもないので さしあたりメールはWebから検索することにする。
この日記同様、Hyper Estraier にする。

インデックスは estcmd gather -cl -fm -cm -sd -xh インデックス メールフォルダ
最初の一回目は4時間くらいかかったが、二回目以降は15分くらい。
estcmd search -vh インデックス 検索語
で動作確認。
cron にインデックスを定期更新させることにする。
今回はcrontabをユーザに設定させないで /etc/crontab に追記。

$MIN $HOUR  * * *    $USER  estcmd gather(以下略

一旦、設定中から遠くない時刻に設定して、sudo /etc/init.d/cron restart。
「特徴的なキーワード」を含んだメールを一通投げ、Mew で受信。 top で眺めていると、やがて estcmd が上下する様子が見えた。
さっきのメールが検索にヒットすることを確認し、cron の実行時刻 を深夜に書き換える。

CGIスクリプトは、dpkg -L hyperestraier で探して、公開するディレクトリに コピーする。

$ ls public_html/$CGI/ -1
estseek.cgi
estseek.conf
estseek.help
estseek.tmpl
estseek.top

estseek.conf はちょっと試行錯誤。
以下、変更した部分だけ。

indexname: /$HOME/public_html/$MAIL_INDEX
replace: ^file:///$HOME/public_html/$MAILINDEX/{{!}}http://ma30h/
replace: ^file:///$HOME/$MAILDIR{{!}}http://$HOST/~$USERDIR/$MAILDIR

設定するたびに忘れるCGI。Apache のサイトで確認。
Debian Squeeze は /etc/apache2/mods-available にある 設定を、/etc/apache2/mods-enabled の下にリンクすると有効になる。
データはユーザのディレクトリに置いているので、userdir.{conf,load}、 それから、cgi.load を ln -s する。
userdir.conf には少し手を加える。Options から Indexes を削除し、ExecCGI を加えるとともに、

  AddHandler cgi-script .cgi

を追記し、sudo /etc/init.d/apache2 restart。

これを書いてる間に、localhost から見えるだけでは物足りなくなり、 LANの他のホストからも見えるように手を入れた。
ここで公開している設定も、それにそって書き換えている。
$HOME/Mail の中が見えるように、public_html の 下に ln -s する。
LANの外からは、ssh で入って w3m で十分だろう。

それから、メールの属性が他のユーザに読めないものであることにも気づいたので、

$ find $MAILDIR -type f -perm 640 -name '[0-9]*' -exec chmod 644 {} \;

も /etc/crontab に加えた。

10年前、namazuでやったことの繰り返しだ。月日の経つのは早い。


リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。