2010-01-13

lftp mirror でドットファイルを対象にする

以前作った簡単なWebサイト向けRakefile で lftp mirror を使って一部のサイトの更新をしてるんだけど、ドットファイルが正しくミラーリングの対象になっていなかったので、この問題を修正した。正確には

全部アップするときにはドットファイルは対象になるけど、remote の list を取得するときに無視されてしまうので、問答無用でアップするだけで、local で削除しても反映されない。

という状態で、これは具体的には

.htaccess で認証を掛けていたものを外すことができない

というかなりおバカな状態になっていた。これへの対処は

set ftp:list-options -a

と設定を変更するコマンドを与えること。細かい方法はリンク先の Rakefile を grep してもらうとして、基本的には

lftp -e 'set ftp:list-options -a; mirror --delete FROM TO; bye'

って感じで使う。

うん、これで安心して使えるようになった。

ngrep で localhost 宛のパケットを覗く

みんな大好き ngrep. でも ngrep はそのままでは localhost へのアクセスの様子は抽出できない。man にはこのように書かれているので、

-d dev By default ngrep will select a default interface to  listen  on.
       Use this option to force ngrep to listen on interface dev.

例えば

sudo ngrep -d lo port 80 (Linuxはこうだと思う)

とか

sudo ngrep -d lo0 port 80 (BSD系はこうだと思う)

とすれば localhost に立てた Apache への通信の様子をみることができる。

ちなみに default interface の決まり方、localhost を意味する loopback interface についている名前、これらは使っている OS によって異なるので、実際にどうなっているかは各自で調べてちょ。

About

例によって個人のなんちゃらです