Home

日記
LaVie RXのメモリが死んだ (13:51)Edit

2004/5/10

NECの方でも無事不具合が再現できたとのことで、メインボードとキーボードが交換されて返ってきていましたよ。4/26に修理に出したのに、4/30には早くも修理完了して会社に届いていたらしい。戻ってくるのは連休明け11日くらいになると言われていたんだけど、すごくがんばってくれたのかな。このあたりはさすがNECだ。けど、さすがにこのマシンを買ってから3回目の環境再構築となるとうんざりするな。仕事マシンだから、開発ツール系を山ほどいれなきゃいけなくて、ファイルコピーだけでもものすごく時間がかかる。ああだるい。あと新しいキーボードはやたらとXキーの反応が鈍くて鬱。ホームポジションから左手薬指で叩くと半分くらい反応していないよ。これって使っているうちに反応するようになってくれるのかなー。ならなかったらきついなー。そういやメモリがちゃんと使えているだけでなく、ビデオカード周りの不具合(いろいろな設定を遅い方向にしておかないと画面が崩れたりする)や、マウスカーソルが定期的に固まったりする(ことがある)といった不具合も解消されている模様。さすがメインボード交換。


2004/3/23

先週末くらいから、PC(LaVie RX)が突然死ぬようになった。使っていると突然ブルースクリーンになって落ち、その後しばらく再起動が効かなくなったり、起動途中で再び死んだりする。また初期不良交換かよ、と思いつつも、今PCを交換している場合じゃないんで、だましだまし使っていたんだけど、結局原因は増設したメモリ(BUFFALO DN333-A)だった模様。メモリを引っこ抜いたら安定した。もしかしてそれ以前にも画面周りが崩れたり(特にサスペンドからの復帰時に)することがあったのは、こいつが原因だったのか? その症状も増設メモリを抜いてからは起きていないし。

ただ、このマシンってメモリ増設スロット周りが激しく発熱するし、増設メモリをつけた当初はこれほど不安定ではなかったことを考えると、もしかしたらPC側の問題で故障したって可能性も考えられるんで、「メモリが初期不良でした」とは簡単には言いにくい。それに、元々メモリってもの自体が不良なのかどうなのかを明確に言いにくいものだし。さらに、念のため領収証を探してみたけど見つからず。保証書はあったし、メモリ自体の保証期間(6年だと)ではあるから、メーカー保証は効くけど、そっち経由だと時間と手間がかかりそうで面倒くさいなー。

とか思いつつも、一応買った店(ビックカメラ)に持っていったところ、ちゃんと交換してもらえた。領収証がなくても、ポイントカードの購入履歴を問い合わせて、そちらで処理できるらしい。ありがとうビックカメラ。これからは多少割高でもビックカメラで買うようにするよ。って、元々会社から一番近くて便利だから、多少割高でも使っていたんだけどね。

2004/4/23

実はこの件はまだ続いていたりする。せっかく交換してもらったメモリも、使っていたらすぐに(数分で)おかしくなってしまったのだ。が、それ以来忙しかったんで、もう一度店に持ち込むことができずに、放置したまま1ヶ月。ようやく今日再度ビックカメラに行って来た。

で、店頭でさらにビックカメラブランドのメモリ1枚とBUFFALOブランドのメモリ1枚を試したところ、どちらも同じようにある程度発熱したら動かなくなってしまうことが確認できた。さすがに計4枚新品メモリを試してみて全部だめとなると、メモリが悪いという可能性はものすごく低そうだよな。

で、NECと電話で交渉。クレーマークレーマー。この問題が微妙なのは、こういうメモリってのは基本的にメモリメーカー側が動作保証をつけているだけで、NEC自体はまったく保証していないこと。しかもLavie RXに関してはメーカー純正メモリってものも(カタログ上には512Mで15万円くらいとかいうばかげたものが載ってはいるらしいけど)、NEC自体でも取り扱っているかどうかはっきりしない代物で、つまり増設メモリの動作をNEC側で保証できる具体的な(単品で購入できる)製品ってのが存在しないらしい。

本体を修理に出せば増設スロットのチェックをすることはできるが、そこでどういうチェックを行うかは工場に問い合わせなければわからないし、基本的に他社製品との相性チェックはNECではできない、という話だった。さすがに2週間も修理に出して、「増設スロットは(電気的に)異常ありませんでした」とか言われたら「貴様をぬっころす」と笑顔で言いたくもなるカリス:http://www.tv-asahi.co.jp/blade/004_rider/chalice/chalice.html。ともかく俺は多少割高になってもいいから(最悪メモリを買い直してもいいから)、このマシンにメモリを増設したいんだよー。

