« 2006年4月 | トップページ | 2006年6月 »

2006年5月の10件の記事

2006.05.31

俺プロキシ死亡

 月曜朝、俺プロキシ起動せず。
 GRUB(ブートローダ)がうまく動いてくれない。

 画面左上に "GRUB"と出たまま、起動せず。


 GRUB起動用FDこしらえてFD起動してみたけど、HDDのパーティションをマウントできない。
 filesystem type unknown とか出やがる。

 Fedora CoreのインストールCDから起動してresucueモードで上げて、GRUBの再インストールなんかを試みたけどダメ。

 Fedora CoreのインストールCDでアップグレードを選択して、GRUBだけ上書きしようとしたけどダメ。
 (途中までいけそうな感じなのだけど...)

 KNOPPIXでHDDマウントしようとしたけど、やっぱりダメ。 ext2としてファイルシステムをマウントできないようだ。

 あきらめてクリアインストールすることにする...
 airproxyの設定はともかく、2段目のRubyのWEBrick改が失われたのは痛い...

| | コメント (4)

2006.05.28

HIROMU専用機 (1)

 久々ロボネタ。

 新型機、Asso Di Cuori (ハートのエース)を作る前に仕事が出来た。

 先日のロボファイト3の懇親会でHIROMUが大興奮。
 その後、HIROMU専用機を作ることになってしまった。

 「不知火キングカイザーよりデカくて強いやつがいい!」
 ...ムリムリ。父ちゃんの小遣いじゃ。

 協議の結果、HIROMUの譲れない部分として「手にハサミが付いてること。」ということで妥結。
 どうも、ヨゴカスタムにインスパイアされたらしい。

Robo060528_1 というわけで、CAD引き始めました。

 今のところのイメージは、

 全高20cm、重量800gが目標。
 子供が扱う物なので安全性重視。
 サーボは3~4kg・cmクラスアナログサーボ(\1,500で買えそうなの。)。
 10軸程度。
 並行リンクを多用。
 とりあえず有線。

 予算3万円程度。

 ってな感じ。

 また夏のROBO-ONEは見送りかな...

| | コメント (0)

2006.05.22

WEBrickも入れてみた

 京ぽん2用Linux俺サーバの続き。
 
 airproxyでは、HTMLの削減設定は一律であり、サイト毎にカスタマイズが出来ないことから、airproxyの上段にもう1つプロキシを設けるような、多段構成にすることを思いつく。

 目に付いたのが、Rubyによる方法。
 Rubyは国産のオブジェクト指向スクリプト言語で、直感的な言語仕様が特徴。
 その中にライブラリとして、WEBrick という汎用HTTPサーバーフレームワークがある。
 これを使えばHTTPサーバやHTTPプロキシサーバが簡単に作成できる。
 ただし、このプロキシフレームワークだけでは、ただ中継するだけでキャッシュなどの機能はない。
 そのへんは自分で作っていくわけだが、単なるWEBサーバでは出来ないような面白いことができる。

 実装は下記のページを参考にしてやってみた。簡単。
Rubyist Magazine - WEBrickでプロキシサーバを作って遊ぶ
えとブログ(2006-02-10)
 方法論としては、2つ目の方と同じく、WEBrick::HTTPProxyServerを継承したクラスを作成することとした。

 あとはプログラム内に、アクセス先のサイト毎にカスタマイズを加えていく。
 基本的には、scriptやlinkタグ、スタイルシートなどの除去。
 あとはよく見るところのサイト毎に要らない広告や情報、イメージなどをばっさりカットする。
 場合によっては、必要なところ「だけ」抽出とか。
 プログラミング言語なので何でもあり。

 全ページ、語尾の「。」を「っちゅうことやねん。」とかに置換したりもできる。やらないけど。

 現在のところ、構成としては以下のような感じ。
Robo060522_1
クリックで大きくなります。

 airproxyは認証ユーザ毎にリクエストの user-agentを変更することができるので、そこを細工すれば、webrick内でそれを見てユーザ毎のカスタマイズを加えることも可。
 実際にはユーザと言っても私しか使わないので、「ユーザ」=「設定」ということになる。

 京ぽん2にはダイヤルアップ接続設定が3つあるので、以下のようにしました。
