Street View

なにやら中吊りでGoogleのサービスがプライバシーを侵害しているというものがあったので、調べてみたらStreet Viewというサービスが犯人らしい
日本向けのサービスは8月5日?くらいに開始されていて、Google Mapsのアドオンとして動いている。
利用できるのは、大都市圏だけでそれも千葉とかだと路地によって対応しているところとしていないところがまばら。ただ、東京はかなり細い路地でも対応しているみたいだった。
過去の住所で調べてみたところ3地区では建物や駐車している車、掲載されている看板の文字などがわかった。 現住所は対応していないみたいだったけど・・・
使った感想としては正直「怖い」。「便利」かもしれないのは初めてその土地にいく人と、開発者のエゴからくるものくらいでしかないと思う。Google Earthなみの衝撃ではあるけれど、ここまで迫られるとプライバシーに迫るものがあって怖いという感情が先に出てしまうのは僕だけだろうか??

ieHTTPHeaders Ver.2

Internet Explorerのプラグインとして動作し、通信している内容をキャプチャすることができるieHTTPHeadersがIE7に対応していなかったためにずっと使うことができなかったが、Ver.2になって対応していることが最近わかった。
Personal版とProfessional版というのができていて、Personal版はフリーで利用できる。

Unisonを使った遠隔地へのバックアップ

先日は、家庭用ファイルサーバーで定期的にバックアップを行うにて同一拠点内のミラーリングの方法について書き込みしたが、今回は遠隔地のサーバーを利用してミラーリングする方法について書き込みしたい。(一応ディザスターリカバリーといえるか??)
Linxuサーバーどうしてあれば、rsyncを利用してセキュアにコピーすることができるが、Windows環境とLinux環境ではcygwinを入れなければならなかったりと大変だ。
インターネットで調べていたらUnisonとplinkによるミラーリング方法についてLinux Home Server Memoに有益な情報があったので、これを参考に行ってみた。
ただ、同じようにやってみてもplink側でserverオプションがないといわれてしまう。試行錯誤してみたところsync.batを以下のように書き換えてみたらうまくいった。

rem Create batch script to launch plink
echo @%PLINK_PATH% -ssh -P %SSH_PORT% %%4 %%5 %SSH_USER%@%SSH_HOST% unison -server > %SSH_LAUNCH_SCRIPT%
rem Run unison (which in turn will call the plink batch script just created)
%UNISON_PATH% -sshcmd %SSH_LAUNCH_SCRIPT% -rshargs “-pw %SSH_PASSWORD%” %UNISON_CMD% %UNISON_OPTIONS%

のところを

rem Create batch script to launch plink
echo @%PLINK_PATH% -ssh -P %SSH_PORT% -pw %SSH_PASSWORD% %SSH_USER%@%SSH_HOST% unison -server > %SSH_LAUNCH_SCRIPT%
rem Run unison (which in turn will call the plink batch script just created)
%UNISON_PATH% -sshcmd %SSH_LAUNCH_SCRIPT% %UNISON_CMD% %UNISON_OPTIONS%

ちなみに参考サイトでは、SSH_PASSWORD、LOCAL_ROOT、REMOTE_ROOTを直接書き換えていますが、引数で呼び出せるように設計されているので、
rsync.bat (パスワード) (コピー元サーバーパス) (コピー先サーバパス)
とすることで複数のバックアップパスを指定できる。
FastCopyと違う点といえば、完全に同期するということだ。なので、バックアップ用として利用しようとすると、コピー先サーバー上でファイルが消失すると、コピー元のファイルも消えてしまう。また、コピー元でファイルを消したとしても、コピー先からダウンロードされてしまって復活してしまう。
この問題を解決するには、-force (基準パス名)オプションを利用することで回避することができる。基準パス名はコピー元サーバーパスとなるので、
set UNISON_OPTIONS=-contactquietly -times -batch -fastcheck true -force %LOCAL_ROOT%
としておけばバックアップツールとして利用することができる。
補足になるが、Unisonはバージョンが異なるとエラーが発生してコピーできない。Linux側のバージョンが古かったためなのだが、今回は例外的にWindows側のバージョンをLinux側のバージョンと一致させて対応した。過去のWindowsバージョンファイルはここにあるので参考にしてほしい。

Movable Typeを4.2にアップグレードする

Movable Type 4.2が8/14にリリースされ、mixiアカウントを使ってコメント入力を認証できるようになったらしい。今回は、アップグレードしてコメント入力を認証させるようにして、スパムを減らすようにしたい。
現在のところカスタムフィールドを使っている場合には、アップグレードによってデータが消失する可能性があるとのことなので、アップグレード前に 設定 > カスタムフィールド を表示させて確認するとよい。
基本的には、Movable Typeをアップグレードするの手順どおりでやっていけばアップグレードできるが、Apacheユーザー以外でインストールしている場合には、supportフォルダの権限変更が必要となる。
# apacheの設定ファイルを変更し、以下のディレクトリの所有権を変更する
chown apache.apache /var/www/MT-4.2-ja/mt-static/support/
mixiとのアカウント連動については、mixiCommentプラグインを見るとインストール方法がわかるので確認してほしい(ちなみに、ダウンロードのリンクは左上にある)。

