中の人を殺すゾ

mm-blue-w-textとあるドキュメントの翻訳をしている。静的なWebサイトを作成するのに、middleman というツールを使っている。

ビルドが終わると内蔵のWebサーバが起動するので、ブラウザですぐさま結果を確認することができてとても便利だ。しかし、CTRL+C でサーバを落とすことができることになっているのだが、

== The Middleman is standing watch on port 4567
^Clog writing failed. can't be called from trap context
^Clog writing failed. can't be called from trap context
^Clog writing failed. can't be called from trap context

ということになって、ちっとも終了できない。Google先生にお尋ねしたところ、これは MiddlemanのBug であるらしい。

新しいバージョンもでているようだが、バージョンの依存関係がややこしそうなので躊躇してしまう。

しかたがないので、プロセスを殺すことにした。以下がそのスクリプト。

#! /bin/bash
kill -9 `ps ax | grep middleman | grep -v grep | awk '{print $1}'`

ps でプロセスIDを取得して、grepawk で必要なIDだけを抜き取り、kill でシグナルを投げるという、原始的な方法だ。これに適当な名前を付けて、別のターミナルウィンドウから実行すれば、期待通りに死んでくれる。

追記

pkill -9 -f middleman だと、名前指定で殺せた。こんなコマンドしらんがや。

なめんなよ

2013-05-31T16-20-40_0うちで出荷したとある製品に、USBのケーブルが入っていないという問い合わせがあったらしい。調べてみると、中の国の製造元で入れなかったのだとか。

そもそもケーブルだけは大量に在庫が残っていたので、それを中の国に送りつけ、それと合わせて出荷することにしていたそうだ。しかしどういう手違いか、ケーブル無しで届いたらしい。

急遽手持ちのケーブルを流通倉庫に送り、そこで封入してもらうことになったのだが、保守用にとってあるケーブルなのでビニール袋に入っていない。同じサイズの袋を使っている別のものから流用することにした。

中の国との交渉を担当している第二の台湾人くん(上海に詰めている例の台湾人くんの大学の後輩)がいて、袋詰めの作業を始めたのだが、この彼の作業も雑だ。第一の台湾人くんは不器用でダメなのに対し、こちらは器用なのだが性格なのだろう、没有問題でやっつけてしまう。中古品だ!と言われること請け合いだ。日本人の神経質さをなめんなよ。

ということで偽装工作に定評のあるうさぎ亭主みずからがほとんどの作業を行うハメになったのであった。

特定しました 外伝

スクリーンショット 2013-04-18 18.31.04うちで扱っているとある商品は、別のモデルを他の会社でも扱っている。ネームプレートとバックパネル等を見ればわかるのだが、ちょっと見は区別がつかない。

もう半年以上前のことだが、ショップ経由で初期不良として数台まとめて返ってきた。たいていはユーザの知識不足でセットアップができなかったことを、「不良」扱いしてくるパターンがほとんどだ。
受け取ってしばらく放っておいたのを、チェックしようと開封した。競合メーカの下位機種が入っている。箱はうちのものだし、ちょっと見はわからないので、ショップは気づかなかったのだろう。

おそらくは、先に下位機種を買ったけれど、上位機種が欲しくなり、それを購入。直後に不良だと言って下位機種を箱に入れて素知らぬ顔で返金させたのだろう。

さて、その下位機種を通電してみると、各個体に付けるマシンネームが残っていた。xx_gu**i。xx の部分は該当機種の略号のようだ。ということは、掠め取ったうちのやつにも同じような名前を付けているに違いない。ネームサーバを参照してみると、ビンゴ! はたしてその名前が出てきた。これでグローバルIPがわかる。

whoisをかけてみると、保土ヶ谷のOCNを利用している、川崎市から横浜市にかけての住人らしいことがわかった。さらにいくつかの情報を元においかけると、コイツだ。マビノギとかいうゲームの装備を売りまくっている。どうせそれも不正なことをして手に入れたものだろう。

武士の情けでモザイクかけてあげるけど、悪いことしちゃだめだよ。

特定しますた

昨日のデータセンター火災の続きだが、これまで秘密とされていたデータセンターの位置をどうやら特定した。

情報は【リアル炎上】GMOクラウドのデータセンターが火事、通信トラブルが発生というまとめが詳しかった。

ここに載っている写真と、台北市内湖区陽光街という住所をもとにGoogleMapsでみると、このビルがそれのようだ。

