root修行な日々

Saturday, 02 October of 2004

ノン・フィクション

・CBUG meeting
CBUG meeting 12th を新百合ヶ丘駅の近くで開催。午前 8時には 起床して、9時少し前に会場に到着したかったのだが、起床した ときに時計を見たら もうまもなく 9時というタイミング。
あわてて仕度を整えて、出発。時間を確認すると、バスは、 ほんの少し前に通り過ぎたはず。という訳で 急遽 車で会場に 向かうことにする。
会場の近くの駐車場に車を停めて とりあえず窓口で、部屋の 鍵を受け取り、無事会場に到着。荷物を運びこむ... が、 まだ他には誰も来ていませんでした。
駐車場のタイムリミットは 1時間.... というわけで、たぶん 1時間以内には どなたか到着するだろう と思って その場で しばらく待つことにする。が、なかなか誰も来ない....
その後 40分近く待ってやっと metalさんが登場。事情を話し、 車を自宅の駐車場に戻しに行く。まぁ なんとか 1時間以内 だった、という感じ....
自宅の駐車場に車を戻して、戻ってくると、他のメンバーの 方も 次々に到着。
ふと、気がつくとデジタルカメラを自宅に忘れてきたらしく デジタルカメラが荷物にありません。なので、今回は、 写真撮影はなし...

Saturday, 16 October of 2004

ここ数日(?)のこと

・CBUG合宿
11初旬に CBUG合宿が計画されているので、それに参加を 表明しておく。今回も車で行く予定。(電車だと、それなりに 空いていれば 移動中は楽だけど... 時間の制約がちょっと きつく、待ち合わせで時間が掛かったり、あまり大きな 荷物は持てないし(そんな大きな荷物はないはずだが...) 混雑していると、嫌なので...)


・電車に乗っているときの地震
6日の帰りの電車に乗っているときに大きな地震があった らしい。どうやら 震度4だったらしい... 電車が走っているときに揺れたらしく、地震があったことには 気がつかなかった。電車が、駅のホームに着いてドアを開けた ときには 乗降する人が少ない割には 車体がゆれているなぁ... とは思ったけど...
その後 数分駅に停車したのち運転を再開したが、 速度を落としてゆっくり運転している。
新宿駅には 相当の遅れで到着。ホームに着いたら、(乗ろうと 思っていた)終電の前の電車が定刻通りに発車していくところ だった。という訳で小田急線は 地震の影響で遅れてはいない。 JR線が遅れたため、新宿では終電になってしまう。
終電の電車は既にホームで発車待ちの状態で停車しているので、 それに乗り込む。先行した電車が定刻で発車したので、この 電車も定刻で発車できるはずだが、JRが遅延しているので、 連絡のために 8分遅延して発車。さらに途中駅でも他社線の 連絡待ちでさらに数分遅れ、最終電車だけで 15分程度 遅れたはず。乗れるはずだったに 乗り遅れた急行電車からの 待ち合わせ分を含めると 33分以上遅れたことになる...

・台風22号
9日頃に台風が直撃。昼過ぎから夕方に掛けて 強い雨と 風が... かなり激しい雨が降ったようです。
しかし 夜になる頃には台風は過ぎて、風雨もかなり落ち着き、 帰路につくころには、全く影響なし... という感じ...
しかし、小田急のWebの運行案内では 小田原線の運行は 台風の影響で、大幅な遅れが生じている と案内されていたけど 実際には 1〜2分程度遅れただけで、大幅な遅れではなかった。 遅れていると思って 遅めに行ったら、乗り遅れるところだった...

・四谷三丁目
15日に ミーティングがあったので、出席する。

・車内トラブル?
15日の帰りのこと。改札に到着したら、既に電車が到着していて、 降車した人が既に改札を通っていた。 通常ならもう間に合わない ので、あきらめて、ゆっくり改札を通ってホームに出る。 しかし電車はまだ発車していない...
どうやら先行した電車の中で車内トラブルがあって、次の 駅で停車中なので、発車できないでいたらしい。
その後、遅れて発車。次の駅ではトラブルの原因となった、 当事者がホームで駅員に制止されながら口論中... だった
Perl script