そこで、「でもNECの直販サイトでは俺の買ったBUFFALOのメモリを扱ってるし、Lavie RXの直販カスタマイズモデルでは512Mの増設メモリをそれなりの(15万円とかじゃない)価格で売っているよね。あれってどこの製品か知らないけど、あれと同じものを単体で買えば、増設メモリの動作保証もしてくれるの? というか、どうやったら増設メモリの動作保証を得ることができるの?」としつこく絡んでみたところ、ようやく「今回は特例として、メモリも一緒に送ってもらえれば、それとセットでテストしてみる」という言質を得ることができた。

というわけでゴールデンウィーク中かけて修理に出してしまう方向に決定。くそー、ゴールデンウィーク中も仕事しなきゃならないのになー。

個人的にはこのマシン、放熱ファンの周辺がおかしくなっているんじゃないかと思っている。省電力モードで使っていても、ファンからものすごい高熱風が吹き出してくるのは、今時の高クロックマシンにしてもさすがに異常なんじゃないか? それともこんなもんなのかな? ほかにいまいち問題の切り分けがはっきりしていない、ときどきハイバネーションから復帰させると、Windowsのフォント情報が壊れている(再起動すると直る)というのも、発熱周りの症状のような気がする。

2004/4/26

うわー、すでに修理に送ってしまってから、

>>メモリスロットかなり堅くてカチと奥まで差し込まないと認識しないけどその辺は大丈夫? なんてのをみてしまってドキドキ。まさか最後まできちんとメモリを差しきっていなかったのか? 確かにすごく堅かったんで、100%差しきったかと言われるとちょっと不安な気が。一応マニュアルに書かれている状態(端子面が1mm程度見えていて、フックが引っかかる)程度までは差し込んだけど、もっと力を込めるともっと差し込めるのかもしれない。でもあれ以上力を加えると壊しちゃいそうで怖いしなー。

差し込みが甘かったなんて理由で、冷えている間は動いていて、暖まると動かなくなるなんてあり得るかな。……あり得そうだな。差し込みが浅かったけれども、それでもぎりぎり端子面が接触していたのが、暖まると熱膨張でちょっと浮いてしまうとか。うがー、そんなくだらない理由だったら死ねる。ちゃんと故障してくれていることを祈らなければ。ってそれは何か間違っているな。

Published At2004-03-23 00:00Updated At2004-03-23 00:00

日記
TrackBack Ping URL自動検索フォーム (13:51)Edit

2004/3/25

