2003-06-01 5137歩
λ [Windows] S.F.のProgramming Page
ActiveX Scripting Hosts を C++ から利用する話の断片。
The Code Project - Adding Macro Scripting language support to existing ATL/WTL Application - WTL
やりたいことに近いんだけど、サンプルとしてはでかすぎ。うう。
223139 - HOWTO: Add Support for Hosting VBScript to an ATL Application
これだ! ただし実際にやってみると、Fire_MyEvent に関する説明がすっぽり抜けているのでイベントに関してはそのままでは動かない。 Dr. GUIとCOMイベント:第2部 を理解せねばー。
log of what's new in Rubyavailable の1999/6/5
C++からRubyScriptを呼ぶ方法についての断片。スマートポインタを使っているおかでげ少しすっきりしている。 223139と合体させると吉。
[COM:02006] VC6+ATL でTLB ファイルに定数定義を含ませる方法
定数定義のサンプル。
このメールに定数定義はIDLファイルを手で書けという話が続いている。 IDLファイルは自分で編集するべきソースファイルの1つらしい。イベントを設定するにも必要そうだし。
定数については、サンプルのようにIDFファイルに記述するとMIDLコンパイラが生成したヘッダーファイルに普通のenumとして取り込まれ、 C++からそのままのシンボルで利用できるようになる。
2003-06-02 10612歩
λ [CLIE] PEG-S300復活
接触が悪くてUSBドライバのインストールに一度失敗すると、「不明なUSBデバイス」として登録されて、以後何も反応しなくなる。コマンドプロンプトより
set devmgr_show_nonpresent_devices=1 start devmgmt.msc
ですべてのデバイスを表示させ、「その他」カテゴリにある「不明なUSBデバイス」を削除することにより、新たに認識してくれる。
スケジュール管理は携帯電話上のJavaでさくさく動いてくれるようになるのが理想だけど、そこまでは現在の携帯は行ってない。 スケジュールとTODO見るだけならPEG-S300でも十分だし、PC側はサイボウズAGシンク買ってもらっているので、そいつで生活することに。
Palm工作室
ここから Crs-MeDoc, Crs-Memo
ATool!
バッテリ管理ソフト
Today
PocketPCのTodayみたいな画面。Todayは良く出来てると思うので、PocketPC使うにはOutlook必須でさえなければなあ…
Palmのインライン版POBox
入力する文字列の種類は少ないはずなので日本語入力にはPOBoxがよさげ。CLIE標準のATOKとは共存できなかった。 貧弱辞書でスタートするとその昔 SKK の S辞書で生活し始めた時のような気分。
WindowsCEの場合はComPOBox で検索すると吉。
2003-06-03 6996歩
λ [NetBSD] NetBSD 1.6.1 Release Announcement
ASAHI-Netがフレッツ工事で2時間ばかし落ちる予定らしいので、NetBSD-1.6Q から NetBSD-1.6.1 にアップデート作業。 pkgsrc を最新の状態で運営するため hogeマシンの /home/NetBSD-cvs にCVSのリポジトリミラーはCVSupを利用して同期済み。
cvs -d :ext:hoge:/home/NetBSD-cvs/main checkout -r netbsd-1-6-PATCH001 src でソースを取り出して build.sh
…だけにすりゃーよかったものを、FreeBSDのbuildworld&installworldに相当する作業をしようとして大変なことに。
build.sh -d でディストリビューションを作成し、カーネルを入れ替えてリブートすると、なぜか /bin/sh が動作しない。 いつの間にか /bin/sh が /usr/lib/ 以下のダイナミックライブラリを参照するものに置き換わっていた。いつそんな悪さをしたんだ>俺。 結局LiveCDで起動して作成しておいたディストリビューションで /etc, /var 以外のシステムを上書きした。
NetBSD-currentがダイナミックリンクにしていた模様。ついでに -current が pthread ライブラリ対応なおかげで、pkgsrcの www/apache2 が NetBSD-1.6.1 の上で作成できない。cvs checkout -r netbsd-1-6-1 pkgsrc で取り出すと、apache-2.0.44 で出てくるし。 NetBSDは何かとRELEASEベースの生活しずらいのう〜。
λ [CLIE] Bluetooth
やふおくで買ったPEGA-BT700 + GW-BH01U 到着したので、BluetoothでHotsyncするの巻
設定の流れをつかむため、CLIE Park PEGA-MSB1を参考にした。
GW-BH01Uのドライバでインストールされる「Bluetooth Suite」、CLIE側の環境設定内にある「Bluetooth」で検索するとお互いの名前が見える。 CLIE側のBluetooth設定にある「セキュリティ」をリンクレベルにするとパスワードが入力できる。 更にPC側のBluetooth Suiteで「ボンディング実行」でパスワードをする。 PalmOS3.5では、裏では仮想COMを使ってHotSyncしてるだけなので、Bluetooth Suiteで仮想COMの番号を調べて そのCOM番号をHotSyncマネージャのローカルタブで出てくるCOMポートの設定に教えてやる。
HotSyncするためだけにBluetoothに3万出すのは確かに割りに合わないだろうなあと思うが、 今回PC側インターフェース込で5000円弱だったのでBluetoothの勉強代として悪くない出費。
ちなみに落札後、Yahooオークションの利用停止をして6月の利用料は払わない状態にしていたが、落札者の評価は無事できた。
ThinkPad T30 内蔵Bluetoothとの同期
Thinkpad側のBluetooth設定において、「ローカルサービス」は「Thinkpadにおけるサーバ機能」、 「クライアントアプリケーション」は「Thinkpad上のクライアントから別のBluetoothデバイスに接続する機能」。 語義通りっちゃ語義通りだが。
でもってThinkpad側のHotSyncはサーバアプリケーションである。 なぜか最初から用意されていた「Bluetoothシリアルポート」ではうまくいかず、 ローカルサービスに「Bluetooth13」をCOM13として割り当てた。割り当てる際、許可=必要・認証=必要・暗号化=不要 に設定しておく。 またHotSyncのローカルポートをCOM13に設定。
ここまでやったら CLIE側で環境設定→Bluetooth接続。検索をするとThinkpadの名前が出てきて 、それを選択して左下の接続ボタンを押す。 Thinkpad側のローカルサービスで設定しておいた名前「Bluetooth13」が出てくるのでそれを選択すると接続完了。 この状態でHotSyncをかけることができる。
ちなみにThinkpadへの接続はかなり悩んだ後、IBMのサイトから最新のBluetoothドライバを落として入れたら解決したのだった。 tcpdumpの使えないネットワークトラブルシューティングは辛い。
2003-06-04 6656歩
λ [Windows] イベントを発行する ATL COM オブジェクト
通常の Visual Studio の手順([Class View]の中でソース インターフェイス名を右クリックし、 次に[メソッドの追加(Add Method)]を選択)を使用して、2 つのメソッドを加えます。
ソース インターフェースは、ATLで自動生成した場合 _IhogeEvents インターフェースとなっている。
IDLファイルで確認したい場合は、 Dr. GUIとCOMイベント:第1部 の「ソースを使え、ルーク」のところを参照すると、coclass によって指定していることが分かる。
こうやって理解してから改めて 223139 - HOWTO: Add Support for Hosting VBScript to an ATL Application を読むと、 ちゃんとイベントが実装されているのが判明。 ただ Dr.GUI のサンプルではイベントに引数が付いているのだが、引数付イベントをシンク(クライアント)側で定義する方法がいまいち不明。 引数無しなら楽勝。
とりあえずプロパティ経由で値を渡せるから関数としては引数なしでいいか。プロパティ経由のが抽象化の意味でも正しそうだし。
スマートポインタ?
プログラムを理解するついでにCComPtr等のラッパークラスを使って、 deleteやらRelease()でリソースの解放をしないで済むようなプログラムに改造していた。 IUnknownとオブジェクトはリソース管理上は一心同体なんだなあと思ってみたり。
COM Meets Ruby
そろそろActiveScriptRubyのソースを読むのも面白いかもしれない。
超高負荷環境のWindows2000ServerでもActiveScriptRubyが動かせるという確証が得られれば幸せだもの。
Rubyを256倍使うための本 邪道編 の91ページを読んだら今回やったようなことが書いてあったよ。
Active Scripting APIs: Add Powerful Custom Debugging to Your Script-Hosting App -- MSDN Magazine, December 2000
ScriptingHostにデバッグ用インターフェースをつける話。難しそう…
How to program RubyScript in C++
とりあえずC++からスクリプトを呼ぶサンプルとしてはここのがベストだったかも。ATLもMFCも使っていない。なかなかスゴイ。
λ ATLでがしがし実装中
なかなか楽しい。VisualStudio .Netについてくる ATL7.1 はかなり拡張されていてイイ感じ。
λ [FreeBSD] 5.1-RELEASE
そろそろアナウンスか。
非常用にGENERICカーネルを /boot/kernel.GENERIC にインストールするには以下のようにする。
cd /usr/src/sys/i386/conf; config GENERIC cd ../compile/GENERIC; make depend; make sudo make KODIR=/boot/kernel.GENERIC install
KODIRを設定するのがミソ。 ちゃんとバックアップも kernel.GENERIC.old に作ってくれる。
あと過去の遺物 /bin/rmail は消すべし。UUCPでもしてない限り要らないはず。
λ TravelMate C110TCi
Centrino(CPUがPentiumM)で最大2GBメモリ、標準でIEEE1394なDVD/CDRWというあたりが萌え。 1.5kg以下ノートの中では個人的に本命だにゃ。TabletPCだけどー。(キーボード付)
λ /.-J
面白いと思う話題に限って日記巡回の一周遅れで掲載されるあたりが終わっている…
- 投稿記事は匿名
- モデレートは記名、マイナスモデなし
- メタモデレートは匿名、プラスメタモデにより「モデレート係数が上がる」
みたいなモデルで、モデレータごとに「ポイント入れたコメント ポータルページ」みたいなのを作るはどうか。
wakatono氏がフェードアウト気味なのもマイナスポイントなのかも。
2003-06-05 6939歩
λ mod_ruby入門?
ActiveScriptRubyはマルチスレッド化で悩んでいるっぽいのをなんとか出来ないかといろいろ考えていたが、 mod_rubyの実装方法を見てActiveScriptRubyも同じように実装できないもんかと。
結局のところWindows上でのActiveScriptPageの代替として eRuby が使いたいだけなわけで、 eruby-run.rb のようなエンジンって出来ないかしら。 できればISAPI DLLでasp.dllの置き換え出来るとベスト。
λ IE5.01〜6に任意のコードが実行できる、深刻度“緊急”の2種類の脆弱性
バッファオーバーラン対策はきっちりやらんと>自分
λ NTT東西、「フレッツ広域化」を提供エリア全地域に拡大
フレッツグループアクセス(ライト)がますます有用に。
λ ガートナー、PDA利用者の意識調査を実施
もはや携帯電話に対するPDAの利点ってPCのデータと同期できるぐらいしか無いと思うんだよねー。
PDAがもっと受け入れられるためには、 通信インフラを含めたPDAにおける電子メールの利用環境を整えること、 文字入力機能を中心とした使い勝手を向上させること、 通勤時などに有用性を感じるアプリケーションを整備することが重要
は単体PDAとしては的外れだと思う。「携帯電話と合体したPDA」という意味であれば当たりだと思うが、たぶんPDAとは呼ばれない… 開発費の出所は携帯電話会社だろうし。
あ、Graffiti+POBoxでの単語入力も結構快適。ペンタブレットとしての展開も何かないかしらん。
λ [CLIE] Crs-Memoの手書きメモPCビューア
というか画像ファイルコンバータ。
画像データは左上から、右方向優先x下方向 のスキャンで格納されている。 キャラクタとして0x30から0x6Fを使うbase64もどきエンコードと思われる。
タイトル文字列部分を除くと2808文字なので 2808*(3/4)*8=16848 bits。 横幅は160から枠線分除いたピクセル数なので158,156と試すと、156x108 pixel=16848bits だろうと目途が付いた。 Ruby/GDの勉強がてらPNGへのコンバータ作成。 base64もどきエンコード文字列crs64strからオクテット単位の@pixarr配列作成までわずか2行とは〜Rubyの底力なり。
6pixelごとに左右反転なのは、エンコード文字列の時点で4文字(32bits)ごとにバイトオーダーが逆に出力されているのであろう。 @pixarrの時点で順序が正しくなってる方が美しいけど、後から目視で気づいたんだからしょうがない。 後日もしも出力メソッドを増やすことがあったらリファクタリングを考慮する。
CrsMemo2PNG
CGIで作ってみた。 色の選択はColorMatch5Kを使った。そのうちCGIの中に色の選択機能を組み込みたい。
λ オープンソフトウェアについて徒然と
主にMatzにっきのコメントを読んで考えたこと。 オープンソフトウェア を思想(や宗教)と呼ぶのが嫌なのであれば、戦略と言い換える といいのかしらん。
「ソフトウェアをいかにプロデュースするかという戦略の一つ」がオープンソフトウェアであって、 その中で開発者がHappyHackingできるようなそれなりの対価を得るためには、 別の戦略を取る外界との軋轢はどうしても生じると思う。 啓蒙なり直接的な闘争なりは誰かがしなきゃいけなくて、 開発者とは別に矢面に立つ人がいるのはとても幸せなことなんだろうなあ。
白黒はっきりするモノではないのだけれど
オープンソフトウェアもフリーソフトも大雑把に「低コストでなるべくみんなが幸せになるモデル」に含めて、 一方「俺だけが幸せになるモデル」があると考える。
無自覚にソースを公開するとか、正当な対価を全く受け取らないことは、 間接的にジャイアンに搾取されて「俺だけが幸せになるモデル」に与することになるということに気づくべきだ。 「お前のものは俺のもの、俺のものは俺のもの」はマズイっしょ。
2003-06-06
λ [tDiary]アンテナよけ設定
disp_referrerプラグインのオプションによりアンテナからのチェックそのものを記録しない設定をした。 共通設定ファイル /usr/local/etc/tdiary.conf の中に以下の行を追加。
@options['disp_referrer.deny_user_agents'] = ['TAMATEBAKO','WWW-Dancing-Bee']
mod_rewriteでのアンテナよけ設定
上記のoptionsでよさげなんだけどなあ。なんかうまくいかないので、TDS時代と同じパターンの Rewrite ルールを書いた。 どうせhtml_anchor用のRewriteルール必要だし。
tdiary/.htaccess (ここの .htaccess) のうちRewriteの部分
RewriteEngine on
RewriteBase /~h/tdiary
# アンテナからのリクエストは hina.di へねじ曲げる
RewriteCond %{HTTP_USER_AGENT} ^NATSU-MICAN/.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^WDB/.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^TAMATEBAKO/.*
RewriteRule ^$ hina.di [L]
# html_anchor 用
RewriteRule ([0-9]+)\.html$ index.rb?date=$1 [L]
# なんとなく index.html もアクセス可能にしてみた
RewriteRule index.html$ index.rb [L]
λ [FreeBSD] Subversionのrubyモジュールを作る(失敗)
Subversionを展開すると、subversion/bindings/ruby に extconf.rb のあるディレクトリが存在する。
ruby extconf.rbを実行すると、
devel/apr の作った apr-config が /usr/ports/devel/apr 以下を参照しようとしてみたり、
そもそもdevel/subversionが作った svn-config が消滅していたりする。
仕方がないので
sudo portupgrade -fwW devel/libtool devel/apr devel/subversionで ports 以下にソースとbuild済環境を構築して
ソース・バイナリを置きっぱなしにしておく。
cd /usr/ports/devel/subversion/work/subversion-0.23.0/subversion/bindings/ruby; ruby extconf.rbするが
libaprutil-0.o に関数がないと文句をつけてうまくいかない。何故だー。
あきらめてRuby Module for SWIG経由にしてみる。
/usr/local/etc/pkgtools.conf
MAKE_ARGS = {
'devel/swig13' => 'SWIG_LANGUAGES="perl ruby"' ,
}
を設定してから、pkginstall devel/swig13。もいちどpkgupgrade -fwW devel/subversion。
…だめだ。SWIG/Ruby のためのMakefileが全然書いてなーい。まともに存在するのはPython用だけ。
swig -module SVN -I/usr/ports/devel/subversion/work/subversion-0.23.0/subversion/include -I/usr/local/include/apr-0 -ruby apr.i
とかやると一応だいたい通って言語別の実装をなんとかする部分util.iとその下請けswigutil_ruby.[ch]を書けばよいらしい。
λ [CLIE] スラッシュドット ジャパン | PDAの満足度調査、発表
「俺の使っているソフト」へのリンクが有用であった。
高機能電卓はLISPで
KazHat HomePageの数式表示・編集機能付き関数電卓FuncCalcにちょっと興味を持って、 Muchy's 置き換えアプリ/電卓を眺めたら LispMe発見。どー考えても俺用電卓はこれしかない。 Windows上でさえxyzzyの*scratch*でCommonLisp電卓生活してるぐらいだ。
LispMe
Socketは作れるわ絵も描けるわ予想以上にスゴイぞこれ。
DOSモバ
MC-MK32をやふおくで売ると5万円ついたりするのかー。名機とはいえびっくり。確か箱は引越しの時に捨てちゃったよなあ…
λ ウォールポケット Pokemon p.i.g.
この可愛さは破壊力抜群。
2003-06-07 762歩
λ [CLIE] Palm Desktop File Formats by Helphand
HotSyncでバックアップしたメモデータを直接読み書きしたい場合に参考になるファイルレイアウト。
λ [CLIE] Pocket Smalltalk
LispMeの欠点は単独アプリにならないことらしい。Pocket Smalltalkならアプリケーションが作れる。
軽くドキュメントを読んだらその昔Smalltalk→C++の移植でCollectionクラスと闘った記憶が蘇ってきた。 でもCLIE用アプリ作りたいと思うことは無いであろう… PDAで開発することがあるとすれば多分 CE.NET。
λ [NBA] Final 第二戦
今日は新聞サイト禁止>自分。
第一戦はうっかり結果知ってしまったからな。 第一戦は3Qでほとんど勝負ついた試合だったから問題なかったけど、接戦の4Q最後1minの結果知ってたら激しくガッカリだ。
λ オーダーボックス.com
ゆうぱっく大スタイル(上箱と下箱が分離しているタイプ)でロゴ印刷できたらいいなあと5年以上前から思っているのだが。
λ [tDiary] user_css2.rb
title_link プラグイン専用のスタイルシートを、配布されているテーマに手を入れずに記述したかったので作った。
当然user_css.rbを参考にしたわけだが、
add_header_procがあるというtDiaryの仕様を知った以上の痕跡が残らなかったのでCopyrightは自分にしてしまった
。
(現在は未使用のためソースは削除)
tdiary.conf への設定サンプルはこんな感じ。
# @options['user_css2.uri'] = 'http://hoge/css/hoge.css'
@options['user_css2.source'] = <<CSS
/* for title_list plugin */
div.recentsubtitles { font-size: x-small; }
CSS
dailyupdate.rbと違って万人受け系のプラグインなので公表に向けてtdiary-devel メーリングリストに参加登録した。
λ オープンソースから例えば DPL へ
OpenSourceDefinition と呼ばず Debian Public License と呼んだ方が誤解を受けなかったのではないか。 GPLに反発する人はそれなりに存在するけど、GPLを誤解している人はあんまりいないと感じるので。
オープンソースという単語だけを初めて聞いた人が誤解したとしてもそれは責められない。 DPLと呼んでおけば「なんすかそれ?」と向こうから聞いてくれる可能性が(オープンソースよりは)高いはずだ。 オープンソースの定義を啓蒙するよりその方が低コストだと感じる故に、 僕は「オープンソース」という単語への誤解を解くコストを払うのは見合わないと思う。 「オープンソース」という単語にどうしてもこだわりたい人(こだわらざるを得ない人?)には頑張って下さいとしか言いようがない。
ちなみにオープンソースの定義については今回の騒動で初めて知りました。
λ [CLIE]Keyring for Palm OS
void GraphicWizardsLair( void ); //より。
しかし最重要機密情報のTripleDESでの暗号化じゃ俺的に強度足りんなあ。ちょっと調査。 PDA DefenceだとAESとかサポート。
λ [CLIE] Strip パスワード マネージャ
Strip 1.0 uses strong 256 bit AES encryption.
ライセンスはGPL。これだ!
Beam accounts and categories to other Strip users! This is a useful feature in distributed system administration environments.
「hogeサーバに新しいアカウント作ったからパスワード教えるよ。CLIE出してちょ」という時に使う機能らしい。
パスワドポン
カードポン!に倣って、 赤外線通信した瞬間にアカウントを生成する「パスワドポン」という機能拡張をすれば、 「アカウント欲しいんだけど」「CLIE出してちょ。…じゃあこれでアカウント作っとくから」 という展開もありか?
- アカウント作成依頼者は「自分用アカウント名」(第三候補まで?)を保持して管理者のCLIEに送ることが可能
- 更にMD5/DES等で暗号化された状態の「自分用パスワードエントリ」も管理者のCLIEに送ることが可能。管理者は /etc/master.passwd に貼り付けるだけ。
- どうせ管理者はMD5暗号化されたパスワードエントリが見えるものだから問題ないはず。
- ユーザは「自分用パスワードエントリ」を複数持っているのが望ましい。同じパスワードを複数のMD5暗号化するのは悪い戦略。
- とりあえずDES暗号化されたパスワードエントリとMD5暗号化されたパスワードエントリがあるとよい。OSによってはblowfishも使えるかもね
最大の難点はあんまりPalmOSユーザがいないということだ。やっぱ早くBluetooth搭載ケータイな環境でプログラミングできるようにならんかな。
λ [CLIE] MegaWiki 5.4
Wikiスタイルでデータ間の連携をするものらしい
λ [CLIE] PalmPilot Stuff sntp
sntpで時刻合わせ。しかしCLIEでMailもWebも使う気ないからTCP/IP回りの設定を理解すらしてないんだよな… あんまり時刻合わせをしなきゃという話を聞かないので、Palm系の時計はかなり正確なんではないかと。 時計合わせ3回目ぐらいで導入を検討しよう。
λ [CLIE][FreeBSD]FreeBSD on Bluetooth
FreeBSD-5.1 のソースツリーには /usr/src/src.sbin/bluetooth/ があるけど、build world ではインストールしてくれない微妙な状況。 ドキュメント中の obexapp や sdpd の在り処も不明だけど、CLIEからBluetooth経由でppp接続するぐらいならいけそうな雰囲気だ。
λ blosxomを普及させるには
このロゴみてると「ブロッサムにょ」と呼びたくなるのは俺だけですか。 こんなしょーもないコメントはTrackBackしたくない :-)
λ BLOG / WEBLOGがガイアックスによって商標出願中 /.J
BLOGの行方はどーでもいい。tDiaryが商標で何かされたらアクション取るかもだけど。
そういか東京通信ネットワーク(旧アステル)の商標だった「着メロ」はどうなったんだ。PowerdCOM? YOZAN? 失効?
特許電子図書館で調べたら鷹山がゲットしてた。 ちなみに指定役務:雑誌のは双葉社が持っている。
2003-06-08 0歩
λ [Windows]strsafe.h : C 言語での安全な文字列処理
WindowsのC/C++プログラミングで string.h を使うよりはよさげ。
バッファオーバーフロー問題がこれだけ耳に入るようになると、さすがに昔ながらのlibcステたくなるよな。 UNIXでC言語を使わなきゃだったらApache Portable Runtime(apr)か GLib かlibdjb(?)を覚えよう。
個人的にはSubversionにかなり傾倒しつつあるからaprかな。もちろんapache2も使ってるし。
λ ""
Windowsの " を文字列中でエスケープするのは "" にするという文化をすっかり忘れていた。
λ ハッカーはクラッカーじゃない
をオープンソース騒動にからませる輩は当然出てくると思ったが、 「ハッカーはクラッカーじゃない」は心意気=感情の問題なんじゃないかなあ 。
Matzさんのようなソフトウェア開発者が場合オープンソースを守ることは野望の達成を目指すとともに、 フルタイムでソフトウェア開発をしながらも自らの生計を守らなければならないという状況をふまえると、 ハッカー≠クラッカー問題とは次元が異なると思う。 生計を守るための戦略が(明示的ではないにしろ)含まれているはずだ。
…なんだけど、俺自身も学生の時分にはそーゆーこと全く分からなかったよ。
λ [CLIE] PEG-SJ33
暗号化とかやって遊び始めると速いCPUが欲しくなる罠。スケジューラだけのはずだったのにマジで罠だ… LispMeもPOBox入力と組み合わせると激しく強力そうな予感。あうー。
Ruby載るのが理想ではあるがファイルシステムが普通じゃないからちとキツイ。
λ [FreeBSD] 5.1-RC1
手元のマシンに今インストールしたかったので、ring.asahi-net.or.jp から 5.1-RC1 のISOイメージもってきてしまった。 どうせcvsup生活だし大差あるめえ。
インストーラのカーネルが最初に起動システムの種類を聞いてくるが、その時右半分にデーモン君のAAがあるのにびくーり。
5.1-RC1 インストール手順
- インストーラでは Minimalインストール。packageは cvsup だけ入れておく
- /etc/rc.conf は稼動中のものをパクる。当初 /etc/rc.conf で最低限必要なのはifconfig_hoge と defaultrouter。
- sshで入って supfile-src, supfile-ports, /etc/make.conf, /etc/resolv.conf を稼動中のマシンからもってくる。
- cvsup -g -L 2 -s supfile-src; make buildworld; make installworld
- cvsup -g -L 2 -s supfile-ports; cd /usr/ports/sysutils/portupgrade; make install
- /usr/local/etc/pkgtools.conf を稼動中のマシンからもってくる。
- /usr/local/sbin/portinstall -Wwp でガンガン ports をインストール。手近なマシンでは最初のFreeBSD5系なのでここでパッケージを作る(-pオプション)。2台目以降なら -P。
- 自力コンパイルプログラム群 /local/* を rsync。とりあえず compat4x バイナリで生活。
- -- 気が向いたら再コンパイルするが、自力コンパイルプログラムはほぼ壊滅の何でもports生活だ。
- -- というか残るはpop5smtpのみ。今となっては setgid なプログラムは恥ずかしいので止めたいのだが…設置の手軽さが同レベルのものが見つからない。
λ Nagios 1.1
修正点ずいぶん少ないなあ。もともと安定して運用できてるし。
λ オープンソース定義を拡大せよっ (Matzにっき)
誤解を拡大再生産してよいのか。
誤解が広まるのがいい訳がない。それが*誤*解であるならば。
オープンソースという単語の問題は、誤解が広まるスピードが正しい認識が広まるスピードより速いようだということ。 やるべきことは、正しい認識が広まる正のスパイラルに持ち込むような情報のマーケティングをすることであって、 中心にいる人が正論を振りかざして正面突破しようとすると逆効果という雰囲気になりつつある。
例えばマイクロソフトがWORDなどという一般名詞を商品名にできるのはマーケティングのなせる業なのではないか。携帯電話だってそう。 逆にマーケティングに全く力が入っていないPHSの場合、マスコミが簡易携帯電話という単語を使ってはPHSフリークが「簡易じゃねえーPHSにはPHSならではの利点があるのにー」とガッカリしている。
λ [tDiary] RD styleで引用ができない
PREは簡単に出来るんだけど、BLOCKQUOTEが標準装備でない。はず。
RD Working Draft しか公式ドキュメントがない雰囲気なのもRDがあまり好かれない原因なのだろうか。 あとほぼ唯一のチュートリアルであるrubikitch氏の文章が高圧的な印象を受けるとか。
可能な限り表面に惑わされないポリシーがかなり優先されている俺の場合はそれでもいいがー。
2003-06-09 9531歩
λ しまった
寝てないから昨日のファイルに延々と追加してしまった
λ [FreeBSD] FreeBSD 5.1-RELEASE で kerberos5
やっと出た〜
Kerberos 5 is now built by default in buildworld operations. Setting MAKE_KERBEROS5 no longer has any effect. Disabling the base system Kerberos 5 now requires the NO_KERBEROS Makefile variable to be set.
いつも使っている /etc/krb5.conf を置くだけで kinit 成功。おおおおー。こいつは楽だ。 /etc/krb5.conf のノリとしてはこんな感じのファイル。
[libdefaults]
default_realm = HOGE.HOGE.COM
default_tgs_enctypes = des-cbc-crc
default_tkt_enctypes = des-cbc-crc
kdc_timesync = 1
ccache_type = 4
forwardable = true
proxiable = true
[realms]
HOGE.HOGE.COM = {
kdc = DCになってるWindows2000サーバのホスト:88
kdc = DCになってるWindows2000サーバのホスト(2):88
}
[domain_realm]
hoge2.hoge.com = HOGE.HOGE.COM
[kadmin]
default_keys = v5 v4
[logging]
default = SYSLOG:INFO:AUTH
2003-06-10 10356歩
λ 傘
梅雨に備えてグラスファイバー利用の傘を2本購入。多慶屋で1本1650円(税込)。
λ オープンソースを支える中間層
オタク世界における岡田斗司夫みたいな伝道師がいるといいのかな。 好き嫌いは別として金を生む存在として。
というか「それってタダなんじゃないの?」と主張するエンドユーザから金をぶんどらないといけないんだから、 それなりに悪役でないと務まらない。
λ [Windows] Microsoft Windows XP: Windows XP での全角固定ピッチフォントの仕様変更
個人的には嬉しい変更。というかWindowsXP上のターミナルエミュレーターでMSゴシック10pt使っていて全然気づかなかった。
もしかしてWindowsXPで2chのAA見ると崩れてる?
λ FreeBSD 5.1-RELEASE 公開" /.J
なぜかFTPクライアント談義。RFC2228(FTP/TLS)の存在を始めて知ったが、ファイアウォール越えできるんだろうか。 しかしわざわざ調べるよりはHTTPSなWebDAV。
[FreeBSD] fstabにおける/tmpの設定
5.1ではmdmfsが使えるようになったのでこんなふうにしています。 md /tmp mfs rw,-s800m 0 0
なるほど。
λ [Windows] SQL Mail の設定方法
SQL Mail 2000 を使用する場合に使用できるインターネット メール クライアント アプリケーションは、Microsoft Outlook 2000 のみです。 また、サーバー上で常に Outlook クライアントを開いたままにしておいても構わない場合、Outlook 2002 も使用できます。 SQL Server 2000 Service Pack 1 を適用することにより、Outlook 98 を使用することもできます。 Microsoft Outlook Express はメール プロファイルを作成しないので、Outlook Express は SQL Mail を使用して機能しません
なんじゃそりゃー。メール出すためだけにOutlookのライセンスを買うのは納得いかーん。 SQLServer2000自体はいいプロダクトだと思うんだけどなあ。
2003-06-11
λ Installing, Configuring, and Administering MicrosoftR SQL 2000 Enterprise Edition
赤本を読んでなんとかなるだろと思っていたら、直前に みんなの受験記の書き込みを読んで、 他に比べてかなり厳しい試験らしいという書き込みを読んで冷や汗。 更に掲示板の書き込み中には知らない単語がぱらぱらと出てきたのであわてて一夜漬けした。
合格点ぴったりでぎりぎり合格。あと1問落としたらダメだったのか。 チューニングの方法について色々知識が得られたので有意義な試験勉強だった。 次回は 070-229。 掲示板見る限りXMLの実装をちょっと勉強すればよさげ。
λ [Windows] 米Microsoft、アンチウイルス技術をWindowsに組み込む意向を表明
まかひーと一緒になるのかと思ってたらルーマニアの会社を買収と来ましたか。
λ [tDiary] http://www.tdiary.org/
ってそれ自体が tDiary なんだけど、誰でも編集できるようにすればそのままWikiFarmなんじゃあ。 しかも update.rb へのアクセス制限をしないだけで実現。
portsじゃないものは極力入れたくないし、tDiaryの複数サイト運営したいし、HikiFarmよりそっちか。 URLが日付なのも超整理法だと思えば無問題。
Wiki利用の場合の勘違い対策勘違い対策
個人的野望としては、tDiaryのバックエンドストレージをSubversionで自動バージョニングにして、 勘違い書き込みや消去されても元に戻せる、ちゅーのを目指しております。
とはいえ見た目をなるべく日記から離れた感じにするのは大事そう。
λ バックアップじゅーよー
rm *~ するつもりで rm * ~とスペースが入ってしまった。あっ!! 通常ファイルが全部消えたぞ。
でもSubversionのワーキングディレクトリだったから全然平気。svn update で復活だ。 100万ビットの暗号鍵でいまだ破られず 100万ビットの総当りには確かに強いだろうけど、ここまで無駄に長い鍵だとなんか抜け道がありそうな気がして仕方ないんですが…
100万ビットの暗号鍵を使用するにもかかわらず高速に暗号処理ができるという。
こんなこと言ってるし。
2003-06-12 付け忘れ 歩
λ [FreeBSD] cvsup-mirror
複数台のFreeBSDマシンを管理する場合 cvsup-mirror でリポジトリを持っていると便利なのだが、 リポジトリを自分で変更することはほとんどありえないため、cvsup に対して -s オプションを付けるとよい。 (ローカル側のファイル変更を検出しないオプション) cvsupサーバへの負荷が低くなるし、なにより圧倒的に速い。
たまに壊れているかもしれないので、週1で-sオプションなしで同期してみる /etc/crontab の例:
30 5 * * 0-5 root /usr/local/etc/cvsup/update.sh -s 30 5 * * 6 root /usr/local/etc/cvsup/update.sh
NetBSDのcvsupに関するページに「お願い」として記述がある。
自動で取りに行くのを -s ありにして、「なんか変だ」と思ったら手で同期するでもいいかも。
λ [Windows] SuperServer 6013P-8のWindows2000インストールメモ
- BIOS設定
- 時計を大体合わせる(±5分以内ならOK)
- PnP ResetConfiguration Data [Yes]
- Power Loss [LastState]
- ECC Error [SMI]
- ACPI [Yes]
- Windows 2000 のインストール(SP2適用済CDROM)
- 追加ドライバのインストール
- NIC
- QLogic GEM 318
- ドキュメント通りにインストールできなかった。最終的にドライバが必要なわけではないので放置でも問題ないと思うが気分の問題でちゃんとインストール。
- GEM318.infを右クリックで「インストール」を押してOSにINFファイルをインストール。
- デバイスを削除してから「ハードウェアの追加」
- 手動インストールの「その他」デバイスに出てくるのでそれを選択。
- Windows 2000 ServicePack3 の適用
- w2ksp3 /u /f /o /n /q コマンドでいつも入れている
- ドメインへの参加
- ActiveDirectoryドメインに参加させる
- ドメインコントローラの「ActiveDirectoryユーザとコンピュータ」でSUS(SoftWareUpdate)を適用しているOUに移動
- そのうちローカルのSUSサーバマシンから自動更新がダウンロードし終わる
- IE6SP1のインストール
- BIOS設定で起動をHDD優先にする
- MDAC2.7のインストール
- 自動更新が終わるのを待つ
- WindowsUpdate で重要な更新以外で必要そうなものをインストール
- 要らんものは DirectX,WindowsMediaPlayer, WindowsJournalビューア
- .Net Frameworkはそろそろ悩みどころだが今のところ入れない
- 別のとこで使うマシンなのでドメイン参加を止める
- セキュリティの構成と分析でいつものポリシー適用
- すっきりデフラグでChkdsk付のデフラグ実行
λ NetVolante『RT57i』
RADIUSさえ採用してくれれば文句なしだったのに。SNMPとOSPFはあきらめてもいいから。
2003-06-13 5469歩
λ PEG-SJ33
買っちゃった。CPU3倍速いと全然違うわ。
売り場でPalmOS5マシンにも一瞬惹かれたけど、 Graffitiエリアが無いのに気づいて超却下。 ソフトウェアGraffitiとかいって画面を占拠されたらGraffiti使う気が失せるじゃんか。
λ ドメイン登録
.infoなドメイン登録の代行依頼を受けた。verisign.co.jpよりonamae.comのが安いけど、うーん。
結局昔ながらに www.networksolutions.com 利用。別のとこだと新規にネームサーバの登録するのが面倒 だし。 何で日本のベリサインあんなに高いん?
2003-06-14 7124歩
λ [CLIE] Jog Launcher
なんでもJogダイアルで生活が楽という話だったんだけど、どうもToday画面を基点にする操作体系が楽で全く活用されていない。
おそらく電車で文章読みに使ってないのが活用できない原因。 電車の中ではMCP用赤本を読んで、気になった所をTODOに突っ込むというのが主な利用スタイルだ。
λ Script/Ruby
dailydoc.rb が sitescooper のRuby版。Web巡回してPalmのDOCファイルを作成するらしい。一応メモ。
λ [CLIE] Unix Softwares for Palm
定番ぽいけどあまり惹かれるものがないなあ。portsにあるp5-Palm モジュールはColdsync由来のもの。
2003-06-15 6978歩
λ nagios
で監視対象を外す監視対象のサービスそのものが無くなった場合、servises.cfg からエントリを消すことになるが、エントリを消しても警告が出っぱなしになっ てしまう。
この場合/usr/local/var/nagios/status.sav から該当のサービスの行を削除する。
たぶんnagiosのプロセスは停止させておいた方が安全。daemontoolsで管理なら
svc -d /var/service/nagios→status.savの編集→svc -u /var/service/nagios
λ OPENDATASOURCE
ここの例を見ると、SQLServerでなくてもJET OLEDB 4.0を使うとExcelのデータをSQL文でとってこれるような雰囲気。 xactions ってなんじゃらほい。
2003-06-16 9994歩
λ [CLIE] ロットリング マルチペンエグゼクティブ データ
CLIEロゴ入りのSTEADLER 4in1 ペンを同僚に見せたら、「これだよ〜」と黒いボディに赤いリングのペン登場。 見ただけでロットリングのオーラを感じてしまう俺(笑)
あれに対抗するにはマルチペンエグゼクティブしかあるまい。 定価販売すら多い中、表題のリンク先Pen-houseでは名入れ+送料も含めて6000円と安い。 同僚はエグゼクティブでない方を5000円で買ってたらしい。
CPUはケチってもユーザーインターフェースはケチりませぬ。 腱鞘炎やそこまで行かなくてもマッサージ屋に行く羽目になる時の金額を考えればスタイラス6000円は安いもの。 と思いながら他のペンを見ていたら物欲が〜〜まだ文具マニアの血が流れているのだなあ。
Cross Matrix
久々に万年筆生活に戻りたくなった。 大学受験当時ものすごい勢いで万年筆のインクを消費して勉強していた。消しゴムは勉強の邪魔。 間違いの履歴こそ血肉なりよ。
Subversionのコミットしたものはリポジトリ管理者であっても消す手段は用意していない、 というのは人によっては嫌かもしれぬが俺は大好きだ。
λ Re: 覚えておきたい必須コマンドをチェック!
echo *は必須ですよね。/bin/sh だけでいかに窮地を脱出するかは、
昔のSunOS4でrootパーティションだけしか見えない状況で鍛えられました。
echo とリダイレクトだけでファイル編集してみたり。
cat の代わりなんだっけ? /bin/sh -nv って昔から使えたかな?
イマドキだと「ハードウェアミラーでHDDをローテーション」しててブート可能なHDDが余分にある状態なので、 起動ディスクをそいつにして吹っ飛んだHDDをセカンダリで接続だ。FreeBSDなら復旧は一瞬。
λ [NetBSD] 1.6Q
フレッツグループアクセスの設定でPPPoEを何度か切り替えていたらマシン落ちまくり。もうNetBSDは面倒みてられませぬ。 IPSecの暗号化トンネル張る必要もなくなったからFreeBSDに入れ替えじゃ〜
λ iSCSIカード ASA-7211発表
iSCSIインターフェースキター。
λ TODO
CLIEでスケジュールとTODOをつけはじめたのはいいが、毎日TODOが増え続けるのはどういうことか。 タスケテー
2003-06-17 6475歩
λ Designing and Implementing Databases with Microsoft SQL Server 2000 Enterprise Edition
とにかく選択肢を読んで理解するまでが時間かかる。選択肢に長いSQL文が4つ並んでいるとげっそりみたいな。 インデックスチューニングウィザードを使わないといかんなあと思った。
次回はActiveDirectory070-217Jの予定。 今回SQLの試験はDesign系を先にやった方がよかったなあと思って 070-219J にしようかと思ったけど、どうもActiveDirectoryに関しては実装を先に受けた方がいいらしいという掲示板の情報が。
λ ワカラナイ理由がわかった
どうも細切れで判りやすいエピソードなら大丈夫だけど、 長編小説を読んでラストで伏線がガッっとまとまる快感の判らない人種が増えつつあるらしい。 友人の話の受け売りですが。
いくらなんでも映像技術に頼ってるだけじゃ入賞はしないと思うけど、 「いかにカコイイカットを見せるか」にまず心血を注いでいて、 カコイイカットを見せるための短いエピソードがなんとなく繋がっている みたいな作品になりがちなんではないかと。 そうやって作っているうちは、短いエピソードを作る力は向上しても、 全体の流れを作る力は育たないと思う。
ハリウッド・リライティング をちゃんと読まないと>自分。
λ 費用最低限で作る「防音ボーカルブース」の自作法
/.Jより。ブースの下にソルボセインを貼れば完璧。
2003-06-18
λ 次期Mac用プロセッサ?の64bit PowerPC(MYCOM PC WEB)
昨年秋の記事ですが、最近G4マシンが値下げしてるのはPPC970マシンの発表が間近なんだろうなあ、とスペックの復習。 PPC970って64bitCPUだったんだ。
メインメモリ4GBに手が届かなくもない昨今、仮想メモリ空間が64bit化は緊急の課題のはず。 64bit化したMacOSXServerも出るかな? メモリ8GBぐらい載せたマシン上でFinalCutPro動画編集とかやってみたい。
動画の扱いぐらいしかありあまるマシンパワーの使い道がないとも言う。 絵心ないしな>俺
λ Bluetoothバージョン1.2、承認に向け最終段階へ
無線LANにしろBluetoothにしろ、「つながらない原因が何なのか特定しずらい」部分を向上させないと一般への普及は難しいと思う。
物理レイヤーの上にプロトコルが何層も積み上がっていて、 一体どのレイヤーの問題なのかを頭の中に描かないといけないのは厳しいっす。
λ フレッツ・ADSL モア24
もう下りはいいから、上りを増速してくれー
λ 「渡邊フォント」がパクリと発覚 /.J
うゎあー。
少なくとも「標準字体」としてベクトル化されたJIS漢字の例示字体を配るようなのは国策にふさわしいんではないか。 税金投入大歓迎。ていうか住民基本台帳ネットで住民票印刷するのに使う予定のフォント無料公開してくれ。
λ 未来から来たメール
Dateフィールドに未来の日付の入っているメールはSpam率高いと思う。1時間先までならPCの時計精度の悪さに免じて許す。
みたいなルールをSpamAssasin書けるのかな。
λ SwiftProxy
OpenSSHをSOCKS経由でつなぎたいと思って、 Windows用SOCKSクライアントを探していたらサーバに当たってしまった。
λ SSH Proxy Command -- connect.c
UNIX用だけかと思って避けてたら connect.exe が置いてあった。OpenSSHでの使い方の説明もちゃんと書いてある。
Tips Collection - OpenSSH
ホスト名の最後が .socks だったらその部分をsedで外して接続してみる ~/.ssh/config の例。 だが試してみたら「そんなHost知らね」とsshが文句。"*.socks" に対して.socksを外したFQDNで返事をするDNSキャッシュサーバを立てるとよさげだが、 そんな怪しい機能が djbDNS にあるかどうか…
キャッシュサーバというよりは、特殊なフィルタ付フォワーダか。
IBM Access Connections
そういやAccess Connectionsで接続環境を別々のプロファイルとして切り替えているんだった。 プロファイル中に ~/.ssh/config の設定書き換えルール書けばいいんじゃん。解決。
Tips Collection - dnscache
再起動ごとに異なる乱数種を用いる設定を /service/dnscache/run に入れよう。
#!/bin/sh dd if=/dev/urandom of=./seed bs=128 count=1 > /dev/null 2>&1
λ フレッツグループアクセスPRO
さまざまな事情により、社員個人宅向け接続をフレッツグループアクセスPRO化。
フレッツグループアクセスの設定で入れたネットワーク間はルーティングしてくれるけど、 デフォルトルートを書く欄がない。 PPPoEそのものはpoint-to-pointなので、デフォルトルートにしたい接続先のネットマスクを /0 にすればいいのか?
だめだったらやっぱりトンネル掘りかな…
2003-06-19 863歩
λ [tDiary] makehina-di.rb プラグインの仕様
void GraphicWizardsLair( void ); //を読んで確認した。
配布されている状態のmakehina-di.rbだとツッコミの投稿でも hina.di が更新されてしまう。 修正しないとな。
λ [Windows] WMI による Windows の管理
「WMI での Windows NT のログ イベントの収集」に書いてあるのはリアルタイム収集の例でさりげなく高度。
たまたまリソースキットのない環境だったので、記録されているイベントをタブ区切りで出力する スクリプトを作成した。 リソースキットの dumpel を使えばイベントログをテキストで持ってこれるらしいし、 Ruby邪道編が手元にあれば間違いなくActiveRubyScriptで書いていたんだが、 Web上のサンプルはVB系だらけだったためVBScriptになってしまった。 LogDate関数やCRLFcutter関数なんかRubyだったら間違いなく1〜2行のところが10行以上でとてもみずらい。
' WMIでやってくる時刻は YYYYMMDDhhmmss.xxxxxx+540 形式の文字列
' +540はタイムゾーンの事であろうが、とりあえず無視。
' イベントログに複数タイムゾーンで記録されることは多分ない。
Function LogDate(strValue)
Dim strYear, strMonth, strDay
Dim strHour, strMin, strSec, strMicroSec
strYear = Mid(strValue, 1, 4)
strMonth = Mid(strValue, 5, 2)
strDay = Mid(strValue, 7, 2)
strHour = Mid(strValue, 9, 2)
strMin = Mid(strValue, 11, 2)
strSec = Mid(strValue, 13, 2)
strMicroSec = Mid(strValue, 16, 6)
LogDate = CDate(strYear & "/" & strMonth & "/" & strDay & " " & strHour & ":" & strMin & ":" & strSec)
End Function
Function CRLFcutter(strValue)
Dim regEx
Set regEx = New RegExp
regEx.IgnoreCase = False ' 大文字と小文字を区別
regEx.Global = True ' 文字列全体を検索する
regEx.Pattern = "\s+$" ' 末尾の改行は削除
str2 = regEx.Replace(strValue, "")
regEx.Pattern = "[\r\n]+" ' 連続する改行文字を1つの \n に変換
CRLFcutter = regEx.Replace(str2, "\n")
Set regEx = Nothing
End Function
' Win32_NTLogEventの詳細は以下を参照
' http://msdn.microsoft.com/library/en-us/wmisdk/wmi/win32_ntlogevent.asp
Sub DoWriteEvent(wherestr, ByRef Service)
Set NtLogEvents = Service.ExecQuery("Select * From Win32_NTLogEvent " & wherestr)
For Each ev In NtLogEvents
WScript.Echo LogDate(ev.TimeGenerated) & vbTab & ev.SourceName & vbTab & CRLFcutter(ev.Message)
Next
Set NtLogEvents = Nothing
End Sub
' **************** メインルーチン ここから ****************
Set Locator = WScript.CreateObject("WbemScripting.SWbemLocator")
Set Service = Locator.ConnectServer
' Set Service = Locator.ConnectServer("HogeMachine", , "Administrator", "password" ' リモートマシンに接続する時はこっち
Call DoWriteEvent("WHERE SourceName='MsiInstaller' AND LogFile='Application' AND TimeGenerated > '20030601'", Service)
Call DoWriteEvent("WHERE SourceName='W32Time' AND LogFile='System' AND TimeGenerated > '20030601'", Service)
Set Service = Nothing
Set Locator = Nothing
スクリプト化することで、特定の文字列が来たらメール出すような仕掛けはやりやすくなる。
λ フォントフェースの著作権
個人的には漢字のフォントフェースには著作権はあって然るべきと思っています。 JISに制定されている文字全てをデザインするというのは並々ならぬ労力を伴うし、 楽しい作業じゃないと思うから。 英数ひらカタぐらいなら Just For Fun の範囲だと思うけど。
「英数ひらカタ+α」ぐらいでコンテストした結果、漢字全体のデザインに税金投入みたいなのがいいなあ。
あとクリエイターの権利は守られるべきだが、著作権の有効期限は特許と同じ20年が妥当ではないかと。 暗号技術のブレイクとRSA特許切れたのは関係オオアリと思うし。
2003-06-20
λ mod_rewriteに代わるもの
すっかりmod_rewrite依存生活してるけど、激しくバッドノウハウな仕様だと思うので抜け出す方法はないものかと思うこの頃。
RubyUnitで単体テスト可能フィルタークラスを書くみたいな mod_rubyrewrite とかあるといいなあ…(希望)
λ MCSE
6月末までにWindows2000 MCSE を取得しておくと Windows2003 MCSE 支援プログラムが受けられるらしいので、 週一科目から来週は一気にラストスパートする予定に変更。
ネットワークデザイン系は普段そんなことばっかりやってるので、特別な勉強しなくてもいけると思うんだけどね。
λ ポケモン映画公式サイト
ピカチュウとアチャモは見てみたい。けど隅田川花火大会に繰り出す気はしないな。
λ Cメール機能一部廃止のお知らせ
「電話代がKDDIに入るから対応が遅い説」の流れていたCメールもやっとspam対策モードに入った。
「Cメール」同報サービスなんてのがあったんすな。 1通10円だとそこそこ厳しいけど、1通あたり0.5円ぐらいなら無差別攻撃でもペイするか。
2003-06-21 3歩
λ 優勝祈念“VICTORY”~猛虎に捧ぐ Tribute To Hanshin TIGERS
すごいスタッフだ。
横でTVを流してたら、すげーギターとドラムだと思ったら、ギターがCharだった。このスカーンと抜けるドラムは誰じゃ。
λ プログラマーのためのプログラマー日記
ソースコードの行数が減るように努力すれば、わかりやすさは格段に向上する。
最近は他人のコードの機能拡張しつつリファクタリングで、「機能拡張したのにコード量は30%ダウン」みたいなこともやってたりした。
ロジックならちょっと頑張れば1/10に減らせるけど。Webデザイン部分の1/10化はなかなか難しいでござる。 CSSを極めればWebデザインも1/10にできるかなあ。問題はデザインセンスがないことだ。
ディスク中心のRDBMSよりメモリ中心のオブジェクト指向DBのほうが数千倍速い。 しかもプログラミングがずっとシンプルで簡単になる。
ObjectStoreの値段がSQLServer並ならなあ…
2003-06-22 8733歩
λ dnscache (djbdns) PrivateIPの逆引き対策
PrivateIPの逆引きについて root server に聞きに行くのは明らかに間違いなのでその対策。
.../dnscache/root/servers/にプライベートIPに関して聞きに行くサーバを全部置いておく。
自分で管理しているキャッシュでないDNSサーバが望ましいが、
空にしておいて逆引きを無視するという運用もありかもしれない。
#!/bin/sh
/usr/pkg/bin/dnscache-conf dnscache dnslog /local/etc/dnscache 192.168.0.3
cp rootservers /local/etc/dnscache/root/servers/@
cp CACHESIZE /local/etc/dnscache/env/CACHESIZE
cp DATALIMIT /local/etc/dnscache/env/DATALIMIT
# accept query request from Private IP
touch /local/etc/dnscache/root/ip/192.168
for c in `awk 'BEGIN{ for(i=16; i<=31; i++) print i}'` ; do
touch /local/etc/dnscache/root/ip/172.$c
done
touch /local/etc/dnscache/root/ip/10
# forwarders for Private IP
cp /dev/null /local/etc/dnscache/root/servers/10.in-addr.arpa
for c in `awk 'BEGIN{ for(i=16; i<=31; i++) print i}'` ; do
for d in `awk 'BEGIN{ for(i=0; i<=255; i++) print i}'` ; do
cp privateservers /local/etc/dnscache/root/servers/$d.$c.172.in-addr.arpa
done
done
for d in `awk 'BEGIN{ for(i=0; i<=255; i++) print i}'` ; do
cp privateservers /local/etc/dnscache/root/servers/$d.168.192.in-addr.arpa
done
cp privateservers /local/etc/dnscache/root/servers/0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa
cp privateservers /local/etc/dnscache/root/servers/8.e.f.ip6.arpa
cp privateservers /local/etc/dnscache/root/servers/0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.int
cp privateservers /local/etc/dnscache/root/servers/8.e.f.ip6.int
# flets
rm -f /local/etc/dnscache/root/ip/172.26
cp fletsservers /local/etc/dnscache/root/servers/26.172.in-addr.arpa
cp fletsservers /local/etc/dnscache/root/servers/flets
上記のスクリプトを利用する前提として、privateserversに上記プライベートIP用DNSサーバ、
rootserversに普通の ルートサーバ、fletsserversにフレッツスクエア用DNSサーバを書いておく。
これらのファイルは1行1IPアドレス。fletsserversだとこんな感じ。
172.26.35.131 172.26.35.132
10.x.x.x は6万ファイル作るのを躊躇したため空ファイルで無視する設定。必要に応じてエントリ作成する方向で。
λ Subversion 0.24.2
svnserveの仕様が変わったらしく、FreeBSD側をアップデートしたらssh+svnserveの更新ができなくなってしまった。 Windows側のcygwin環境も更新して無事アップデート完了。
tortoisesvnのバイナリパッケージは現在出来てない。
λ [tDiary][FreeBSD] portupgrade japanese/tdiary
アンカーの茸が復活してしまった。それ以前に俺設定のコピーが必要だったが。
portsでやってくるものにはシンボリックリンクは今のところ存在しないため、 /usr/local/share/tdiary に設置している俺設定のほとんどはシンボリックリンクにして、 それだけバックアップしておけばなんとか自動化はできる。 実ファイルは /usr/local/etc/ の下あたりで。
/usr/local/share/tdiaryにある俺設定は現在
- tb.rb (トラックバック)
- tdiary/rd_style.rb
- tdiary/wiki_style.rb
- tdiary/wiki_parser.rb
- skel/todo.rhtml
TODOについてはWindows上のエディタで編集してSubversionで投入しているので実際にはtodo.rhmlが無くてもなんとかなる。たぶん。
tb.rbとrd_style.rbはどうにもならず、アップデートまで完全自動化にはtDiaryがデフォルトサポートするのを待つしかない。
λ 俺的バッドノウハウ判定基準
機能拡張の時にマニュアル見る羽目になるのは仕方ないとして、 定常運用状態に入った時にマニュアルなしで何とか運用できるかどうかが分かれ目だな。
bind8,bind9 は許せる範囲。 mod_rewrite の設定って sendmail.cf 並にわけわからん。
λ 年収1000万円エンジニアになる!(前編)
「『俺はこれだけ仕事をやったのだから給与を上げてくれ!』など、社内の相対評価の中だけで報酬が決まると思っているエンジニアが多い。 しかし、実際には、収益がどれだけあったのかとか、労働市場の中での評価はどうなのかとか、その点が決まらないと収入ベースが決まらないわけです。 それをトータルで見たのが『市場基準』というわけです」(手計氏)
この部分には同意だが、記事全体に漂う「職種hogeは給料高いですよー」みたいな雰囲気がダメダメ。 上級コンサルタントというと悪銭チュアが思い浮かぶからなあ。
俺の目指すところは、いい物を作ることが第一、いかに展開するかの戦略も忘れない、といったところか。 資格なんてオマケだとは思ってるけど、経営者を説得する材料としてはお手軽なので現在絶賛Microsoft試験受験中。
ActiveDirectoryと戯れるのはますます楽しくなってマイリマシタ。 ActiveDirectoryを自由自在に操れればWindows2000Serverは高くないと思う 。 一方WindowsXP ProfessionalとMicrosoft OfficeXPは高すぎるように感じるな。
LDAPv3をもっと極めなければ〜
λ pokemon ruby
で検索する人がやってきた。ルビー/サファイアだと やっぱルビーの方買うしかないか。
2003-06-23 8417歩
λ WMI on ActiveScriptRuby
改めて256倍本邪道編のWMIの操作のところを読んでみた。 今回やりたいことが分かりやすく書いてあった。
一読しただけでは濃すぎて半分も理解できないけど本当に名著だ。ここ数年で買った本の中では手垢のついた量がダントツに多い。
λ メーリングリストでSPAMと判定された時
SPAMではない投稿がSPAMと誤認識されて投稿者の元へ「SPAMじゃないの?」というメールが到着し、 投稿者から「私が悪いの?」と不安になった旨のメールが、俺の管理しているメーリングリストでやって来た。 気休めとしてメーリングリストで各購読者に配送する際のヘッダを追加して Errors-To: にメーリングリストオーナーのアドレスを指定してみた。
…それにしても自動返信するSPAMフィルタはめちゃめちゃいけてない。つか絶対やっちゃダメだろ。 お前がSPAM発信源になるぞ。
当初From:アドレスのような気がしたが、良くみるとエンベロープFrom経由での返信が ezmlm の機構で投稿者まで戻ったくさい。
関係ありそうなのは X-DNSWeb-Loopcheck, X-DNSWeb-MesID というヘッダーなのだが、 X-DNSWeb-MesIDに登場するドメインをwhoisで引くとさくらインターネット(旧dns.ne.jp)、 かつReceivedに出てくるのも www?.dns.ne.jp なのでさくらインターネットの新サービスなのかなあ。 一応sakura.ad.jpの表のメニューを調べたところでは、SPAMフィルターに関する記述は見つからなかった。
…それなりに資料を集めてフィルター設置してるアドレスにメールを出してみたが、 やっぱりSPAM判定くらった。どないせいっちゅうねん。メンバー削除ぢゃ。
メーリングリストについて雑感
メーリングリストってWeb登場以前は「MLか The NetNews か」だったけど、メールというメディアはプライベートな領域に戻した方がいい。 そういう意味では FreeBSD users-jp が閉鎖的でもいいんじゃないの。 users-jp の記事がGoogleにひっかかって役に立ったという記憶も無いしなあ。入ってないから完全に他人事。
λ 記号も物語もなく単にひとりになる 圏外からのひとこと(2003-06-23)
90年代前半からコミケで記号の高速消費に付き合ってきた身からすると記号化のピークはとっくに過ぎている。 指輪物語(とたぶんハリーポッター)は物語が力を持つ時代への旗印とはならないのか。 長編ファンタジーは記号の塊であるように見せかけて物語へと誘うはず…
と思いたいんだけどビジネスの観点から見ると、今の著作権法が記号を異常に保護しているせいで、記号を売る商売は拡大する一方だ。
λ Yahoo!BB、資金調達に伴う「規約改定」の意味 ZDNet
ファイナンススキームの図を見たら、複数の投資家から融資をソフトバンクBBに吸い上げた後にSPCを倒産させるとしか思えないんですが。
名簿流出に備えて実世界で個人情報書く場合もHoneyPot方式で旧漢字を混ぜてみたり、読みが同じ違う感じを混ぜてみたりするのはどうか。 クレジットカードの認証はどうせローマ字だからな。
2003-06-24 9226歩
λ Implementing and Administering a Microsoft Windows Directory Services Infrastructure
噂どおり比較的楽な試験だった。次回 070-220J
λ PowerMac G5
今回のハードウェア刷新は、G3ポリタンク以来。というのをXServeの時も書いたような…
メモリスロット8本てのは近年パーソナル機では存在しないし、ローエンドサーバ機でもあるかないかだったので、 なかなか思い切った構成というか「64bitCPUなんだからメモリがんがん乗せろオラ」というAppleの主張と受け取った。
というわけでメインメモリ4GBの構成限定の格安マシンだ。
Panther - Font Book
Dynamic activation いいなあ。
Panther はFreeBSD5.xベースなところも挑戦的だなー。 Jaguarに金払う気は起きなかったけどPantherなら払ってもいいかも。 ん? 発売は今年末とな。
Panther - FileVault
認証はKerberos、ファイルシステムもAESで暗号化だ。
λ Sennheiser PXC 250
XServeのファンの音を遮断するのにノイズキャンセリングヘッドフォンもいいかしらん。
λ [IPv6] 実験サービス開始から2年半 静かに進むIPv6 (下)(日経BP)
確かにIPv6は端末に識別番号を振って課金するようなシステムに向いてるよな。
λ @IT:急速に増えたオープンソース技術者、「スキルは高くない」
国内でもオープンソースを開発、サポートするエンジニアは急速に増えてきたが、そのような人材のスキルはそれほど高くない
という発言の「オープンソース」を「Windows」「オラクル」「ソフトウェア」に言い換えても何ら文意は変わらない。 「人を評価する」という目標に対しては、『オープンソースエンジニアです』というのは、 たくさんある評価軸の一つでしかないに決まってるじゃないか。 そして「にわか技術者」のスキルが低いのも当たり前。
公演全体の流れにはそれほど問題がない感じなので、このタイトルを付けた記者がだめだめ。 もしかするとタイトル付けたのは記事全体に署名している人じゃないかもー。
λ ゴーストライター
すごく面白かった。(同行者はいま一歩足りなかったようだが)
「本当に幽霊だったら」という売り文句を忘れてても、さすがに結構早い段階で幽霊なんだなーというのは教えてくれる。 それよりは作中のゴーストライターが書いた脚本にしたがって物語が進行している、というのに気づくと タイムマシンで過去に行った人が過去に干渉しているような、そんな不思議感覚に襲われて、 その感覚がめちゃめちゃ良かった。
ただ下級天使の使い方はいまいち。タイムマシンそのものなのかドラえもん役なのかは、もちっとはっきりして欲しかった。 自らは下級天使と言いつつも主人公から見ると神な訳で、天使最期の奇跡が歌1コーラスでは悲しすぎる。 歌ってる方が盛り上がるけどね。
DVDは買うと思う。TV画面で見ても楽しめる作品だ。
返り際に、G2って顔が全く出てこないのでサンライズの矢立肇みたいなもんかねえ、という話もした。 このパターン、デジモンの本郷あきよしはシリーズ最後まで気づかなかったよ。
λ 俺的ナツメ社
90年頃出していた文房具雑誌はよかったなー。決してDIMEではなく、もっと硬派な雑誌だった。 漫画雑誌を除くとほぼ毎号買う雑誌としてはこいつが最後だったような。
ちなみに草の根パソ通時代 BIG-MODEL にはいまいち馴染めなかった俺。
2003-06-25 7034歩
λ SQLServer2000 SQLServerAgentメールの設定
Outlook2000しか使えないというのは前回分かったので、Outlook2000を入れて挑戦。 インストールの時Outlook本体以外の余計な機能はすべてカット。
InternetMailのみの設定をしたらメールプロファイルは「Outlook Internet Mail Settings」みたいな 文字列が設定されているのだが、SQL Server Agentメールのメールプロファイルにこの文字列を入れて 再起動後に確認すると、最後の数文字が欠けていやがる。 デフォルトの設定のままなのに酷いぞMicrosoft。
コントロールパネルのメールのところから、InternetMail以外のExchangeServer等のプロファイルも使えるように拡張した上で、 メールプロファイルを「SMTPPOP3」に変更し、ほぼ同じ設定を作成した。 これでやっとメールが自動的に出るようになった。
Windows文化の中でMAPI はバッドノウハウ。早いところ退場して欲しい。
2003-06-26 8491歩
λ TortoiseSVN 0.12.1
ここのところ明らかにExplorerの挙動が変なので、あまり他人に薦めたくないTortoiseSVN。 Ctrl-XとかでCutした瞬間に固まってみたりしていた。
ちょっとはマシになったのだろうか。
…なったかも。
λ ニッポン食事情咄 第60回
話の中心は、キンメダイ週2回への警告から始まっているが
今回のBSE騒動でおそらく日本では発病者や死者は出ないでしょう。 しかし、この騒動の経済的な余波で首をくくって死ぬ人は確実に出る。 この点をじっくり考えるべきでしょう
BSE騒動は本当に象徴的だったなあ。個人的にはその当時普通に焼肉行ったらすんごい旨い肉が安く食べられて嬉しかったけど。
目の前の物事を確率的に見る力は論理的思考とはちょっと違うかもね。 人間の頭の中は有効桁数2〜3桁ぐらいでしか考えられないので、 すごく低い確率の事象は本来ある確率より大きく感じる。
ギャンブルが流行り続けるのはそのせいだが、常に期待値に換算すればギャンブルにはまることはありえない。
2003-06-27 6894歩
λ Designing a Microsoft Windows 2000 Network Infrastructure
MCPふりーくの受験記で英語版の模試無料版は反則みたいな書き込みがあったので、やってみたらば300点にも届かず焦って勉強。 こんなに短期集中で紙に向かって勉強したのは久々だ。
技術知識よりも問題文を読解する能力が半分以上な気がする。 まあCEOやIT担当へのインタビューから最適な設計をするというのは、 そういうコミュニケーション能力も求められるよな。
λ Designing Security for a Microsoft Windows 2000 Network
英語版模擬試験の解答によると、MicrosoftはVPNを L2TP+IPSec で実装したがるんだけど、日本じゃ L2TP なんて使ってる話聞いたことない…。 アメリカのIPv4アドレスは余ってたんだろうなあ。アジアの他の国に比べればIPv4アドレスに余裕のある日本だけど、 NATを通過するVPN構築するのにどれだけ苦労することか!
でも実際の試験では、事例は似ててもL2TP採用するところは殆どなかった気がする。さすが日本語版?
IPv6でインフラ整備できる時代になったら、IPフィルタリングとIPSecで済むようになるのかなあ。 それともトンネルはいつまでも生き残るのか。
米国防総省が今年秋でIPv4機器の調達を中止し、2008年にはIPv6に完全移行
端末間IPSecが一気にブレイクか。AESサポート付きのNIC早く登場しないかなー
λ 正規表現で文字列置換
ホームディレクトリがいっぱいになって、新しいハードディスクに移動する作業。
vipw(vi) で先頭が a-k で始まるユーザのホームディレクトリだけ置換するのはどうするんだっけー、 sedも思い出せず、awkも思い出せず、perlも軽く書こうとしたらrubyなスクリプトっぽくなって、 結局別マシンにファイル移動してrubyで加工してしまった。
もうrubyなしには生きていけない(笑)
λ IPv6 アプリコンテスト2003
事務局から直メールがやってきた。IPv6実証実験やBflets実験は戸籍名で登録してるのに、 上美谷宛だったのでサイトを見て勧誘している模様。前期の応募がよほど少なかったのか?
GPGRelay(IPv6)のソースってMicrosoftのMFCソースをちょりっといじっただけだから、 とても応募する気は起きないんだよなあ。 もし作るなら .Netベースの SSLリレーエージェント。IPv6というより、 ThinkPadのセキュリティチップに入った証明書を使ったSSL通信の実験したいから。
λ 毎時1700万通のメール受信システムとは?
高速メール配信システム FAQ ユミルリンクは毎時1700万通のメールが出せるらしい。 ここに出てくる「ダミーの受信サーバ」に興味があった訳なのだが、SMTP配送が普通に立てたメルサバ1台では追いつかないのは明らか。 俺ならバックエンドをDJBのQMTPをベースにUDP化したようなMTAをたくさん立てるかなあ。 200台ぐらい中継サーバ立てて1台あたり8.5万通/時ならSMTP配送も終わるじゃろ。
FAQより引用:
毎時1700万通を測定した環境を教えてください。 CPU: CPU 1.4GHz ×2 Memory: 2GB HDD: 36GB (10000rpm,SCSI) Network: 100Mbps Ethernet
1パケット 10000ビット (1キロバイトのメール本文ならこんなもん)のパケットが実効効率 50Mbps のEthernetに連続して流れたとすると、 1時間あたり1800万パケットの送信だ。約50Mbpsをコンスタントに出せるとはいいNIC使ってますね(笑)
7月1日追記
ユミルリンクの担当者の方よりメールを頂き、FAQの実験環境ではSMTP配送におけるネットワークの実効効率が90%を超えていたそうです。 (上記の計算は具体的な数値を含む資料がマシンスペックしかなかったため、スペックと個人的なSMTP配送の常識に基づく推測です) 「ダミーの受信サーバ」の仕様も今後掲載されるかもしれないとのこと。
ユミルリンクのMX
こーゆー会社のMXレコードが1つでIPも1つしかないってのはいかがなものか。しかもWebサーバと同じIPだし。
2003-06-28 12183歩
λ 資本主義ビンゴゲーム
今日の結婚披露パーティーでのメイン?イベント。
参加者には最初にビンゴカードが1枚配られているが、追加ビンゴカードが1枚500円で何枚でも購入可能。 で、一等商品が「追加ビンゴカードの売り上げ」。以上。
ある意味カイジの限定じゃんけんに似ていなくもない。なかなか盛り上がりまふ。
2003-06-29 10450歩
λ 北朝鮮工作船の無料一般公開
ビックサイトの帰りに寄ってきた。小型船舶に時速100km近くも出されたらそうそう追いつけんよなー。
日本財団って何じゃと思ったら 日本船舶振興会(一日一善!)のなれの果てか。
λ TMPGEnc DVD Author1.5
なんとMPEG2エンコーダ付きで売るとは。
2003-06-30 12011歩
λ WMIでシリアルポートを列挙してみる
CIM_LogicalDevice という奴で列挙したものを適当にフィルタリングするとそれっぽい感じ。
wql = "SELECT * FROM CIM_LogicalDevice "
wql = wql & "WHERE CreationClassName='Win32_SerialPort' OR DeviceID LIKE '%PORTS%'"
Set Locator = WScript.CreateObject("WbemScripting.SWbemLocator")
Set Service = Locator.ConnectServer
Set devices = Service.ExecQuery(wql)
For Each dev in devices
WScript.Echo dev.Name & vbTab & dev.CreationClassName & vbTab & dev.DeviceID
Next
COM??の番号の最大値を取る方法、ここから正規表現で引き抜けば大丈夫そうではあるが、もう少しうまく取る方法はないものか。
using plugin: amazon calendar2 category html_anchor makelirs makerss recent_comment3 recent_trackback3 squeeze tb-send tb-show recent_list
Copyright(C) 2003-2007 by KAMIYA Satosi (上美谷 智史) All rights reserved.
λ wakatono [なんとかアクティビティを戻せるようにがんばりますー (_ _)]