・連携テスト
複数の PC(FreeBSD/Linuxなど...) で関連するプログラムの 動作テストを可能な限り自動化するために... とりかかりの script を書くことにする。
とりあえず、ssh で接続できるようにするために Net::SSH::Perl モジュールを手元で 入れてみる。
とりあえず、ssh で通信できるようになったものの、 関連するモジュールの数が多すぎて、動作するようにするのは、 面倒... (^^;
ということで Net::Telnet を入れて試してみる。 これは、 IO::Socket::INET のラッパーで、簡単だけど コマンドの 実行が終わらないと 戻ってこないため、相手側の 出力を 監視する用途には、不向きかも...
というわけで、Net::Telnet でいいところは、それを使い、 基本的には IO::Socket::INET を使って書いてみることに しようと思う。まずは 環境チェック用...
#!/usr/bin/perl
use strict;
use English;
use IO::Socket::INET;
use Net::Telnet;

sub remote_exec {
    my ($telnet, $cmd) = @_;
    my @result;
    print "\n=================== remote =================\n";
    print "$cmd\n";
    @result = $telnet->cmd($cmd)};
    print $_ foreach(@result);
    \@result;
}

sub local_exec {
    my ($telnet, $cmd) = @_;
    my @result;
    print "\n=================== local =================\n";
    print "$cmd\n";
    @result = `$cmd`;
    print $_ foreach(@result);
    \@result;
}

sub ping_check {
    my $result = shift;
    foreach(@$result) {
        return $1 if (/transmitted, (\d) packets received, /);
    }
}

# 相手に pingを送ってみる
my $result = local_exec '', 'ping -c 1 -t 5 hogehoge....';
ping_check($result) or die "No echo reply message!\n";

# ping が届くので telnetする
my $telnet = new Net::Telnet(Timeout => 10, Prompt => '/^\w+\@\w+> /',);
$telnet->open('hogeoge....');
$telnet->login('username', 'password');

# hpge1 のコマンドの存在をチェック
$result = remote_exec $tenlnet, 'ls -1 /any/path/to/command/';
die "Not found command on remote host\n" unless ($result);

$telnet->close;

print "Success\n";
		
※このスプリクトは全く実行していない。イメージだけ...

こんな感じで とりあえずはじめてみる。実際には、チェック先 のホストやコマンドのリストなどは 別途 設定ファイルに書ける ようになっている。
お出かけ

・エルミタージュ展
江戸東京博物館で開催されている エルミタージュ美術館展が 明日で最終日になるので行ってみる。 (博物館なのだが、美術館展が実施されている)
大変な混雑でした。展示会場に入場した直後あたりから、 入場制限が実施され、約2時間後に出てきたら、入場まで、 40分待ちの状態になっていました。

Thursday, 21 October of 2004

ノン・フィクション

・昨夜の帰路
台風23号が 夜中に関東圏を通過する予報が出ていて、 交通機関がちょっと心配になる。
22時過ぎに帰路につく。そのときは、雨が強く降っており わずか 数分だったが、ちょっと悲惨な状況に... 傘があまり 役に立たない? でも、傘がないともっと悲惨なのだが....
その後、御茶ノ水駅で快速電車に乗り換えるが、神田 - 四ッ谷 の間で 15km/h の速度制限が実施されており、御茶ノ水駅から 四ッ谷駅まで30分弱。その後、新宿までは ほぼ通常だった (? それでも少し速度を抑えている感じがした)ので 新宿までが早かった感じが...
その後、小田急小田原線に乗り換えるが、あきらかにいつもより 人が少ない... 各駅停車の電車で 自宅の最寄駅近くでは、 1両に 5〜6人程度しか乗っていない... ほかのみなさんは、 早く帰宅されたため、少なくなっていたのかも
駅を降りると、既に雨は上がって、雲も切れはじめていたし、 星も見えた。台風の南側は 雲がなくなりはじめていた ようです。

・雨漏り?
雨漏りの対応をする駅職員
昨日の帰り道。とある駅にて、ふと見ると 激しい雨のためか 雨水がホームの上に流れ落ちているようで、職員の方が、 ビニールシートで 流れ落ちる雨水を防ごうとしていました。


