Archive from 4月, 2009
4月 2, 2009 - コンピューター    FreeBSD7でpostfix+qpopper+dracd はコメントを受け付けていません

FreeBSD7でpostfix+qpopper+dracd

 postfix、qpopper、dracdの組み合わせで、POP before SMTPが動くサーバを立てるためのメモ。

 qpopperはinetdから呼び出したい。また、dracdを動かすにはrpcbindが動いてないとダメ。postfixはブート時に自動で走るようにしておく。

 まず、/etc/rc.confの設定。

sendmail_enable=”YES”
rpcbind_enable=”YES”
rpcbind_flags=”-s”
dracd_enable=”YES”
dracd_flags=”-i -e 10 /usr/local/etc/dracd.db”
inetd_enable=”YES”

としておく。
 dracd_flagsは、dracdが走る時のパラメータ。dracd.dbの在処までは明示しなくてもいいかもしれないが、一応念のため渡しておく。

 hosts.allowのrpcbindの分は、

rpcbind : ALL : deny
rpcbind : localhost : allow

とする。

 postfixはソースから拾ってきてインストール。特にオプションを指定しなくてもよい。ソースから入れると、設定ファイルは/etc/postfix/main.cfになる(portsから入れると/usr/local/etc/postfix/main.cf。両方あって紛らわしい時は一方を削除しておく)。

 main.cfのうち、pop before smtpに関係したところを次のように設定。mynetworksの設定が緩すぎると、研究室内のクライアントが接続しても、通常の認証扱いでdracd.dbが変わらなかったりする。

mynetworks = サーバのIP/32
alias_database = hash:/etc/aliases
smtpd_recipient_restrictions = permit_mynetworks,check_client_access,btree:/usr/local/etc/dracd,check_relay_domains,reject
mynetworks_style = host

 smtpd_recipient_restrictionsで指定したdracd.dbの在処が、dracd起動オプションと同じであることを確認。
/etc/aliasesを指定すると、/etc/aliases.dbを見ているっぽい。もし無ければ、rootでnewaliasesを実行するとデータベースが更新される。
 mynetworksは、研究室内は無条件で使わせるといった場合はIPの範囲指定でもいいけど、そうでないなら、サーバのIPだけにしてpopからdracdに登録させて使う方が良さそう。

 qpopperをdracを使うようにインストールするには、先にdracが入ってないとだめ。
 dracはソースから入れるとMakefileの変更などが面倒くさいので、portsから入れる。

cd /usr/ports/mail/drac
make install

とやって、

/usr/local/sbin/rpc.dracd
/usr/local/libdrac.a

ができていればよい。起動スクリプトの/usr/local/etc/rc.d/dracdがインストール時に作られる。

/usr/local/etc/dradc.allowを設定。dracd-allow.sampleそのままコピーでよいが、

255.255.255.255 127.0.0.1

も追加しておいた。

 dracdの起動は、

/usr/local/sbin/rpc.dracd -i -e 10 /usr/local/etc/dracd.db

 dracdの動作確認は、

/usr/ports/mail/drac/work/testing 127.0.0.1 111.222.333.444

などと叩いてから、

makemap -u btree /usr/local/etc/dracd.db

して、登録されていれば正常動作している。
 ただし、このチェックは一通りインストールして、一度リブートして、rc.confの変更が反映されてから確認した方が良さそう。

 qpopperのコンパイルは、ソースを拾ってきて展開後

./configure –enable-apop=/etc/pop.auth –enable-popuid=pop –with-drac=/usr/local/lib
make install

でよい。
 この設定だと、apopの認証ファイルは/etc/pop.authになる。
 もし、gdbmが無いと言われる時は、インストールしてなければ入れる。既に入っているなら

ln -s /usr/local/lib/libgdbm.a /usr/lib/libgdbm.a

などとやって、見えるようにしてやる。
 ./configure時のメッセージで。

Compiling in DRAC support
checking for dracauth in -ldrac… yes

と出ていることを確認。
 コンパイル終了後、エラーが出る場合は、Makefileと、popper/Makefileをエディタで開いて、後の方にある、

@${INSTALL} -s -m 0755 -o root popper ${installdir}/popper
@echo “Installed popper as ${installdir}/popper”

の@を取り除く。他の部分も同様に取り除く。
 /usr/local/sbinの下にpopperとpopauthができる。

 /etc/inetd.confの設定。