http://www.ithome.com.tw/itadm/article.php?c=78937
http://www.ithome.com.tw/itadm/article.php?c=78937

ストリートビューでふり返ると、隣にAcerが入っているが、なんだかここのAcerには行ったことがあるような気がしてならない。地下にそこそこ大きなPCショップが入っていたはずだ。

nttcom_saitai

この台湾の新聞によると、ここは中華電信関連の企業がここを運用しているが、使われていない地下2階の駐車場に設置したUPSルームから出火、消防車11台、救急車4台が出動する騒ぎとなり、二酸化炭素消火器による影響等で4名負傷ということだ。顧客にはYahoo!奇摩、オンラインゲームなどがあり、さらにIP電話網も影響を受け、マクドナルドの宅配ができなくなった…のはどうでもいいが。

うちの上海オフィスは、グレートファイアウォールに閉ざされた中の国のネットワークではなく、台湾までVPNを引いて利用している。これも影響を受けてしまい、インターネットが使えなくなってしまったそうだ。

ちょうど24時間ほどたった本日12時ころに、ようやく復旧した。

半年ほどまえに、大阪のファーストサーバがミスでレンタルサーバの中身を飛ばしてしまったという事件があった。実はこの会社とはしばらく一緒に仕事をしたことがある。そして、今回のGMOはサーバを借りている。なにかに祟られているのだろうか。さくらインターネットにもサーバを借りているが、ここも逝ったりしたら、もう間違いがない。お祓いをしてもらわなくては。

サーバがこけてさあ大変

utrace会社で使っているwebサーバは、とあるレンタルサーバ屋さんに借りている。どうやらデータセンタは台湾にあり、NTT Taiwanが管理を行なっているようだ。

そのサーバが突然停止した。障害情報を見ると、データセンタ内で火災があり、ラックに電源を送れないのだそうな。NTT Taiwanの謳い文句には火災に強いと書いてあるのに皮肉なものだ。

で、IPアドレスをもとに場所を特定しようとしたら、以前は圓山大酒店のあたりを指していたピンが、玉山に刺さっている。ニイタカヤマに登ったのか? そのページの広告が、今回事故を起こしたサーバ屋さんというのは皮肉としか言いようがない。

いつになったら復旧するんだろう。

これを機に冗長化を考えなくてはならないな。

TG-TV100

まぁ、こういうのがある。なんでまた今頃単機能な地デジオンリーのチューナを!?というと、いろいろと訳ありなわけだが。

まぁ、これのおかげで、アナログチューナしかない我が家にも遅ればせながら地デジが導入された。地上波に観るべき番組はなく、NHKとクレヨンしんちゃんと笑点くらいしか観ていない。後はふしぎ発見くらいか。

このチューナのいいところ(?)は、マクロビジョンの コピーガード信号を出さない こと。他のチューナではHDDレコーダにアナログ接続しているにもかかわらず、ノーコピーにされてしまう。コピー禁止にしてまで守るべきものを放送していないくせに。

gitでもハマる

とあるサイト翻訳の手伝いをしている。

そのサイトはnanocというrubyで書かれたwebページ生成ツールを利用して作られている。nanocの書式で記述されたソースをHTMLに変換してくれる。これのメリットは可読性の良さと、事前にHTMLにを生成しておくために、サーバ側に負荷が一切かからないことだ。デメリットは時間や天気、ユーザごとにといったダイナミックに変化するサイトが作れないことだ。

メインのページの翻訳が終わったので、いよいよソース(nanoc)の編集にとりかかろうというフェーズに来たのだが、githubのprivateリポジトリで提供すると言われてしまった。実はgithubは使ったことがない。正直いうと、バージョン管理システムは原始的なCVS以来使ったことがない。だって、個人で使う分にはコレで十分だったんだもの。

ということでgithubの有料会員になり、練習のためにすかぱー番組表を登録してみた。手順通りに操作すると、README.mdは簡単に登録できた。しかし追加のファイルの登録方法がわからない。わからないわからないで、でたらめにやっていたらいつの間にか登録できていた。わけがわからない。

Bugzillaでもハマる

某台湾人クンがbug管理にBugzillaを使いたいと言い出した。ずっと以前はMicrosoftのそんなのを使っていたらしいが、いつの間にか誰もメンテしなくなっていた。

暇だったので、というよりもこれまで数週間、新人君(歳くってるけど)のお世話のために自分のことができなかった反動で、無性になにかをしたくなったので、サーバにインストールしてあげることにした。

