以下、同僚に教えてもらったりした設定例。
Trac はなかなか便利なんですが、複数のプロジェクトを扱う場合は、すこし工夫が必要。
$ trac-admin /var/trac/hoge1 initenv 'Hoge1 Project' sqlite:db/trac.db /var/lib/svn /usr/share/trac/templates
$ trac-admin /var/trac/hoge2 initenv 'Hoge2 Project' sqlite:db/trac.db /var/lib/svn /usr/share/trac/templates
と、2つのプロジェクトを登録していた場合、
httpd.conf を
<Location "/projects/hoge1">
SetEnv TRAC_ENV "/var/trac/hoge1"
</Location>
<Location "/projects/hoge2">
SetEnv TRAC_ENV "/var/trac/hoge2"
</Location>
とか書き連ねて、各ディレクトリに、trac.cgi をコピーといった荒技を繰り出したくなるんですが(え?ならない?)、そんなことをしなくても
ScriptAlias /trac /usr/share/trac/cgi-bin/trac.cgi
<Location /trac>
SetEnv TRAC_ENV_PARENT_DIR /var/trac
</Location>
だけで OK。上の例だと
http://www.example.co.jp/trac
にアクセスすると、そのサイトで管理されているプロジェクト一覧が表示されるので、あとはそのリンクをたどればOK。もちろん
http://www.example.co.jp/trac/hoge1/
http://www.example.co.jp/trac/hoge2/
でもアクセス可能。
あとSubversion についてですが、ディレクトリを切ることでプロジェクトを分け、運用する場合の話。上記の例だと異なるプロジェクトのはずなのに、タイムラインを見ると、すべての更新情報が表示されるので、見通しが悪くなります(/var/lib/svnの部分)
ファイルシステム上に、そんなディレクトリねぇよ! とか思わず
/var/lib/svn/hoge1
とか指定しておくと、リポジトリツリーの hoge1 以下の変更のみが表示されるので、見通しがよくなります(cf. http://wota.jp/ac/?date=20060301#c01)
あとで直す場合は
/var/trac/hoge1/conf/trac.ini
[trac]
repository_dir = /var/lib/svn/hoge1
を修正すればOK。
ちなみに Trac の機能に不満をもったら
http://trac-hacks.org/
へアクセス。きっと欲しい機能をサポートしたプラグインがあるはず。
これもまた楽しい。
#意外と、本物もタネを知ってしまえばこんな感じなのかも? :-p
via http://www5a.biglobe.ne.jp/%7Ekanpu/
みんなノリノリ。楽しそうだなぁ(^-^;
via http://blog.livedoor.jp/ladlad/archives/50349710.html
Googleサービスの使い方!
http://g.1o4.jp/
Google って、こんなにサービスを持ってたのか。
via reddit
http://www.ifilm.com/ifilmdetail/2717326
……え、本当に編集?(^_^;
via http://arena.nikkeibp.co.jp/col/20060420/116396/
わりと新しい Linux-2.16.14.4 上で取った Filesystem 別のベンチマーク
EXT2 vs EXT3 vs JFS vs ReiserFSv3 vs ReiserFSv4 vs XFS
http://linuxgazette.net/122/TWDT.html#piszcz
思った以上に枯れた ext2, ext3 が良い気がしてきた……
http://catfrog.net/PHP/gunshi.php
via http://www.pochi.cc/%7Esasaki/chalow/2006-04-25-2.html
わらった(^^;
http://www.ntfs-linux.com/
via http://d.hatena.ne.jp/kinneko/20060425/p10
テーブルをJavascriptで自動的に見やすくする
http://phpspot.org/blog/archives/2006/04/javascript_11.html
まっぷたつに割れたCD-ROM--高速化競争の陰で
http://sugi.sakura.ne.jp/column/050122a.html
CD-ROMドライブで、よくXX倍速ってのがありますが、高速なのも考え物という話し。あまり速すぎると、傷がついたCD-ROMとかは遠心力に負けて割れることもあるそうです。
前々から、XX倍対応 CD-R ってなんの意味が……と思ってたら、そういう背景もあったわけね。
via どっか忘れた……
http://blog5.fc2.com/y/yonehan/file/psychic.html
たしか、1年前にも流行ったやつ。原理を思い出すのに時間がかかった(^^;
#何度もやれば、わかるはず>タネあかし
ホンダシ・ビックの CM のパロディ。
http://blog.goo.ne.jp/agatastrip/e/ed359e8cae9e02436f415ec4bd84e43f
わらった(^_^;
perlに関する玄人向けTIPS集
http://wiki.satoru.net/blog/?perl%A4%CB%B4%D8%A4%B9%A4%EB%B8%BC%BF%CD%B8%FE%A4%B1TIPS%BD%B8%A1%DA1%A1%DB
JavaScript で DOM を使う - オブジェクト指向入門の入門
http://piro.sakura.ne.jp/latest/flakes/033oo_javascript.html
http://www.radiumsoftware.com/0604.html#060420
via http://hoshi.air-nifty.com/diary/2006/04/bearuby_0171.html
さて、どうなるかな? :-)
GTDでつまずくところとその解決法
http://itoshi.tv/d/?date=20060413#p02
あとで読む。
世界で一番か二番くらいにやさしい「モナド入門」
http://d.hatena.ne.jp/m-hiyama/20060419/1145432492
via reddit
童話「首がもげたキリン」
http://guideline.livedoor.biz/archives/50443732.html
http://guideline.livedoor.biz/archives/50443731.html
本当にこういう絵本があってもよさげ。
doctrine
http://www.phpdoctrine.com/
via http://www.sooey.com/journal/2006/04/13/101/
無線LANが使える会議室/大画面を多人数で見られる設備
http://artifact-jp.com/mt/archives/200604/rentalroom.html
なんかの時に必要になるかもしれないのでメモ。
吉野家の牛丼より美味しい牛丼を目指すレシピ
http://www.drk7.jp/MT/archives/001049.html
JANOG ML にリバースプロキシはどう?と設定例を投げたんですが、すばやく問題点を指摘して頂いた(ほんと、ありがたい……)
Apache を Reverse Proxy で利用する際には、ProxyRequest は必ず Off にしないとだめ。
On にしちゃうと、オープンプロキシになってしまう危険性がある。
ちゃんとドキュメント
http://httpd.apache.org/docs/2.2/ja/mod/mod_proxy.html
にも
警告
サーバを安全にするまで ProxyRequests は有効にしないでください。 オープンプロキシサーバはあなた自身のネットワークにとっても、 インターネット全体にとっても危険です。
とか
リバースプロキシの 設定のために ProxyRequests を設定する必要は ありません。
と、その危険性にも触れてあるし、Reverse Proxy の設定例には
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /foo http://foo.example.com/bar
ProxyPassReverse /foo http://foo.example.com/bar
とあって、わざわざ ProxyRequest Off なんて入れてあって、間違いが起きないように補足してある。
#人に、ちゃんと Apache のドキュメント読まないとダメよと言っときながら、
#自分がちゃんと読んでなかった罠。
#確かめたつもりだったんだけど、本当に「つもり」なだけだったらしい。恥ずかしすぎ(--;
なお、オープンプロキシを探すスクリプトは世の中に出回っているらしく、Webサーバを運用している方は、ログにその形跡を目にされる方もおられると思います(ちょっと前にも話題になりましたしね(--;))
心配な方は以下のようにチェックできるはず。
$ telnet localhost 80 <= 入力
Escape character is '^]'.
CONNECT http://www.yahoo.co.jp:80 HTTP/1.0 <= 入力
これで "400 Bad Request" とか返って来れば大丈夫なはず。www.yahoo.co.jp の index.html が返ってきたら、アウト。
# ただ、この確かめ方が 100% 正しいかは要確認。以前 ProxyRequest On + Reverse Proxy の
# 設定を入れてしまっていた時に、このテストをやってみたときには、ひっかからなかったんだよねぇ
と、自戒の意味も込めて、自分の日記にも晒しておく。
http://project.terminus.sk/dare/
$ rm *~
とするつもりが typo して
$ rm * ~
で、ぎゃぁー!と叫ぶような自体になっても、リカバリーできるようにするための patch.
VFS に patch が当てられるので、どんなファイルシステムにも、ゴミ箱機能が利用できる(ただし、ゴミ箱の設定は自分でやる必要あり)
いや〜意外といいかも? :-)
via http://d.hatena.ne.jp/kinneko/20060412/p1
そのサイトを見るとルーターがクラッシュする
http://neta.ywcafe.net/000421.html
うはっ、バッドノウハウちっく(^-^;
RFC1035
2.3.4. Size limits
Various objects and parameters in the DNS have size limits. They are
listed below. Some could be easily changed, others are more
fundamental.
labels 63 octets or less
names 255 octets or less
TTL positive values of a signed 32 bit number.
UDP messages 512 octets or less
http://support.microsoft.com/default.aspx?scid=kb;ja;812175
Windows 2000 ベースのコンピュータ上で、ホスト名の名前解決に Hosts ファイルを使用する場合、約 1 年の期間が経過すると、ホスト名がインターネット プロトコル (IP) アドレスに解決されなくなることがあります。
へぇ〜そんなバグがあるんだ。
via http://d.hatena.ne.jp/hanazukin/20060410#1144638682
http://telec.org/base/base1.html
よく音の大きさを表すのに利用される dB についてのわかりやすい説明。
via どっか忘れた……
さきに Python の勉強だろ? って話しもありますが、Python の Django と TurboGears をインストールして遊んで見ました。
TurboGears の CatWalk に代表される Toolbox も確かに Ajax バリバリでいいんですが、その部分に関しては、若干カスタマイズに欠ける気がしました(普通にカスタマイズできるのかもしれないけど、要確認だなぁ)
個人的には、Django の方がよいかも?(昨日の会場では TurboGearsの方がいい!と手を挙げまくってた私ですが(^^;))
理由は以下から。
- CRUD の出来がよさげ
- 表示部分のカスタマイズが容易
- 管理画面は設定書き換えるだけで日本語化
- チュートリアルが最新バージョンに追随していて、進めやすかった。
いや、TurboGears 同様にカスタマイズとかできるのかもしれないけど、実際に触ってみての 1st impression は Django に軍配かなぁ?(そんなエラらそうに言える立場でもないんですが)
とりあえず Django でアプリを書くぞ! というのを自分のエサにして、Python の勉強に励むとしよう(^^;
前日飲みすぎてヘロヘロでしたが、出かけて来ました。
プログラムは
1. kizasi.jp : 今日,ブログで話題になったことって?
2. やり直しのための Python プログラミング
3. Skype 〜 活用と連携
4. 最新Webアプリケーションフレームワーク比較
5. IronPython のご紹介
でした。
発表資料は
http://www.python.jp/Zope/workshop/200604/index_2_html
からダウンロードできます。2006/04/08 現在では、すべての資料が掲載されていないようですが、後日掲載されると宣言されていたプログラムもありますので、そのうち載るでしょう :-)
以下、感想など。
1. kizasi.jp : 今日,ブログで話題になったことって?
kizasi.jp は、いわゆる一般の人達が書いているブログを解析することで、いま、なにがブログで語られているか、といったことを目に見えるようにしたサービスです( Blogwatcher と似たサービスといっていいかも。え、ちがう?(^^;))
たとえば JPNIC を検索すると、ここ最近だと
IPv 枯渇 提言 アドレス remarks 公開 向けた 氏名 a. b. ISP JPNICハンドル アドレス枯渇 MAINT-JPNIC mnt-by JNIC changed information AP 報告書 数年 10年
といったキーワードとともに語られることが多いなんてこともわかります。
システム構成としては、一部 C++ で書かれているところもあるそうですが、その多くが Python で書かれているそうです(クローラなども含め、計1万2000行程度のプログラムだそうです)
「なんで Python なん?」
という理由については
- 習得の簡単さ
- 標準ライブラリの充実
- コードが(書こうと思えば)きれいに書ける
- 実験的なコードが簡単に書ける
- はじめは技術スタッフのリーダーの好み?
が挙げられていました。「習得の簡単さ」については
http://musicmarq.jp/
を見てもらえればよいかもしれません。このサイトのプログラムは、入社したばかり(といっても2005年度ですよね?)の新人君が Python を勉強して、ほぼ1人で書いたそうです。良い経験させてもらってるねぇ:-)
2. やり直しのための Python プログラミング
基本的に時間がなく、駆け足。初心者も一応対象ではありますが、さすがに Python チュートリアルとかにも目を通したことがない! って人は、ついていくのが辛かったかもしれません。
内容としては、Python の基礎に加え
- スライス覚えるといいよ
- get,setdefault,pop を使うと便利(Python 2.4以降でしたっけ?)
こいつを使うと、辞書の操作をするときに、default の値がセットできたりします。
- 内包表記について
- Generator について
- 日本語についての問題点の回避
とかが話されていました。とくに内包表記、Generator、またそれらの違いってのが興味深い話しだろうと思います。資料が掲載されたら、読み返したい……
3. Skype 〜 活用と連携
Skype って単なる VoIP ソフトじゃないのね。といった感じでした(^^;
Skype の紹介と、SkypeAPI で出来ること。またそれを Python から操作するには? といったことが紹介されていました。
ちょっと時間をとって、Skype API でじっくり遊んで見たいなぁ……
ちなみにSkype を使って遠隔会議とかやることもあるんですが、会社の中で、マイクつきイヤフォンで話している姿は、はたから見ると独りで話している危ない人に見えるらしい(同僚に、「いきなり話し出すからびびった」とか以前言われた)
他の人に誤解されていないか心配だ (^_^;
#Skype用の外付けの電話を使って話した方が自然かもしれない。でもあれって Linux で使えるんだっけ?
4. 最新Webアプリケーションフレームワーク比較
- Django
- TurboGears
- web.py
の3つのアプリケーションフレームワークの比較をパネル形式で話されていました。Django とTurboGears は、RoR に似た感じですね。詳細は、発表資料を見て頂くとして、個人的に気になった点を抜き出したものが以下。
- Django
-- 速い!
2500万 PV/day の実績あり
-- アンチ黒魔術
-- 日本語ドキュメントが充実(すべて日本語訳が!)
- TurboGears
-- 既存ライブラリを統合したもの
Mochikit, Kid, CherryPy, SQLObject
-- 徹底したドキュメント化(ドキュメントにない機能は存在していないと思って良い)
-- テストコード沢山
-- クールなCRUDフォーム自動生成ツールがある
-- Ajax 対応
-- オーサリングツールとテンプレートツールの相性がよい
- web.py
-- シンプル!
こんな感じ?日本語ドキュメントの充実と、パフォーマンスの良さから、Django にも惹かれるんですが、TurboGears について話しをされていた柴田さんが、実験的にほぼフル機能を搭載したSNSを書いたところ、「コード量は 500行ぐらいでした」とか、さらっと言われているのを聞くと、ちょっと衝撃を受けました。いま LDAP管理ツールを Perl で書いてるんですが、どう押し込んでも 1000 行は越えそうな感じなんですが……
あと、CatWalk とかも便利そうだし、ちょっと TurboGears で遊んでみたいなぁ(あわよくば、なんかのプロジェクトで使ってみたい)
5. IronPython のご紹介
CPython より速いぞ! ってな感じの IronPython ですが、.NET の機能とか、Visual Studio とも連係できるんだよ、という話しをされてました。
Python2.4互換とするべく、IronPython の開発はすすんでいるそうです。ちなみに IronPython は、商用利用もOKなライセンスです。いくつか制限事項はあるようですが。
http://portal.nifty.com/2006/04/05/a/
簡単、かつ、うまそう! 週末、トライしてみるか。
たまたま見つけた。英語のテキストを読み上げてくれるツールらしい。
# apt-get install recite
まずは基本ということで
$ recite This is a pen
いかにも機械が喋りましたよって感じ。
$ recite Is this a pen
疑問文にしても抑揚は付けてくれないようで、普通に読み上げるだけなのね。日本人が聞き分けずらいらしい言葉を並べてみる。
$ recite light right
$ recite cant can
全く違いがわからん(^_^;
http://www.dodgson.org/omo/t/?date=20060402#p02
via http://1470.net/mm/mylist.html/430?date=2006-04-06#m156056
http://www2b.biglobe.ne.jp/~caco/pgpage/jisx0213.html
PostgreSQLでは(8.1現在),JIS X 0213はサポートされていません.このページでは, PostgreSQLでJIS X 0213をサポートする際の問題点などを検討します.
via http://ogawa.s18.xrea.com/tdiary/20060331.html#p03
http://womble.decadentplace.org.uk/c++/syntax-errors.html
via http://japan.linux.com/opensource/06/04/04/0156256.shtml?topic=1
.NET Rocks! - David Smith on BitTorrent and IPv6
David Smith talks to Richard and Carl about btSharp, his .NET implementation of the BitTorrent protocol written in C#. He also gives a great introduction to BitTorrent and how it works, and offers some insight on how IPv6 will make our lives easier.
あとで頑張って聞く。約1時間かぁ
売れないものだと思ってたけど、初めて売れた!
どなたか知りませんが、ありがとうございました m(_ _)m
あー完全に出遅れた。ので、静観。
USAGI Project によって、ヘルシンキ大学(HUT) の実装をベースに、TAHI テストでの相互接続性を上げる patch セットが UMIP-0.1 としてリリースされました。kernel のベースは 2.6.14 になります。
http://www.linux-ipv6.org/umip-0.1-ann.html
49e2d8ecd80d72a105b393de789dff22 FILES
1a05773da966940acf7f6059765db6d8 README.MIPv6
8130da93e09db15fe52777db23fec0d0 kernel-s20051214-umip-0.1.diff.gz
1d382c4ddff4b43a3821044b4e6c1794 kernel-s20051214.tar.gz
628c621ce352c89a5877463667263fd5 mipv6-s20051214-umip-0.1.diff.gz
880e7286fc7c5061a04ddb3fe459d2fa mipv6-s20051214.tar.gz
遊び方はこちら。
http://www.linux-ipv6.org/memo/mipv6/
これで Linux で Mobile Node, Home Agent, Correspond Node と、Mobile IP で出て来るプレイヤがすべて試せます。ちゃんとうごくよ :-)
改めて JPNIC からこういうドキュメントが出て来ると、 IPv4 アドレスの枯渇が現実のものとして見えて来た、という感じを受けますね。
報告書「IPv4アドレス枯渇に向けた提言」公開のお知らせ
http://www.nic.ad.jp/ja/research/ipv4exhaustion/
以前は、IPv4 は絶対になくならないだろうと思ってました。それは以下の理由からです。
2000年問題においては、技術者が前もって対策を講じた結果、特になにも起きませんでした。で、「あんなに騒いでいたのになにも起きなかったじゃないか」とか言われてしまうぐらいの見事な仕事だったわけですが(※)、IPv4の枯渇問題についても同様に、実際に枯渇する前に IPv6 へ移行してしまい、結果として、「IPv4 アドレスは枯渇するっていってたのに、結局 IPv6 に移った今も枯渇してないじゃないか」とか言われるだろうと考えてたからです。で、もし枯渇まで行ってしまえば、インターネットに携わるエンジニアの敗北だとすら考えていました。
でも、最近ではやっぱり枯渇まで行ってしまうんだろうな、と思うようになりました(エンジニアが対策をさぼるから、と思っているわけではなく、やっぱりちょっと IPv4 の枯渇問題の捉え方と、IPv6 利用シーンに対する考え方が、自分の中で変わって来たからです)
ともあれ、その時までに、枯渇のインパクトが小さくなるよう手立てが打ててるといいですねぇ……
それはさておき、このドキュメントについては
http://d.hatena.ne.jp/maem/20060403/p1
でも触れられている通り、いわゆる IPv6を推進している人ではない人たちによって、作成されたことが意義深いかと。
ただし、ちょっと IPv4/IPv6の挙動について誤解を招きそうな点があったので、メールでコメントして置きました(個人的には結構クリティカルだと思ってますが、さて……)
※今思えば、2000年問題でこんなことが起きる!と言われていたことの中に、荒唐無稽な話も多々あったにせよ
最近、IETF には行けてないんですが、こんなのがあるんですね。
IETF Journal 最新版(2006/04現在)
http://ietfjournal.isoc.org/IETFJournal0102.htm
某MLに、ここで取り上げられているセキュアなハッシュ関数について、は、エンジニアなら読むべし、と言われていたので読んでみた。
ここ最近、ハッシュ関数の安全性については、いろんなところで話題になってましたからね。
まとめを、さらにまとめるのはちと変かもしれないけど、適当に日本語に訳すと
- 私が使っているプロトコルはまだ Secure?
まだ大抵のプロトコルは、Safe(たとえMD5を使っていたとしても)。ただし、
MD5 を使ったデジタル署名は別(いますぐにでも止めるべき)
HMAC-MD5 はまだ safe だと信じられているけど、CFRG(ryptography Forum
Research Group)の議長である David McGrew は、近い将来、破られるだろう
と語っている。
- いま使うならどのハッシュ関数を使うべき?
IETFの Security Area Director の Russ Housley は、SHA1 ではなく、NIST の
SHA-256 を使うのが、現在のベストな選択だと語っている。しかし多くの出席者
が、近い将来、よりよい選択肢が現れることへの期待を表明していた。
- どのように、いつ、新しいプロトコルへ移るべき?
Steve Bellovin, Russ Housley, Eric Rescorlaらは、移行において、既存のIETF
プロトコル(IPsec, S/MIME, SSL/TLS, DNSSEC, OCS)で、問題が起きるかどうか
を調査した。そしてあらゆるケースで、スムーズな移行を行うには、プロトコル上
の問題があることがわかった。
このことは、プロトコルの移行は慎重に、しかし適切かつすぐにでも行う必要があ
ることを意味している。
こんな感じ?(間違っていても知りません ;-p)
HTML や CSS 用にと、簡単に使えるカラー選択のツール。
GNOME Color Scheme
http://home.gna.org/colorscheme/
Debian のパッケージは
http://eclipxe.com.mx/debian/gnome-colorscheme/
にあるので、頂いてくる。
# dpkg -i gnome-colorscheme_0.3.90-1_i386.deb
起動は
$ colorscheme &
これだけ。Random をクリックしてると、適当ないろを選んでくれる。
このサイトのデザインを変える時にでも使おう :-)
via http://freshmeat.net/
簡単だけど本格的な味になるブイヤベースもどきの作り方
http://www.drk7.jp/MT/archives/001035.html
「カゴメ野菜ジュース食塩無添加」がいいらしい。
新年度、スタートですな。いろいろと、余裕を持ちたい今日この頃。と、ずっと言い続けている気がする今日この頃。
BIND9を DNSキャッシュサーバとして利用してるんですが、逆引きが登録されていないホストに対して逆引きを掛けると、当然引けないので
Mar 30 11:46:14 localhost named[5150]: lame server resolving 'www.example.com' (in 'example.com'?): 192.0.2.1#53
こんなエラーを吐き出します。ログは無いよりあった方がよいという考えから、特に対策は取ってなかったんですが、他のログがこのメッセージ群に埋もれるという面も馬鹿にできなくなってきたので、この手のログは取らないことに。
logging { category lame-servers { null; }; };
";" の抜けがないように注意して、こんな感じで設定変更を施しておく。
# /etc/init.d/bind9 reload
して動作確認しておしまい。
cf.
http://www.ksknet.net/linux/lame_server_res.html
http://www.bind9.net/doc-v8/logging.html
http://www.cyberpolice.go.jp/server/rd_env/pdf/20060330_SQLInjection.pdf
via http://d.hatena.ne.jp/hanazukin/20060331#1143761163
IPA のドキュメントにも、どういう点に注意して Web アプリを書けば良いかが書いてあったけど、こっちは、もうちょっと具体的な攻撃手法について取り上げてある。あとでじっくり読もう。
いまだ生原酒「龍神丸」の大吟醸を飲んだことがありません。3月下旬か、4月上旬に発売されるということで楽しみにしてたんですが、なんと1日で売り切れ……気付いた時には遅かった orz
前回は、売り切れまで数ヵ月の猶予があったらしいです。きっと「もやしもん」に出たせいですな。
おそるべし、もやしもん効果(涙)
#っていうか、自分もそのもやしもんを読んで買おうとしてた一人なわけですが
【amazon】
【amazon】
ちなみにこの「もやしもん」、細菌がディフォルメされた形で肉眼で見えるという特殊な能力を持った主人公(麹屋の息子)の農大キャンパスライフが描かれています。
細菌達や教授が語るウンチクも読んでて楽しい作品です :-)
雰囲気的に、動物のお医者さんとかを好きな人は、これも面白く読めるのでは? そんな気がします。
#買う前は、ずっと「もやしん」だと思ってたのは内緒。
IPv4/IPv6 meter |
思ったより安い……時もある、Amazon |