①俺プロキシ使用。プロキシ認証で最大圧縮ユーザ(設定)で接続
②俺プロキシ使用。プロキシ認証は接続時に入力
③WILLCOM標準アクセス

 普段は①で使用します。

 以下の写真はデータ削減効果。
 私のHPの本館トップのHTMLテキストがどのくらい削減されるかを示した物。
 京ぽん2の表示です。「ページ全体サイズ」は実際の転送量を示しており、HTTPでgzipされている場合は、その圧縮時のものです。京ぽん2の画像表示設定はOFFでやってみました。
 HTTPヘッダ分などは含まれないようなので、送受信しているデータは実際にはもっと多いです。

Robo060522_2 Robo060522_3 Robo060522_4

無圧縮
15130byte

WILLCOM高速化サービス
5294byte

俺サーバ圧縮
4804byte

 WILLCOM標準の高速化サービスは月額300円のオプション。 画像の画質劣化圧縮と転送のgzip化。今回の俺サーバとやってることは基本的に同じだが、HTMLそのものの削減(修正)まではしていない。その差がちょっと出てる。
 私のページは広告などがないので、HTMLの削減は微々たる物だが、ページによっては大きな削減となる。
 よく見るページは、狙い撃ちでカスタマイズすることで更なる削減が可能だ。
 
 WILLCOMではPCの携帯からのダイヤルアップ向けに上の携帯用の高速化サービスとは別に、月額800円の圧縮サービスがあるが、俺サーバでこれも不要。

 ウチは固定アドレスじゃないので、光モデムの電源を入れなおすと、京ぽんのプロキシ設定のためのグローバルIPアドレスが変わってしまう。
 そのため、あとはダイナミックDNSの利用が必要。

 速度に関しては、標準の高速化サービスと大差ない。もしかしたら遅いかもしれない。
 今サーバとして使ってるマシンだと、処理中はCPUの負荷が100%べったりとなるので、ここがボトルネック。

| | コメント (2)

2006.05.13

BitDefender 入れてみた

 京ぽん2用Linux俺サーバの続き。
 ONOさん、ロボネタじゃないのに紹介していただき恐縮です。

 非公開とはいえ、外部からのアクセスを許可するということで、セキュリティにも気を使わなければいけない。
 基本的にはルータからのポートフォワーディングは特定ポートのみだが、何かあってからでは遅いし、Linuxバージンなので何かあっても分からないし対処できない。
 物理的にDMZを設けるような余裕も無いので、今のうちにこのマシンに対して思いつく限りの武装をしておくことにする。 

 というわけで、Linux用のフリーのウイルス対策ソフト BitDefenderを入れてみました。
 Linux用のフリー版はこちらからダウンロードできます。
 (製品版と違ってリアルタイムスキャンなんかは出来ないらしいです。)

 BitDefender-Console-Antivirus-7.1-3.linux-gcc3x.i386.rpm をチョイス。 Fedora Coreはgcc3系のrpm版がいいそうだ。

 BitDefenderをインストールする前に、compat-libstdc++ というのが必要だとか。GCCのC++ライブラリらしい。
 入れておく。
# yum install compat-libstdc++-33
 でインストール。

 続いて、ダウンロードした BitDefender をインストール。
# rpm -ivh BitDefender-Console-Antivirus-7.1-3.linux-gcc3x.i386.rpm

 これで入ったはず。

 で、BitDefenderの定義ファイルをアップデート。
# bdc --update

 エラー発生。 "Error: can't find update dll"

 ググってみると、前述の compat-libstdc++ が無いと、こういったエラーが出るらしいが、入れたしな...
 うまく入っていないのかと思い、もう一度入れなおしてみてもダメでした。
 あんまり情報ないし、動いてる人もいるみたいだし。
 Linuxをつい数日前に始めたような初心者にはよく分からんです...

 1つ、セキュリィティ機能の SELinux が怪しいみたいな話もありました。
 その事例では、Frdora Core 4で動かなくなって、結局解決しなかったっぽくて、3に戻してましたね。

 確かに、ウチのもSELinuxのログに、こんなのがありました。 bdc (BitDefenderのコマンド)が、SELinuxのポリシーに引っかかってるぽい感じ?