mimeヘッダーを解析する

メールのヘッダーというものは、改行で区切られるのかと思ったらそうではないらしい。
たとえば、こんなヘッダーがある

Date: Tue, 19 Aug 2008 09:23:57 +0900 (JST)
Subject: [Fwd:
=?ISO-2022-JP?B?(途中省略)U?=
=?ISO-2022-JP?B?(途中省略)h?=
=?ISO-2022-JP?B?(途中省略)Q==?=
From: =?ISO-2022-JP?B?(途中省略)C?= <(送信元)>
To: (送信先)
User-Agent: SquirrelMail/1.4.5-1_fc4
MIME-Version: 1.0
Content-Type: multipart/mixed;boundary=”—-=_20080819092357_80457″
X-Priority: 3 (Normal)
Importance: Normal

Subjectが途中改行されているけれども、これは正しいらしい。というわけで、ヘッダーを解析するのは容易ではなさそうで、pearのモジュールにMail_mimeDecodeというものが出ているのでこれを使ってみることにした。
ただインストールしようとしたらpearのバージョンを上げろと言われて戸惑った。

# pear install mail_mimedecode
pear/Mail_mimeDecode requires PEAR Installer (version >= 1.6.0), installed version is 1.4.11
pear/Mail_Mime requires PEAR Installer (version >= 1.6.0), installed version is 1.4.11
pear/Mail_Mime requires package “pear/Mail_mimeDecode”
No valid packages found
install failed

サイトを調べてみたら設定を無理やりかえるとか強引な手法が多かったけれど、僕の環境の場合にはすんなりいった。

# pear upgrade pear
downloading PEAR-1.7.2.tgz …
Starting to download PEAR-1.7.2.tgz (302,744 bytes)
…………….done: 302,744 bytes
downloading Archive_Tar-1.3.2.tgz …
Starting to download Archive_Tar-1.3.2.tgz (17,150 bytes)
…done: 17,150 bytes
downloading Structures_Graph-1.0.2.tgz …
Starting to download Structures_Graph-1.0.2.tgz (30,947 bytes)
…done: 30,947 bytes
downloading Console_Getopt-1.2.3.tgz …
Starting to download Console_Getopt-1.2.3.tgz (4,011 bytes)
…done: 4,011 bytes
upgrade ok: channel://pear.php.net/Console_Getopt-1.2.3
upgrade ok: channel://pear.php.net/Structures_Graph-1.0.2
upgrade ok: channel://pear.php.net/Archive_Tar-1.3.2
upgrade ok: channel://pear.php.net/PEAR-1.7.2
PEAR: Optional feature webinstaller available (PEAR’s web-based installer)
PEAR: Optional feature gtkinstaller available (PEAR’s PHP-GTK-based installer)
PEAR: Optional feature gtk2installer available (PEAR’s PHP-GTK2-based installer)
To install use “pear install pear/PEAR#featurename”

これでpear install mail_mimedecodeをすればうまくダウンロードできた。
実際にコード解析したものについては次回…

Windows XPにてNetMetting

Windows XPでネットミーティングをしたいと思ってもショートカットがない。実は、confコマンドで呼び出すことが出来るのだが、詳しくは@ITを見てもらいたい。

家庭用ファイルサーバーで定期的にバックアップを行う

最近はBuffaloのLinkStationなどのNASと呼ばれるファイルサーバーがあるから、こんなことをしなくても、ハードウェアを買ってくれば簡単にファイルサーバー+バックアップシステムが構築できる。
友人からプレゼントしてもらったLS-HGLシリーズはUSBポートがついており、外付けUSBハードディスクにバックアップする機能までついている。
今回は、使い古されたWindows 2000サーバーと外付けHDDドライブを使って定期的にバックアップする手法について実際に行った方法を記録しておきたい。今回はWindows 2000サーバーだが、Windows XPでもWindows Vistaでも基本的には同じだ。
まず、外付けドライブがネットワークドライブだった場合には、
net use z: \\(IPアドレス)\(共有フォルダ名)
でZドライブをドライブ共有設定する。ファイルサーバーに直接USB接続されているような場合ではこの作業は不要だ。
このコマンドはパスワードによる認証などもサポートしているので、もし共有先がアカウントによって制限されているようなことがあれば調べてほしい。
次にファイルを定期的にコピーする方法だが、FastCopyというソフトがある。インストール不要なアプリケーションで、差分だけをコピーする機能を持っている。
たとえば、Dドライブの内容をすべてZドライブに書き出すには、
FastCopy.exe d:\ /to=”z:\”
とすればよい。
あとはこのコマンドを定期的に実行する方法だが、
・タスクを使う
・atコマンドを使う
などがある。詳しくは、こちらを参照してほしい。
(追伸)
FastCopyでは、sync オプションをつけたほうがバックアップとしては適切かもしれない。もしバックアップ元でファイルが消された場合でも差分モード(デフォルト)ではバックアップ先でファイルが消されないためだ。