Bugzillaをインストールするのに必要なものは、MySQLとPerl、Apacheだ。問題ない。tar ballをダウンロードして必要なディレクトリに展開して、まずは環境設定のためのチェックスクリプト checksetup.pl を走らせる。出るは出るは、あのモジュールがない、このモジュールがないと山のように警告が出る。install-module.plでモジュールを入れていくのだが、指定するモジュール名がよく分からない。

The following Perl modules are optional:
Checking for                   GD (v1.20)     ok: found v2.46 
Checking for                Chart (v2.1)      ok: found v2.4.5 
Checking for          Template-GD (any)       ok: found v1.56 
Checking for           GDTextUtil (any)       not found 
Checking for              GDGraph (any)       not found 

この場合、GDTextUtilとGDGraphが不足しているのでインストールしなければならないのだが、

./install-module.pl GD::Text

という具合に指定する。Chartの時はChart::Baseだった。規則性がない。

困っている人が多くいるようで、このようなページを見つけた。モジュール名が列挙されている。ありがとうRamesh。インド人かな?

なお、このリストになかったものは以下のようになっていた。


JSON-RPC        JSON::RPC
JSON-XS         JSON::XS
Test-Taint      Test::Taint
Encode-Detect   Encode::Detect

って、おい、install-module.pl –all で勝手にインストールしてくれたの!?

フェムトセル

オフィスが引っ越した。同じビルだが、階が変わって、今度は30階だ。天国にまた何歩か近づいた。

これによって、見晴らしが良いというメリットが生まれた反面、携帯電話の電波が弱くなるというデメリットが生じた。ことにお父さんのところがひどい。

仕方が無いのでフェムトセルを申し込んだ。極小電力の携帯基地局で、受信した電波をインターネット経由で転送するというシステムだ。無料だし。

申し込むと日をおかずにバンクの調査員がやってきた。まずは電波状況を確認するそうだ。結果は「窓際は特に弱いですね」であった。

それから待つこと2週間。機器が送られてきた。なぜかユニット2つ組だ。

ケーブルを差し込むだけだとタカをくくっていたら、とんでもない。NTTに「フレッツナンバー通知」設定を申請しなければいけなかった。これはインターネット経由で申し込めるのだが、申し込んでから1時間ほどたたないと、設定が有効にならない。

それでもようやく開通した。バリバリだ。

voxer

最近、身近な人が使い始めたVoxerという、スマートフォン用の新しいコミュニケーションアプリ。Skypeのように音声やテキスト、ファイルをリアルタイムに交換するだけでなく、相手がアプリを起動していなくても、メールのようにサーバに蓄積されたり、グループ機能があったりと、なかなかおもしろい。

久しぶりに使ってみたが、英語と日本語を混在させようとすると、言語モードを切り替えた途端に入力途中のテキストが消えてしまうことに気づいた。たとえば、「げげ、Voxerって使えねぇ〜」と入力しようとしたとする。「げげ、」までを日本語モードで入力する。次に「Voxer」と入力するために英語モードに切り替えると、先程の「げげ、」が消えてしまう。「って使えねぇ〜」を入力するために日本語モードにすると、またも先程の「Voxer」が消えてしまう。結局入力できたのは「って使えねぇ〜」だけだ。以前からこうだったっけ?

知り合いのおっさんが、このVoxerのエージェント(?)をしている。たまたま相手がそのおっさんだったので、現象が再現することを互いに確認した。

おっさんがVoxerの中の人に問い合わせたら、AppleのBugだとか。それは絶対に違う、言語モードを切り替える際に、テキストバッファを初期化してしまっているのに間違いない。仮にAppleのBugだとしたら、同じような問題がもっと頻発しているはずだ。

それから数時間。ふと App Store を見たら、Voxerがアップデートされているのに気がついた。日本語と英語の混在なんたらと書いてある。ひょっとして!? ひょっとした。ちゃんとなおっている。やるな、Voxer。

しかしながら日本語のメッセージの最後の1行が読み取れない。これは、日本語と英語のフォントの高さを考慮していないからだ。おっさん、またもやVoxerの中の人にご注進してくれたようだ。明日にはまたアップデートがあるかな?

もう一つ、絵文字が使えない。受け取ったときに化けてしまう。でもこれは日本のあいぽんでのみ起きる問題かもしれない。