pop3 stream tcp nowait root /usr/local/sbin/popper popper -p2 -s -R

 変更したらinetdにHUPを送る。
 qpopperのオプションの意味は、

-d
Configure時に–enable-debugging を指定しておくと、デバッグログをsyslogに出せる。

-p 0|1|2|3|4
プレーンテキスト(plainパスワードの扱いを設定する。
0 (defaults) :「APOPデータベースに存在しないユーザ」のみ、通常のパスワード(平文)による認証を許す
1 : すべてのユーザ(APOPデータベースに存在しないユーザも)において、通常のパスワード(平文)による認証を許す
2 : 「APOPデータベースの中に存在するユーザ」であっても、通常のパスワード(平文)による認証を許す
3 : Loopbackアドレス(127.0.0.1)からの接続に関してのみ、通常のパスワード(平文)による認証を許す
4 : TSL/SSLによる通信の場合のみ、通常のパスワード(平文)による認証を許す

-R
クライアントIPの逆引き(reverse lookups)をOFFにする。ログファイルに出る、逆引きできませんでしたというあんまり意味のないエラーが出なくなる。

-s
syslogでログを記録する。

-T
クライアントからコマンドが到着するまでサーバが待つ時間(秒)を設定。デフォルト120秒。

 popperの場所はインストールの方法によって異なるので注意。
 実は最初、/usr/sbin/popperになってて、そっちはシンボリックリンクではなく別のpopperだったため、dracが動かなくて半日嵌った(泣)。
 /etc/hosts.allowは、

popper : ALL : allow

と、とりあえず制限はしない方針で。
 apop認証のユーザー名とパスワードは、とりあえずrootで

/usr/local/sbin/popauth -user ユーザー名 パスワード

とやると追加される。

 rc.confをいじってるので、動作が不穏なら論よりboot。
 メールクライアントからつないで、/usr/local/etc/dracd.dbにIPが登録されることを確認する。さらに、外部のアドレス宛にメールを送信してみて、送られていればOK。

4月 2, 2009 - コンピューター    tmpl直下のファイル修正部分 はコメントを受け付けていません

tmpl直下のファイル修正部分

 pplogpのtmpl/直下のx-x.tmpl、x-x.css(xは数字)は、設定→基本設定で文字コードを変えても自動で修正されない。
1行目の文字コード指定部分を、blogの設定と合わせてから、一度再構築すること。

 但し、直接編集できるテンプレートファイルのコードそのものはEUCのままでないと文字化けしまくる。ブラウザから直接編集画面でいじるのが間違いがなくてよい。

 テンプレート大幅修正で置き換える場合は忘れないように。

4月 2, 2009 - コンピューター    phpのタグ はコメントを受け付けていません

phpのタグ

phpのタグ <?PHP  ?>だけではなく <?  ?> も使えるようにするには、php.iniのshort_open_tagの設定を変える。

4月 1, 2009 - コンピューター    pplogpのupload.cgi はコメントを受け付けていません

pplogpのupload.cgi

pplogpをbeta 3にしたら記事が全く投稿できないという症状に見舞われた。
職場の新サーバがダメ。さくらサーバは問題なし。

ウェブから直接/pplogp/upload.cgiを実行するとエラー500。
改行コード(CRLFであるべき)や日本語コード(EUCであるべき)を確認、両方とも問題なし。

apacheのerror_logには、

[Wed Apr 01 12:28:25 2009] [error] [client 133.24.28.17] (2)No such file or directory: exec of ‘/home/WWW/pplogp/upload.cgi’ failed, referer: http://www.cm.kj.yamagata-u.ac.jp/pplogp/admin.php?mode=entry
[Wed Apr 01 12:28:25 2009] [error] [client 133.24.28.17] Premature end of script headers: upload.cgi, referer: http://www.cm.kj.yamagata-u.ac.jp/pplogp/admin.php?mode=entry

のように出ていた。

” Premature end of script headers”の解決策をウェブで探したところ、http://sagittarius.dip.jp/~toshi/premature.htmlに情報があった。改行コードの誤認識が起きることがあるそうな。
upload.cgiの1行目を

#!/usr/local/bin/perl

から

#!/usr/local/bin/perl —

に変えてみたところ、無事投稿できるようになった。

 

4月 1, 2009 - コンピューター    ploneの入り口あたり はコメントを受け付けていません

ploneの入り口あたり

http://plone.org/
より。
Plone-3.2.1r4-UnifiedInstaller.tgz.tar
を落としてくる。

tar Plone-3.2.1r4-UnifiedInstaller.tgz.tar
cd Plone-3.2.1r4-UnifiedInstaller
./install.sh standalone

ユーザーplone、グループploneができる。
インストール終了後のメッセージ中で、

Use the account information below to log into the Zope Management Interface
The account has full ‘Manager’ privileges.

Username: admin
Password: ********

のように、管理者の初期パスワードが表示される。

http://(インストールしたマシンのIPまたはURL):8080/Plone

でアクセスできる。8080はデフォルトのポート番号。

ここまでだと表示が英語なので、日本語の解説書を読みながら触るには、画面右上の一番右上のサイト設定をクリック→LanguegeをJapaneseにすると全体の表示が日本語になる。

FreeBSD release7で利用中。

4月 1, 2009 -    中性子線回折の参考書 はコメントを受け付けていません

中性子線回折の参考書

 日本語の「中性子光学」を、物理学会の展示会場で入手した。とりあえず関連書籍のメモ。

○「中性子光学 実験による量子力学の探究と応用」(2007)
宇津呂雄彦著、吉岡書店 978-4-8427-0344-2 3200円
○「中性子光学 理論による量子力学の展開」(2009)
ウラジミール・イグナトビッチ著 宇津呂雄彦訳、吉岡書店 978-4-8427-0349-7 
※この2冊は実験と理論で実質1セットになっている。

○Neutron Optics (1989)
VARLEY F. SEARS, Oxford, 0-19-504601-3
※ちょっと古いが内容は基礎的。ペーパーバックは出てないっぽい。

○Theory of Neutron Scattering from Condensed Matter vol.1 (1984, reprinted 2004)
STEPHEN W. LOVESEY, Oxford, 0-19-852028-X
○Theory of Neutron Scattering from Condensed Matter vol.2 (1984, reprinted 2003)
STEPHEN W. LOVESEY, Oxford, 0-19-852029-8
※原研に備え付けてあった。ペーパーバックが入手できる。

 最近出た総説として、
“Modern Developments in X-Ray and Neutron Optics (Springer Series in Optical Sciences)” (2008)
Alexei Erko , Mourad Idir, Thomas Krist, Alan G. Michette. Springer, 978-3540745600
がある。装置側の解説書。

4月 1, 2009 - その他の物品    static text portletで文字化け はコメントを受け付けていません

static text portletで文字化け

 Safariで、plone3のstatic text portletを編集時、日本語を入れて保存すると表示が文字化けする。
FireFoxを使って編集すると、文字化けが起きない。

4月 1, 2009 - コンピューター    portletの表示幅と行間を変える はコメントを受け付けていません

portletの表示幅と行間を変える

portlets.cssのカスタマイズ。元ファイルは/portal_skins/plone_styles/portlets.css
コピーしてできた /portal_skins/custom/portlets.cssを、例えば以下のように編集。

.portletItem {
margin: 0;
padding: 0.1em;
border-left: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
border-right: &dtml-borderWidth; &dtml-borderStyle; &dtml-globalBorderColor;;
}

行間を狭くするには、paddingを変更。0.1emにするとそれなりに狭くなってくれる。左右どちらもこれに従う。

表示幅を変えるには、/lab/portal_skins/plone_styles/base_properties/をカスタマイズ。
columnOneWidthをデフォルトの16emから24emに変更すると、左側のナビゲーションの幅がひろくなる。

4月 1, 2009 - コンピューター    UnifiedInstallerを使った時のtrusted_proxyの設定場所 はコメントを受け付けていません

UnifiedInstallerを使った時のtrusted_proxyの設定場所

UnifiedInstallerでstandaloneの場合は、
[install.shが作ったフォルダ]/zinstance/parts/instance/etc/zope.conf

UnifiedInstallerでZEOは、
[install.shが作ったフォルダ]/zeocluster/parts/client1/ete/zope.conf

4月 1, 2009 - コンピューター    テーブルの罫線とかを消されないようにしたい はコメントを受け付けていません

テーブルの罫線とかを消されないようにしたい

 Kupuで編集時、テーブルの罫線を設定しても保存時に消されて表示されない。

 portal_transform/safe_htmlを編集。
全てを許可するのであれば、一番上の disable transform を 1 にして保存。safeの意味がなくなるかわりに、意図通りに表示されるようになる。

固定ページ:«123»