----------------------------------------------------
May 13 13:48:19 proxy kernel: audit(1147495699.314:22): avc: denied { execmod } for pid=2868 comm="bdc" name="bdupd.so" dev=dm-0 ino=939236 scontext=root:system_r:unconfined_t:s0-s0:c0.c255 tcontext=system_u:object_r:usr_t:s0 tclass=file
----------------------------------------------------

Robo060513_1 試しに、SELinuxの設定を「enforcingモード」から「permissiveモード」に変更してみました。

 「enforcingモード」はSELinuxの設定ポリシーが適用されるモード,
 「permissiveモード」は設定ポリシー上は引っかかる物でも、とりあえずログには吐くけど許しちゃうモード。

 だそうです。

 で、もう一度BitDefenderの定義ファイルをアップデート。
# bdc --update

 今度はOK。
 確定。 SELinuxが原因。

 とはいっても、セキュリティ強化のためにBitDefenderを入れようとしてるのに、SELinuxを切るのも本末転倒なので、そのポリシー設定をざっと眺めてみました。

Robo060513_2_1 なんとなく気になった項目があったので、チェック一閃! おぁたぁ!(ケンシロウ風)

 「互換性」-「テキストリロケーションを用いた共有ライブラリ・・・」 です。

 で「enforcingモード」で動かしてみた。
 おお! 動いた。 

 チェックを外すと... 動かない。 

 変えたのはここだけ。
 一撃かよ。 すげえよ俺!

 ちなみに、SELinuxの設定項目数ですが、ものすごい数があります。
 そのうちの1つです。
 昔から結構、この手のカンはいい方です。

 やり方が正解かどうかはわかりませんが、とりあえずSELinuxの機能はほとんど生かしたままで動かすことが出来ました。
 このチェックがどれほど危険なのかは分かりませんが、全部切るよりはるかにマシでしょう。
 ホントは、特定プログラムは例外的に許可とかいったような設定があるんだろな...

 ...おしえて、人形つかいさん...

 定義ファイルもアップデートできたので、スキャンしてみる。
# bdc --delete --list /
(発見したら削除。作業状況を表示。)

 出来ました。
 これも、さっきのチェックを入れないと動きませんでした。

 今の構成で、スキャンに約1時間かかります。
 あとは、この定義ファイルのアップデートとスキャンをcronとかで定期実行すればいいかな。

| | コメント (2)

2006.05.12

airproxy入れてみた

 さて、昨日立てたマシンに airproxyを導入する。
 airproxyは、AirEdgeによる接続を目的に作成された圧縮プロキシだ。
 実際のところはAirEdgeに特化したような物ではないのでなんでも使える。

 以下のような感じで通信量(つまりはパケット量)を削減し、パケット料金削減と高速化を図る。
  ・画像劣化による再圧縮
  ・HTTP1.1によるgzip圧縮。
  ・特定文字列やリンク先のフィルタ
  ・外部から接続可能なマシンに設置し、モバイル機からはプロキシとして設定。
   (京ぽん2のOperaもプロキシが設定できる。)

 airproxyはJavaで動いており、Windows上で動かすことを主として考えられているようだが、もらったPCはOSなしということで、Linuxを入れたわけです。
 (OS買うくらいなら、有償の公式圧縮サービスを契約した方が安上がり。)

 実際には以下のような感じで入れました。

1.JRE1.5.0_06のインストール
  RPMはよく分からんので、普通に入れた。
  RPMとかで入れると、yumで管理できたりするのだろうか?