・ガス点検
昨日(20日) のこと。 20日の午前10:30〜11:30に立ち入りにて ガス設備の点検を行うとの通知が...
仕方ないので 10時少し過ぎから 待っているが 11:20になっても 誰も点検に来ない。 台風で雨が降っているから 多少手間取って いるのかな? と思って待っていたが それでもちょっと遅すぎ... という訳で業者に電話してみると、確認して 折り返し電話を してくれるということに...
しばらく待つことにするが 20分近く経っても電話が来ない。 20分を経過したらもう一度電話してみよう、と思っていた ところに電話が...
業者:「すみません、 9時40分頃にお伺いしたのですが...」
私: 「この案内には 『10:30〜11:30』 って書いてあるけど」
業者:「え、すみません、そうでしたか... 改めて お伺いして 点検したいのですが...」
私: 「今日は、もう困ります。来週にしてください。」
業者:「わかりました、来週 調整させていただきます」
というわけで、来週に延期。
しかし、予告より 1時間弱も早く来ていたとは... 行き違いに なっても こちらには責任はないですよね...

・神田川
神田川 神田川
御茶ノ水駅のホームから見える 神田川。台風の大雨のためか、 いつもより 水量が多いように思えます。


・スクリプト
Net::Telnetを使って 簡単なスプリクト。 これで shell-script から リモート先のPCにコマンドを実行させて その結果を取る ことができる...
#!/usr/bin/perl

use strict;
# use English;

use Net::Telnet;

sub usage {

    print << "__EOF__";
usage:

    .....

__EOF__

    exit 1;

}

sub check_env {

    my $param;

    $param->{USERNAME}  = $ENV{TELNET_USERNAME} || 'hoge';
    $param->{PASSWORD}  = $ENV{TELNET_PASSWORD} || 'foo';
    $param->{PROMPT}    = $ENV{TELNET_PROMPT}   || '/\$ /';
    $param->{TIMEOUT}   = $ENV{TELNET_TIMEOUT}  || 10;

    $param;
}

my $param = check_env;
usage unless ($ARGV[0]);

my $telnet = Net::Telnet->new(
    Timeout => $param->{TIMEOUT},
    Prompt  => $param->{PROMPT},
);

$telnet->open($ARGV[0]);
$telnet->login($param->{USERNAME}, $param->{PASSWORD});

if ($ARGV[1]) {
    print "$ARGV[0]> $ARGV[1]\n" if ($ENV{TELNET_ECHO});
    print $_ foreach($telnet->cmd($ARGV[1]));
    print "\n";
} else {
    my @result;
    my $line;
    while (<STDIN>) {
        tr/\n\r//d;
        print "$ARGV[0]> $_\n" if ($ENV{TELNET_ECHO});
        @result = $telnet->cmd($_);
        foreach $line (@result) {
            print $line;
        }
        print "\n"
    }
    print "\n";
}

$telnet->close;
		
※このスプリクトは簡単なテストしかしていない...

こんな感じ....
株式市場

・TOPIX
9ポイント弱の続落。出来高は 12億9000万弱。

Friday, 22 October of 2004

ノン・フィクション

・昨夜〜起床
なんだか、4時頃まで眠れず... 4時過ぎに眠くなったので、 そのまま寝る。 起きたら 9時過ぎ...
もっと早く寝て、早く起きるようにしたいが...
株式市場

・TOPIX
6ポイント弱の反発。出来高は 12億6000万強。

Saturday, 23 October of 2004

買い物

・買ったもの...
取り付け前 取り付け後
ベース、ケーブル、空中線を買ってきて、取り付けてみる。空中線は、 デュアルバンド対応型。利得は それぞれ2db, 3.8dbあるらしい。
ケーブル配線したあと 買ってきたケーブルと無線機側のコネクタの 形式が違うことに気がつく。買ったときに勘違いしていたらしい。
うーん 形状の変換コネクタを買ってくるか...

Monday, 25 October of 2004

天災

・新潟県中越地震
土曜の夕方に、新潟県で大規模な地震があった様子。 その地震の波は 私の住んでいるところにも 伝わって きた。 震度は 2〜3程度かも...
部屋にある蛍光灯のひとつだけが 他より大きく揺れていた... たぶん 地震の振動と共振したのでしょうな...
自宅では 特にものが崩れることなく、被害はなにも なかった... しかし遠く離れた新潟の波が ここまで 伝わってくるとは... 毎回のことながら、自然の エネルギーの大きさを感じないではいられない....

Tuesday, 26 October of 2004

ノン・フィクション

・昨夜〜今朝
ちょっとしたタイミングで最終電車を逃してしまったため、 勤務先で、作業したり.... 仮眠を取ったり...
適当に食事に出るが、早朝だと人も少ない....

・買ったもの
切符を買って 移動する電車の席を確保しておく。

email to Tetsuya Ryuchi

Copyright 1999, 2000, 2001, 2002, 2003, 2004 By Tetsuya Ryuchi