はてなダイアリーも外部にTrackBackが打てるようになった(http://d.hatena.ne.jp/hatenadiary/20040325#1080189658)らしいんで、後はこの辺があると便利だろうということで、

を作ってみた。

使い方としては、はてなダイアリーとかの日記投稿フォームの本文部分を、TrackBack Ping URL自動検索フォームにコピペし、「Search」ボタンをクリックする。すると、その本文に含まれるURLから検索できたTrackBack Ping URL一覧を表示する。

要するに、記事を書くときにはTrackBack Ping URLの存在を意識せず、ふつうにURLリンクを張ってからこのツールを通せば、TrackBack Ping URL一覧が表示される、というもの。MovableTypeとかは標準でこの機能を持っているけど、ほかにはあんまりこの機能を持っているツールはないよねってことで。

TrackBack Ping URLの検索対象としては、

  • TrackBack auto-discoveryに対応したページ(MovableTypeとかtDiaryとか)
  • はてなダイアリーのページ(URLから自動判別できるため)
  • blogmapのURLランキング対象として登録されているページ(のblogmap用TrackBack Ping URL)
  • ISBN/ASINを持つページ(のblogmap用TrackBack Ping URL)

がある。というか単に、PingProxyが行っているTrackBack auto-discovery処理を流用しているわけだけど。PingProxyでは、TrackBack auto-discoveryの結果を保存(キャッシング)しているんで、一度でも対象となったURLに関してはauto-discoveryが高速に行われる。

ちなみに、PingProxyでは全体が非同期で処理されているのに対し、TrackBack Ping URL自動検索フォームではリアルタイムで処理を行っているため、あんまり対象となるURL数が多いとタイムアウトになったりする可能性がある(キャッシュが効いているターゲットが多い場合は大丈夫)。というか、元々auto-discoveryは重い処理なんで、PingProxyでは非同期処理を行っていたわけだけど、ある程度みんなでauto-discoveryのキャッシュを共有すれば、無駄なトラフィック(負荷)を抑えつつ便利な機能も実現できるよね、ということで、試しにリアルタイム検索フォームも用意してみたわけだ。

ちなみに「対象となったURLも表示する」をチェックしておくと、TrackBack Ping URLの前に、どのURLに対するTrackBack Ping URLなのかも表示される。全部に送信するのではなく、送信前に取捨選択をしたい場合はそちらをどうぞ。

2004/3/25 その2

他のツールから呼ぶ用のREST APIを用意しました。以下の仕様でPOSTするとtext/plainなTrackBack Ping URL一覧を改行(LF)区切りで返します。

  • URL - http://pingproxy.ishinao.net/autodiscovery.php
  • 引数
    • body - 記事本文
    • type - 出力形式。plainを指定すると改行(LF)区切りのURL一覧を返す
    • detail - 詳細出力。1を指定するとPing URLの前に[]で囲んでPingの対象であるURLを返す
PHP+curlのサンプルコード
$discoveryUrl = 'http://pingproxy.ishinao.net/autodiscovery.php';
$body = '記事の本文……'; //文字コードはEUC-JPが望ましい(自動判別はする)
$query = 'body='.urlencode($body).'&type=plain';
$curl = curl_init($discoveryUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $query);
ob_start();
curl_exec($curl);
$pinglist = ob_get_contents();  //TrackBack Ping URL一覧(改行(LF)区切りテキスト)
ob_end_clean();
curl_close($curl);

Published At2004-03-25 00:00Updated At2004-03-25 00:00

日記
sshで認証失敗 (13:51)Edit

突然sshでの対話式(keyboard-interactive)ログインができなくなった場合、sshd_configのUsePrivilegeSeparationがyesになっている可能性がある。sshd_config自体にその項目の設定がなくても、opensshのアップデートによってデフォルトがyesに変わった可能性もある。

どういうバージョンのどういう設定において、どういう影響があるのかいまいち把握できていないけれども、かなり大はまりしたんでひとまずメモしておこう。認証自体は成功しているみたいに見えるのにremoteからcloseされるんで、なかなか原因がつかめなかった。uidが見つからないとかログに出ていたんで、UsePrivilegeSeparation用のアカウントが用意されていなかった、とかかなー。あとで調べよう。

Published At2004-03-25 00:00Updated At2004-03-25 00:00

日記
オートニュー速 from blog.bulknews.net (13:51)Edit

blogmapでやるとまんまニュー速っぽいな。でもblogmapではdescriptionにURLポイント数(**pts)しかいれていないんで、やたらと[pts]が出てきちゃうのがガン。オートニュー速向けにdescriptionを別の内容にしようかなー。

Published At2004-03-25 00:00Updated At2004-03-25 00:00

日記
WikiBrowser - 日本語WikiName対応ブラウザ (13:51)Edit

2004/3/28

>>#902 ただただし / 2004/03/28 12:35 >>このアプローチで解決できるのは、ブラウザのアドレス欄が見やすくなる点だけですよねぇ。メールに張ったり、別のサイトからリンクをはったりするときには%だらけのURLが現れてしまうわけで……

確かにブラウザのサンプルだとそれしか解決できないみたいにみえるか。

でもどっちかというとこのサンプルの核となるべき部分は、あるWikiサイトのページのアドレスを表現する文字列として、

という二つの形式を(クライアントサイドで)相互に変換できるロジックなので、そのロジックをブラウザのアドレス欄以外でも使えるようにすればなんとかなると思います。

たとえば、「wiki:ウィキペディア/アマゾン川」みたいなURIもどきをフックして「http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8」というURLと相互変換するフィルターをブラウザのプラグインとして入れつつ、(Windowsの場合は)「wiki:」プロトコルと対応ブラウザを関連づけておいたりすると、メールや別サイトでの紹介のときにも(対応したクライアント向けには)使えるようになるはず。

まあブラウザ以外の場所で使えるくらい、こういう仕組みを広めるのはかなり大変だろうけど。


2004/3/25

「BitChannel / 日本語ページ名」(http://i.loveruby.net/d/20040325.html#p04)関連を見ていてふと思いついたネタ。

結局いろいろ考えてもあんまりいい方法が思いつかないならば、いっそのことWebブラウザ側で日本語WikiNameに対応してしまうってのはどうだろう。

具体的には、URLエンコードされたURLから日本語WikiNameに戻してやって、それを表示するプラグイン(ツールバー)を用意したりとか、あらかじめそういう機能を持つWebブラウザを作ったりとかして、日本語Wiki対応Webブラウザ環境を整備してしまう感じ。

ツールバーのイメージとしては、たとえば、

みたいなURLのページを表示すると、(日本語Wiki対応)アドレス欄(プラグイン)には、

  • [ishinao.net/pukiwiki[↓]] [はてなダイアリー的キーワードリンク集] [→]

みたいに表示される感じ。

ちなみに一番左の[ishinao.net/pukiwiki[↓]]はドロップダウンリストを表していて、[↓]をクリックすると他のWikiサイト一覧が表示される。次の[はてなダイアリー的キーワードリンク集]の部分はテキストボックスで、好きな文字列(ページ名)を入力できる。一番右の[→]はいわゆる「GO!」ボタンで、クリックすると現在設定されているページに行く。

たぶんそれぞれのブラウザごとにInterWikiName的な設定を持つ必要があるけれども、逆に言うとInterWikiName設定さえあれば上記のような機能を実現することは簡単だよね(誰か作ってみて。誰も作らなかったらいつか自分で作るけど、俺の場合は棚上げ状態のものが多すぎて優先順位は低いよ)。

いろいろ考えても結局完全に満足できるサーバーサイドシステムが用意できないならば、いっそのことクライアント(ブラウザ)サイドで解決してしまおう、というアプローチ案でした。

2004/3/27

こういうのは実際に動くイメージがないといまいち伝わらないんで、試しに作ってみた。

WikiBrowser画面イメージ:http://mylog.ishinao.net/img/WikiBrowser.jpg

概要

  • 登録されているWikiサイトにアクセスすると、そのURLを解釈して「サイト名」「ページ名」をアドレスとして表示。
  • 「サイト名」「ページ名」を指定(入力)してアクセスすると、その内容からURLに変換してアクセス
  • といった感じで、日本語ページ名がURLエンコードされて「ワケ ワカ ラン(AA省略)」状態になるのをクライアントサイトで対応しようという試み

動作環境

使い方

  • http://dev.ishinao.net/archive/WikiBrowser_040327.zip(うまく解凍できない場合はhttp://dev.ishinao.net/archive/WikiBrowser_040327.lzh)をダウンロード
  • 解凍したディレクトリ内のbinディレクトリにある「WikiBrowser.exe」を実行
  • ブラウザで、対応するWikiサイト内を移動すると、そのページのページ名(URLデコードした結果)がテキストボックスに表示される。
  • ドロップダウンリストからサイトを選択、その隣のテキストボックスにページ名を記入して、「→」ボタンをクリックするとそのページを表示。

カスタマイズ

  • 実行ディレクトリに存在するInterWikiName.txtには、対応するWikiサイトの設定を記述。1行1サイト。半角スペース区切りで「前方一致URL文字列」「文字コード」「Wiki種別」「サイト名」を列挙。
  • 「Wiki種別」は、WikiEngineごとに異なった処理を行うための指定。現在のところ「PukiWiki」と「BitChannel」以外は意味がない。

その他

  • この実装自体は、半分ジョークソフトみたいなものなんで、あんまりまじめにとらえられても困る。アプローチ自体はありだと思うけど。
  • IEコンポーネントをデフォルトセキュリティで使っているんで、危険そうなところにはアクセスしない方がいい

ライセンス

  • 一応GPLにしておくけど、まあこのコード自体は適当に作ったものなんであんまり意味がない。
  • ソースはVisualBasic.NET 2002でコンパイルできると思うけど、IEコンポーネントの取り込みとか、環境整備を自前でやる必要がある。

Published At2004-03-25 00:00Updated At2004-03-25 00:00

日記
花見 (13:51)Edit

花見2004:http://mylog.ishinao.net/img/hanami2004.jpg

ムスコを連れて梅ヶ丘まで会社の花見に行って来た。最初のうちは久しぶりの電車に喜んでいたムスコが、行きの電車の途中であっさりと飽きてしまい、「早く帰りたい」などとぬかしやがったので、往復の道中がとても疲れた。ところで羽根木公園っていいところだなー。広くて比較的整備されていて、スポーツ施設がいろいろあって、子供の遊び場(フィールドアスレチック的なもの)も充実していて、近所にあったらとても便利そうなところだ。っつーか、さいたまにもああいうのを作りやがれこんちくしょー。

Published At2004-03-28 00:00Updated At2004-03-28 00:00

日記
deferとWScript.Shell.Runの第3引数 (13:51)Edit

<script type="text/javascript" defer>
var shell = new ActiveXObject("WScript.Shell");
shell.run("notepad.exe", 1, true);
alert("end");
</script>

みたいなスクリプトで、shell.runの第3引数がtrue(終了するまで待つ)になっているのが効かないのはどうしてだろう? よりローカルな設定ほど強力であるというのが一般的だと思うんだけど、defer設定は何よりも強力ってことなのかなー。あと、shell.runの前に

alert("begin");

とか入れると、"begin"自体は表示されずに、"notepad.exe"が実行され、"notepad.exe"を閉じると"end"が表示される時もあるようだ。「時もある」というのは、(タブブラウザなんかで)裏で他のウィンドウをアクティブにしたりすると、突然"end"が表示されたりすることもあって、いまいち挙動が安定しなかったりするから。

あんまりJavaScript、WSH方面に深入りする気はなかったんだけど、この辺ってやり始めると結構深そうだな。いわゆるバッドノウハウ系っぽいけど。

Published At2004-03-29 00:00Updated At2004-03-29 00:00

日記
また風邪と花粉症のミックスか (13:51)Edit

また風邪だか花粉症だかわからない微妙な症状になってしまった。今回は痰がひどいからきっと風邪なんだろうなー。ああしんど。そういやアルシンドっていたね。

Published At2004-03-30 00:00Updated At2004-03-30 00:00

日記
mapのネスト (13:51)Edit

map<string, map<string, string>>が通らないんで、困ったなーと思っていたら、map<string, map<string, string> >ならば通るのね。っつーか、確かによく見たら>>になってるじゃん。すげーくだらねー。けど、気づきにくー。

というわけで、STL(C++)素人の試行錯誤の実況中継でした。

Published At2004-03-31 00:00Updated At2004-03-31 00:00

日記
clamavとspamassassinとqmail-scanner-queue (13:51)Edit

2004/4/20

うーん、むき出しの実行ファイルを送りたがる人は結構いるのね。qmail-scanner-queueのレベルでのフィルターを緩和。拡張子フィルターはpifとscrだけに変更。


2004/3/31

最近の異常なウイルスメールの増加に、クライアントサイドだけでの対処だとちょっと気持ち悪くなってきたんで、clamavspamassassinqmail-scanner-queueを入れてみることにした。んだけど、なんかいまいち設定がよく理解できていないままにインストールしてしまったんで、正しく動作していないかも。一応ウイルスメールが削除されているログは残っているし、テストメールのいくつかは正しく送られているんだけど、すべてのメールに対して正しい処理が行われているのかよくわからん。あとでちゃんと見直してみないとなー。

2004/3/31-2

なんとかなったかな。初期導入時にはqmail-scanner-queue.plのQMAILSCAN_NOTIFYを"none"じゃなく、"admin"(管理者)とか"recips"(受信者)とかにしておかないと、何が起こっているのかわからない。あと、qmail-scanner-queueのログは/var/logとかじゃなくて、/var/spool/qmailscan/とかにあるんだね。

で、どうもclamavとかまでいれなくても、qmail-scanner-queueだけで十分な気がしてきた。http://www.es.qmail.org/quarantine-attachments.txtとかの定義ファイルで大まかなところをブロックしてしまえば、残ったものはクライアント側のウイルススキャンで対応できるし。

サーバーでのウイルス対策を行ったついでに、ランダムウイルスメールで着信したエラーメールには返信しないように修正。.qmail-defaultを適当なアカウントに割り振っただけだけど。aliasesにfastforwardしながら、aliasesにマッチしなかったアカウントは特定のアドレスに転送するのってどう書くのかな?←単に次の行に「&転送先アドレス」しておけばいいらしい。←嘘だった。それだとaliasesにも転送先アドレスにもどっちにも送られる。||でつなげば何とかなりそうだけど、「|| &転送先アドレス」じゃだめみたいなんだよなー。

2004/3/31-3

おおすげえ。なんかとてもいい感じでウイルスがはじかれてくれるよ。これだったら他のプロバイダメールなんかもこっちに転送してしまって、こっちでフィルタリングしてから受信するのもいいかもな。

ちなみにclamavの方もzipファイルとかを対象にそれなりに働いている模様。ほとんどをqmail-scanner-queueがはじいて、残ったわずかなものもclamavがはじいているって感じ。

2004/4/7

一部メーラーで文字化けが発生するとの報告が。どうやら、qmail-scanner-queue.plの850行目付近にある、

$findate = POSIX::strftime( "%d %b ",$sec,$min,$hour,$mday,$mon,$year);

で、%bが現在のlocaleでの月表記になっていて、それをそのままヘッダに出力しているんで、日本語環境だと日本語文字列がそのままヘッダに出力されてしまい、文字化けの原因になる、ということらしい。ひとまず、

$findate = POSIX::strftime( "%d %m ",$sec,$min,$hour,$mday,$mon,$year);

にしておく方向で対応。

Published At2004-03-31 00:00Updated At2004-03-31 00:00