2.airproxyをインストール
  インストールと言っても、ダウンロードして展開しただけ。
  ポートは8080でリスンするよう設定。
  あとは、javaで起動。

 で、試してみた。
 Fedora Core(airproxyを入れたマシン)上のFirefoxのプロキシ設定を自分自身にする。
 ちゃんと動いた。 画像が劣化してる。

 次。
 違うマシンから同様にしてみた。つまりプロキシ接続先はFedora Coreのマシン。
 動かない...

 しばらく悩んだが、どうやらFedora Coreのファイやウォールに引っかかってるようだ。
Robo060511_1
 というわけで、許可ポートに8080を追加。

 うまくいったようだ。

 実際にはこんな感じになる。
Robo060511_2

 Yahoo!のロゴ画像が劣化しているのが分かります?
 このロゴの画像ファイルサイズは、オリジナル8883バイト→airproxy後853バイトといった感じ。約1/10。
 どのくらい劣化させるかとかは設定ができるようになっています。
 その他、右肩の広告フラッシュが消えてたりとか。
 あとはデータ転送自体がgzipかかるというわけです。

 とりあえずローカルでの実験成功。

 あとは外部からの接続ができればOK。

| | コメント (0)

2006.05.11

Fedora Core 5 入れてみた

 京ぽん2用の俺サーバを立てるためにFedora Core 5 (Linuxディストリビューションの一種)を入れてみました。
 導入PCは前の会社でお世話になったtaroさんに頂いた日立のノートPC(Celeron400MHz,256MB)。
 画面は800x600でバッテリはありませんが、LANポート内蔵なのでサーバとして使うには丁度いい感じです。(ディスプレイのヒンジの部分を瞬間接着剤で固めた跡あり...)

 インストール媒体は先日買った本についてたCD5枚組み。
 指示に従って進むだけ。 簡単です。

 とりあえず起動できるようになって、他のマシンのWindows共有フォルダが参照できることも確認。
 標準で入っていたFirefoxも動く。 当然インターネットにも接続できる。

 5年程前にKNOPPIXでちょっと遊んだことがあったのだけど、その時のKDEは「こんなもん使い物になるか!」ってくらい遅かったが、今回のGNOMEはそこそこいい感じで動く。
 ただ、ハードウェアをしゃぶり尽くし、描画プロセッサメーカのドライバサポートも厚いWindowsOSと比較し、操作のもっさり感は否めない。
 クライアントPCとして快適に使用するにはかなりハイスペックなマシンが必要そうだ。

 今回驚いたのは、yumの存在。
 Microsoftで言えばWindows Updateが近い。

 これを使えば導入されているコンポーネント,ライブラリを最新版にアップデートしてくれる。
 ただし、MSのWindows UpdateがMSのプロダクトのみを管理しているのに対し、yumはFedoraプロジェクト配下以外のものも対象とすることができる(Firefox , Tomcat等)点が素晴らしい。(オープンソース系だけ?商用ソフトもできるのかな?まあ、多分商用ソフトは使わんと思うが。)
 
 インストールもこれで行う。 便利になったものです。

 とりあえず現状インストールされてる物をアップデートしておくことにする。
 142のパッケージが対象で、総量230MBもあるらしい...
 とりあえず仕掛けて寝る。 今日はここまで。

| | コメント (7)

2006.05.06

ロボファイト3(ORC)見物

 5日はロボファイト3(ORC)。
 競技参加は無いため、HIROMUと見物に行ってきました。
 昼の準決勝あたりから見れました。

 いやあ、決勝戦、盛り上がりました。
 かずさんのKZR-4 vs Dr.GIYさんのヨコヅナグレート不知火。

 どちらも腕に「角材」を用いた大阪・東京を代表する武闘派マシン。
 KZR-4 1.8kgに対して、不知火は3.8kg。 体重差約2倍。
 HIROMUの予想では不知火優位。

 KZR-4は持ち前の高機動を生かして、不知火の背後に回ります。
 不知火もこの重量にしても、けっして遅いマシンではないため、ポジショニングだけでも高度な駆け引きが行われます。
 
 どちらも譲らぬまま、5分経過。 2対2で延長突入!
 延長戦は5分の休憩の後、2分間のサドンデス。
 
Robo060506_2 KZR-4、一瞬の隙を突いて、不知火の背後に。
 ウェイトのよくのった正拳突き一閃。   クリーンヒット。  不知火ダウン。
 KZR-4勝利!
 HIROMUも大興奮。

 その後のバトルカオスはHIROMUの希望で緊急参戦。 人ごみのなかHIROMUを一人で置いとけないので、やらないつもりでしたが、どうしても出ろと言うなら出させてもらいます。 ロボットフォースさんもOKとのことでした。
 ただし、すぐそばにずっといるという約束をした上で。

 晩は恒例の居酒屋バトル。(あれ?ケータイで写真撮ったつもりだったけど、何処にも残ってないや)

 ランブル3回やって、優勝は
  ・sakiaさんのmicro-ghost
  ・けんじくんのレイター
  ・まさゆきさんのチロロッポ
 もちろん不知火やKZR-4、キングカイザーも混じってましたよ。
 私はいいとこなく、HIROMUから厳しいクレーム...


 以下、会場にて。
Robo060506_1 控え室にて。
 ドラゴンモードのIndraと闘う。

Robo060506_4 頭がついた。

Robo060506_3 まぼたんさんの新型、ヴァルキュリア。
 でけぇ~!
 まぼたんさん本人より、奥様の苦労がしのばれる力作。


| | コメント (3)

2006.05.04

ロボファイト3行ってきました。

 ロボファイト3行ってきました。3日のバトル(SRC)と4日のアスレチック。
 明日のORCは出場ナシなので、HIROMUを連れてのんびりと。

Robo060504_1 まずはいつものとおりAMATERASのお祓いから。

 今回はなんと念願のSISOさんのARUMO-SiRと対戦。
 徹夜の仕上げでAsso Di Fioriはかつて無い仕上がり。結構調子いいぞ。Assoも張り切ってる。
 かなわぬまでも、せめてARUMO-SiRのカッコイイところをお客さんに分かってもらいたい。
 そのためにはAssoも頑張らなくちゃならんのだ。

Robo060504_2_1 しかし張り切りすぎて、開会前のリングでの調整中に左肩のリンクがポッキリ...

 スペアは無い。 対戦まであと1時間しかない。
 Robo060504_3 中村ハカセに助けていただき、ワッシャを添え木として、プラリペアで固めていただきました。
 しかし、ベークライトとの相性は悪いらしく、プラリペア部分が剥離したため、それをさらに瞬間接着剤で貼り合わせてなんとか間に合わせました。
 うん、とりあえず動く。

 さて対戦。
 お、いいのが入った! ダウン取れちゃったよ。 やったー!

 でもその後、転倒の際、やはりさっきのリンクが折れちゃいました。 左肩ヨー軸はブラブラ。
 なんとか起き上がりはできるものの、右腕だけでARUMO-SiRに勝てるわけも無く...

 2対1で敗北。 しかし全力は尽くした。 負けて悔い無し。
 ARUMO-SiRの強さ、お客さんにも分かってもらえたかと思います。

 SRCクラスはMARUファミリーのRyoma君、Ken君の兄弟によるワンツーフィニッシュ。
 SISOさんは3位。最後の方はサーボ逝ってましたね。 お疲れ様です。

 しかし、ここのところ猛威を振るうMARUファミリー、誰か彼らを止められる奴はおらんのか。


 さて、2X2バトルもある。
 急いで修理しなきゃ。

Robo060504_5 やってみたのがこれ。
 ビスで肩ヨー軸を固定。 ブラブラするより動かないように止めてしまった方がいいと考えたため。
 しかし、腕をすぼめないと寝返りが打てないことが判明。却下。(ウチの子、仰向けからの起き上がりは寝返りが必要なので)

Robo060504_4 あれこれ考えてるうちに、手持ち部材で丁度いいのが見つかった。 MicroMGサーボホーン。
 干渉して可動範囲は狭いがまあ、動かないよりマシ。
 起き上がりも万全。 なんとかなるかも。

 2X2、2回戦までで負けた人をシャッフルして、ペアを作って行うチーム戦です。
 パートナーはsakiaさんのmicro-ghost。
 ROBO NOVAベースの綺麗なマシンです。

 SRC機の中では強豪と言っていいBLUEさんのUNIVERSAL FunとKさんのPBロボのペアに準決勝で負けたものの、3位ゲット。

 前回ロボゴング3の2X2は優勝だったので、Asso Di Fiori、ロボファイト2回戦負け級の中では最強レベル?

 sakiaさん、ありがとうございました。
 前回2X2で敵として当たった時から、すごく動きがよくなっていました。

 バトルカオス...Asso、バトルカオス苦手です。
 仰向け転倒すると、寝返りのために広い空間が要るのですが、バトルカオスではそのような空間はありません...

 3日の締めも、テーマソング熱唱だったのですが、となりのブースからクレームが入り、途中で中止。
 まあ、仕方ないですね。 貸しきり会場と言うわけではありませんしね。


Robo060504_6 ARUMO-SiRと。

Robo060504_7 micro-ghostと。

 4日はアスレチック。 障害物競走です。

 練習用のバッテリが回りませんでした。 本番用に1本は温存。
 フルチャージで、約10分ほど稼動できるのですが、充電に40分かかります。
 バッテリは4セットあるのですが、充電器が1つしかありませんので、全然回りませんでした。
 家でも徹夜調整してたので、出撃時にフルチャージのバッテリはありませんでしたし...
 充電器、もう一組買お...

 数少ない練習機会で、1度、とんでもなくいい感じでクリアできたので、なんとかなるかな。なんて思っていましたが、本番はなんともなりませんでした。

 制限時間3分は短すぎですね。 ほとんどの人が完走できていませんでした。


 Asso Di Fiori、フレームにかなりガタがきています。軸穴(特に腰ピッチ)がかなりバカになってきてたり、フレームそのものにクラックが入ってたり。
 そろそろ退役か、運用するにしてもかなりの部分のフレーム作成が必要そうです。

 退役なら新型計画を早く遂行せねば...
 

| | コメント (2)

2006.05.03

準備不足...

 これから準備開始。
 徹夜っす。といってもさっきちょっと寝たけど。

 準備不足っす。 対戦相手の人、すまん。 

 あれ、そういやまだ対戦表、発表されてなかったっけ?
 ロボットフォースさんをチェック。

 うげ! SISO師匠のARUMO-SiRだ!

 目が覚めました。
 はい、仕上げます、今すぐ仕上げますとも!

| | コメント (0)

2006.05.01

いっぱい本買った...

 今日から新社へ出勤初日。
 早く帰れたので、新大阪の本屋で本買いました。

・Interface 6月号 \1,490 → SH2をゲット!
・トランジスタ技術 5月号 \880 → 4月号のMAXⅡ活用記事
・RedHat Linux 8 で始める最強自宅ネット \2,380 → 京ぽん2活用のためには自宅サーバ必須&勉強のため。

 ん? 電車の中で本見てて気がついた。
 RedHatって9まで出てなかったか? っていうか、 RedHat9の本買ったつもりなのになんで手元にあるのは 8? orz...
 間違えた...古いわ。これ。

 しかも、電車の中で京ぽん使って Wikipediaで調べてみたら、RedHatは9を最後とし、現在は一般向けには Fedora Core に引き継がれているとのこと...知らんかった...

 悔しいので、「RedHat Linux 8 で始める最強自宅ネット」のデストリビューションでとりあえず動かしてその後最新まで持っていこうと思ったけど、力弱く、川西の紀伊国屋でもう一冊購入...

・Fedora Core 5 で作る最強の自宅サーバー \2,919

 あ、いや、3日のロボファイトからの逃避じゃありませんよ。 
 連休明けです...連休明け。 ...多分。
 次の更新で、インストールしてたらごめん。
 

| | コメント (2)

« 2006年4月 | トップページ | 2006年6月 »