EthnaのCSRF対策

EthnaはCSRF対策機能まで実装してある。
すんばらしい。
クロスサイトリクエストフォージェリの対策コードについて

で、本来の使い方と違うかもしれないけど、CSRF対策限らず、「ある時点からセッションの内容が変更された」時のチェックとかにも何気に使えるので、これを応用して拡張した時のメモ。


■テンプレートにIDを埋め込む時、GETで渡したい場合
これ公式サイトにはPOST時のことしか載っていなかったけど、getの時のも用意されてそうだなーとソースを見たら載ってた。

{csrfid type="get"}で
ethna_csrf=xxxxxxxxxxxxx~
ってコードが生成されるんで、こんな感じに書くとOK

a href="http://hogehoge.com/index.php&{csrfid type="get"}"



■Sessionが匿名の奴(anonymous)の時も使いたい
Ethna_Plugin_Csrf_Sessionでは、anonymousだと弾かれてまう。
ので以下のように独自のプラグインを作成

class Hoge_Plugin_Csrf_Session extends Ethna_Plugin_Csrf
{
    /** @var    object  Ethna_Session    セッションオブジェクト */
    var $session;

    /** @var    bool    anonymous        セッションのanonymous */
    var $anonymous;

    /**
     *  Hoge_Plugin_Csrfのコンストラクタ
     *
     *  @access public
     *  @param  object  Ethna_Controller    &$controller    コントローラオブジェクト
     */
    function Hoge_Plugin_Csrf_Session(&$controller)
    {
        parent::Ethna_Plugin_Csrf($controller);

        // オブジェクトの設定
        $this->session   =& $this->controller->getSession();
+       $this->anonymous =  $this->session->isAnonymous();
    }

    /**
     *  トークンをViewとローカルファイルにセットする
     *
     *  @access public
     *  @return boolean  成功か失敗か
     */
    function set()
    {
-       if (! $this->session->isStart() {
-           $this->session->start();
-       }
+       if (! $this->session->isStart($this->anonymous)) {
+           $this->session->start(0, $anonymous);
+       }

        $token = $this->session->get($this->token_name);
        if ($token !== null) {
            return true;
        }

        $key = $this->_generateKey();
        $this->session->set($this->token_name, $key);

        return true;
    }

    /**
     *  トークンIDを取得する
     *
     *  @access public
     *  @return string トークンIDを返す。
     */
    function get()
-       if (! $this->session->isStart() {
-           $this->session->start();
-       }
+       if (! $this->session->isStart($this->anonymous)) {
+           $this->session->start(0, $anonymous);
+       }

        return $this->session->get($this->token_name);
    }

    /**
     *  トークンIDを削除する
     *
     *  @access public
     */
    function remove()
    {
-       if (! $this->session->isStart() {
-           $this->session->start();
-       }
+       if (! $this->session->isStart($this->anonymous)) {
+           $this->session->start(0, $anonymous);
+       }

        $this->session->remove($this->token_name);
    }

}


あと、リセットしたい場合(今までのを破棄&再発行)もあったので、関数追加した。
    /**
     *  トークンをViewとローカルファイルにリセットする
     *
     *  @access public
     */
    function reset()
    {
        $this->remove();
        $this->set();
    }


これだけじゃ折角追加した関数が使われないので、Hoge_Util.phpも独自に作成。
こっちは継承させて、以下の関数を追加。
デバッグ用にgetCsrfID()って関数も作ってみた。

    /**
     *  CSRFをリセットする
     *
     *  @access public
     *  @return bool    true:成功
     */
    function resetCsrfID()
    {
        $c =& Ethna_Controller::getInstance();
        $name = $c->config->get('csrf');
        
        if (is_null($name)) {
            $name = 'Session';
        }
        
        $plugin =& $c->getPlugin('Csrf', $name);
        $csrf =& $plugin->getPlugin('Csrf', $name);
        return $csrf->reset();
    }

    /**
     *  CsrfIDを取得する
     *
     *  @access public
     *  @return bool    true:成功
     */
    function getCsrfID()
    {
        $c =& Ethna_Controller::getInstance();
        $name = $c->config->get('csrf');
        
        if (is_null($name)) {
            $name = 'Session';
        }
        
        $plugin =& $c->getPlugin('Csrf', $name);
        $csrf =& $plugin->getPlugin('Csrf', $name);
        return $csrf->get();
    }
}


これで
Hoge_Util::getCsrfID();

とかすれば使えるように。
もう、どんどん拡張してるなー。
でもでら便利。

「1歳から100歳の夢」読みました

1歳から100歳の夢

1歳から100歳までの一般の人達の夢が紹介されている本。
真っ先に自分と同い年の人夢を見たり、人生の先輩方の夢を見たりとなかなか楽しめる本だった。

印象的だったのが、子供は純粋に、真っ直ぐに、一番大切なことをちゃんと感じているんだなあということ。
あと、年配者はただただ「感謝」というものが文脈から溢れていることだった。

図書館で借りてきたんだけど、買っても良いかなって思った。
優しくなれるし、元気になれる本。

素敵だったな。

とうとう買った!GR DIGITAL II

GR DIGITALII買った!

いろいろ悩んだけど、ほぼ日の糸井さんが使っているというGR DIGITAL IIを買った。
オリンパスのE-420と迷ったけど、携帯性に勝るGRにした。
買ってみて、正解だったなと思う。
まずは、これで写真を撮るってことを自分の生活に取り込めたらいいな。
一眼レフはその後でも遅くないなと思った。

もう大人なので、買う時は結構あっけなかったな。
結構な値段なんだけどね、度胸がついてきたのかね。

ネットで買うか店舗で買うか本当に迷ったんだけど、結局店舗で買った。
GR DIGITALは故障が多いらしいので。
でも、ビッグカメラとかに行ってみたけどあんまり安くなかったし、郊外にいる僕としてはあんまり名駅までカメラを直しに行くっていう発想にもならない。
アサヒドーカメラとかがある栄はもっとならない。

で、近場で安いところを探していたら、価格ドットコムのベスト10に入るような店がこっちの方にあったので、そこで買った。
ちなみに三星カメラってとこだった。
店員さんも感じが良かったし、結構老舗で町のカメラ屋さんって雰囲気も良かった。

ということで、これから常に携帯して、散歩なんぞ楽しみたいなと思っとる。
常に携帯しようと思ったら、やっぱりケースが無いと不安なので、週末にでも捜しに行けたらと思う。

何はともあれ楽しみだー。

「マニマニ」読みました

マニマニ (Feelコミックス)

彼女良いね。
ジャケは見たことあったんだけど、読んだことなかった。
大人の少女マンガを書いたみたいなことを作者が後書きで書いてあったけど、なるほどなーって思った。
全部救われる感じの終わり方が良いな。

ちょっと辛い物語よりも、少しだけこころがポカポカするマンガの方が最近好きになってきた気がする。
和み系。

初めて撮ってみた

GR DIGITALを会社に持って行った。


R0010013
朝は撮る時間が無かったので、駅で。

R0010025
そんなに都会じゃないんだけど、会社の近くで。
こういう風に撮れるところがGRDの人気の一つなんだろうな。

R0010057
帰り道で人通りの無いところで。
雰囲気がよく撮れてるなー。

何度かシャッターを押したんだけど、ちゃんと撮れる時と撮れない時があったので、週末買ったところで見てもらうつもり。
早速だけど、買ったばかりだからすぐ見せれるって物あるし。
そういう不具合はあるみたい、残念だけど。

ついでにソフトケースも買おうかな。
でも、なんか良いな~。

散歩が一気に楽しくなった。

Ethna 2.3.5 リリース!

もうEthnaって開発終わってんじゃないの?とIRCで嘆いたら、わーっとみんなからコメントがあって、なんだ表には出てきてないけど結構皆まだ触っているんだと思ったのが、確か去年の年末だったかなあ。

久しぶりにIRC覗いたら、Ethna 2.3.5リリースの瞬間に立ち会えた。
グダグダしていたけど、ちょっと熱があって素敵だったな。
みんな自分の仕事あるのに、睡眠時間削って平気で貢献しているのを見て、本当に凄いなと思った。

僕も、公式ドキュメントが間違っているとかちょろっと指摘したら、直ぐ対応してくれた。
素敵。

Ethnaのコミュニティはこういうアットホームなのが良いな。
今回はメンテナンスリリースってことで、大きな機能の追加とかは無いけど、次のリリース時にはなんとUTF-8対応とか書いてあったのでびっくりした。
でら熱い。

っつうことで、メインで頑張ったmumumuさんお疲れ様でした!

近所の田んぼの水周りにワクワクする

近所の田んぼの水周り

最近、近所の田んぼに水がガシガシ入っている。
それがなんだかワクワクする。
嬉しい。

カメラを持って、被写体を探しながら歩くことで、発見したものの一つ。
まだ、足を止めて、しゃがんで、じーっと水の中を覗くって程まではいかないのだけども。

「道のかなた」読みました

道のかなた

ビレバンで見て一目惚れ。
写真集なんて買う柄じゃないんだけど、この本は好きだ。

僕はこういう道が好き。
その先には何があるんだろうってワクワクするような道。
そんな道の数々が大集合している。

ビレバンありがとう!
僕もこんな道を歩きたいな。

CAFE banyantreeの駐車場のブロックとか

CAFE banyantreeの駐車場のブロック
こういうところまでこだわっているのを見ると、なんだか嬉しい。

夕方のCAFE banyantreeの店内
ここのカフェはオシャレだけど、居心地は良い。

GR DIGITAL II やっぱり不具合

シャッターが押せない現象が何度もあった。
買ったお店に持っていったらやっぱりおかしいといわれ、メーカーに問い合わせてもらうことに。

そんで、今日お店の人から電話があって「シャッターが押せなくなるような設定はありません」とのこと。
修理になるところを、買ったばかりだったので初期不慮ということで、新品と交換ということになった。

不具合が多いとは聞いていたけど、まさか自分が早速なるとは思わなかったなー。

けど、店舗で買って良かった。
ちょっと遠いけど、ドライブがてらまた行くかね。

Tristan Prettyman - Hello

Hello

前作の雰囲気を期待していると面食らうかもしれん。
僕はもろくらってまった。
シンプル&アコースティックな雰囲気は後退してしまった。

良い意味では音楽的成長が感じられ、悪い意味では平凡になってまったって感じ。
ほんと、なんか凄くフツー。

ビジュアル的に彼女は可愛いし、声も相変わらず魅力的だ。
ジャケも素敵。

けど、なんだか物足りない。
期待が大き過ぎたのかしら。

彼女はサウンドという鎧を脱ぎ捨てたと思うんだけど、それはちょっと早計だった気がする。
物凄く良い曲を書くって感じじゃないものな、スタイルっつうかそういうので聴かすタイプだと思ってたし。

ライブ行こうと思っていたけど、悩むなこりゃ。

MySpace.com - tristan prettyman

「君と会えたから・・・」読みました

君と会えたから・・・

偶然見つけたブログに、ほのぼのした新婚生活が綴られていた。
年も近そうだったし、地元が名古屋というのも親近感が沸く理由の一つだった。

そこで、紹介されていたのがこの本だった。
なんとなく気になったので、読んでみた。

前半は良くある自己啓発本だった。
やりたいことをリストとして出そう
自分が誰かにしてあげることをリスト化
等。


主人公も高校生なので、それぐらいの人が読むと良いかもしれない。
俺はもう30になろうとしているので、なんだかそういうのはもう良いなって思っちゃう自分がいる。
同じようなことが書かれている本を既に読んできたからかもしれない。

通常の自己啓発とはちょっと違ってそれなりにストーリーがあり、特に後半は楽しめた。

この本で心に残ったことは、
「自分らしい人生を」と「明日は当たり前には来ないから、今日一日を大事に」
だな。

自分らしさなんて、どこにあんだよ!ってのはさておき、そんなことを考えている青臭さは常に持っていたい気がする。
一日を大事に生きなさいって、至るところで何度も目にしてきたけど、いつのまにか忘れてしまう。

そういう気持ちや考えを思い出すってだけでも、読んだ意味があるものかもしれないな。

人間は忘れる生き物。
ホントは脳のどっかに残ってんのかなあ。

Muffs - Happy Birthday to Me

Happy Birthday to Me

今更ながら買ったMuffsの3rd。
ちょっと切ないタイトルだけど、このアルバムはメロディも切ない。
というか、とっても良い。
良く中古屋で見かけていたから、めちゃくちゃ売れたのかな?
ガンガン売られてしまうような作品には思えないけど。

メロディが良いってやっぱ強いなー。
どんな気分の時でも、ある程度聴けちゃうものね。

こういうあんまりジャンルにとらわれていないバンドって好きだ。

MySpace.com - The Muffs

Kathleen Edwards - Asking for Flowers

Asking for Flowers

前作が地味だったんだけど、良く聴いてたんで今作も迷わず買った。
何がびっくりしたって、年下だった!1個だけど。
でら渋いな。
同い年ぐらいで、こういう音楽やっている人いなかったなー。

良くも悪くも前作の延長線上にある感じ。
落胆するわけでもなく、ビックリするほど感動するわけでもなく、予想通りの作品って感じかな。
Lucinda Williamsとかは、どんどん大人しくなっているという感じなので、ソフトになっていないところはちょっと嬉しかったな。

ま、同年代だでな、枯れるのには早いか。

MySpace.com - Kathleen Edwards

Ethnaでビット演算子って始めて知った

結構アクセスが増えてくると、セッションが上手く繋がらないことが多くなってくる。
で、Ethnaの場合だと、Ethna_Sessionクラスの_validateRemoteAddr関数が弾いているっぽい。

コメント欄で
セッションに保存されたIPアドレスとアクセス元のIPアドレスが同一ネットワーク範囲かどうかを判別する(16bit mask)

って書いてあったんだけど、よう分からんかった。

■16bitマスクについて
多分
xxx.xxx.yyy.yyy
で、xの部分(16bit分)が変わったらいかんよって事だ。
逆にyの部分(16bit分)が変わっても、同一ネットワーク範囲とするってことだ。

まあ、会社とかになると24bitのサブネットマスクとか当たり前になるので、これってセキュリティ上厳しいのか厳しくないのかようわからんけど、まあ、何でも自由ってのよりは全然良いわな。
それは間違いない。

で、意味は分かったんだけど(多分)、今度はソースが解読できない。

function _validateRemoteAddr($src_ip, $dst_ip)
{
    $src = ip2long($src_ip);
    $dst = ip2long($dst_ip);

    if (($src & 0xffff0000) == ($dst & 0xffff0000)) {
        return true;
    } else {
        $this->logger->log(LOG_NOTICE, "session IP validation failed [%s] - [%s]",
                           $src_ip, $dst_ip);
        return false;
    }
}


ip2long()とif文中にある"&"演算子。
ip2long関数は、まあすぐ調べることが出来たんだけど、"&"演算子がなかなか出てこなかった。

で、見つけた。
【 ほでなすPHP 】 PHPの基本 -> 演算子

結局「ビット演算子」ってものらしい。
ビットっていうぐらいだから、2進数でごにょごにょやるらしい。

0xffff0000の見た方がわからなかったんだけど、多分最初の0xってのは、正負の記号と見た!
んで、後ろのffff0000が32bitを表しているはず!

で、ffff0000を2進数で直すと
1111 1111 1111 1111 0000 0000 0000 0000

となる。

IPアドレスは8bit×4で32bitだから、上のにあわせると
11111111.11111111.00000000.00000000
↓
255.255.0.0

って感じになる。

んーこれって数学?

つまりのところ、このif分は、fの部分の16bit分がマスク扱いで、そこが一緒かどうかみてるってことね。
それが一緒なら、同一ネットワークですよと。

んーこうやってマスクのチェックをしていたんだなと納得。
凄いなあ、藤本さんは!
年下とは思えない・・・(涙)

さすがPHPのコミッターだなーって思ったけど、学校行って勉強した人とかにとっては普通かな?
独学の僕には新鮮だったわ。

つか、こんなの無理だわー。

人通りが少ない帰り道

明るい帰り道

毎日、毎日、僕が見ている帰り道の風景。
ポツリ、ポツリと足早に帰路に着く。

GR DIGITAL IIを交換してもらった

カメラ(GR DIGITAL II)を交換してもらいに行った。
店頭で、再度不具合の検証。
こういう時に限って、再現しないもの。
でも、結局交換してくれた。
交換してシャッターを押したら、全然感覚が違ったのでビックリした。
カメラってのは、一つ一つ微妙に違ってくるのかもね。

シャッターを押しても切れない状態は無くなっていた。
やっぱ初期不慮だった模様。

雨の日の会社の前
試しに撮ってみたら、ちゃんと撮れた。

「山人昔楼」に行ってきました。

夕方の山人昔楼

雑誌に載っていたんだけど、落ち着いた雰囲気の古家を改装した郷土料理屋さんでご飯を食べてきた。
僕としては結構な値段だったんだけど、ゆったりと贅沢なひと時を過ごせたかな。
ご飯の量も多かったし、仲居さんもそんなにかしこまった感じじゃなくて良かったし、個室だったしってことで、あんまり気張らなくて済んだのも良かった。

たまにはこういうのも良いもんだなあ。
この年でやっと「形の残らないもの」にも、ある程度の金額が出せるようになってきた。

また、いつか来たいね。

実質初めての車検でいろいろわかったこと

僕の愛車のネイキッド(通称ネイちゃん)を車検に出した。
車検切れの1日前になんとか完了。

今までも自分の車を持っていたし、車検を通したことはあったんだけど、親の車と一緒のところでやってもらっていたので、自分はお金を払うだけだった。
んで、実質今回始めて一通り車検の手続きを行ったんだけど、やって初めて分かったことをメモ。

(1) 頼むところによって値段&サービスレベルが違う
ディーラー、町工場、ガソリンスダンド等いろいろあると思う。
前は町工場でやってもらってた、親の付き合いもあったし。

で、今回はいろいろ吟味した結果ディーラーに決めた。
理由は「値段も高いけど、ちゃんとやってくれるし保障もしてくれる」ってとこ。
まだ使えそうな部品も安全の為に積極的に交換する傾向があるらしいけど、それ以外の手数料的な割高感は数千円程度かなって印象。

で、見積もってもらったら全部で10万5000円ぐらいだった。
税金関係で4万、検査&整備で6万5000円ぐらいだった。

今まで6万~7万ぐらいで済んでいたんで、今回もそんぐらいかなと思っていたんだけど、結構高くついたなってのが最初の印象。
ディーラーの人も「どうしても高くなっちゃいまして・・・」とか言ってたんで、やっぱちょっと高いんだろうな。
でも、ブレーキパットとかもろもろ変えないと、「車検通りません」って言われたんで、今回はしょうがない出費のような気がする。

で、内訳を調べてみると、何も大きな部品の交換とかがなければ、もう2~3万安い感じ。
っつうことは、今まで頼んでいた町工場と比べても、それ程大きな差は無い気がした。


(2) 代車は早くしないと予約が取れない
今回は2週間ぐらい前に申し込んだんだけど、結局ギリギリの平日しか取れなかった。
もっと前に申し込んでおけば、土日ですんだかなー。
結局、平日会社を遅刻&早退でなんとか切り抜けた。
事前に準備しんとかんな。


(3) 車検はすぐには終わらない
ダイハツのディーラーでは一泊二日だった。


(4) 自動車税を収めた書類が必要
領収書というか、証明書が必要。
これ、人によって車検の時期に請求が来るのかな?
ようわからんけど。
間違って捨てるとめんどくさそう。


(5) 車検証とか車に張るシールは後から来る&自分で張る。
まだ来てないけど、2週間後ぐらいに郵送で来るらしい。
あーゆうの張るの苦手だから、やだなー。


(6)ディーラーだったからかもしれんけど、代車は無料、ガソリン代も無料
他のところならお金取られそう。


(7)綺麗になって帰ってきた
ちょっと期待していたんだけど、最初に乗った瞬間新しい車の匂いがした!
満足ー。


ということで、初めての車検は無事終了。
ディーラーでも、「出来るだけ安く済ませよう」的な感じで仕事をしてくれている感じがしたんで、次回からもディーラーで良いかなって思った。
何より車の知識に自信がない人は、ディーラーの方が良いかもね。

「名作早わかり 夏目漱石全作品」読みました

名作早わかり 夏目漱石全作品 (コスモブックス)」という本を図書館から借りてきた。
僕は漱石が大好きで結構読んでいるんだけど、次に何を読もうか参考にしようと思ってこの本を読んでみたら、これはこれは酷かった。

それぞれの作品の背景とそれぞれの作品の抜粋、あと漱石の秘話みたいなのものが書かれている。
が、作品の背景はそんなに突っ込んでないし、作品の抜粋を載せていることが良くわからんし(数ページ)もう散々。
漱石の秘話もそんなに面白くなかった。(紙幣と切手両方になった漱石は珍しいとかなんとか)

これは夏休みの宿題の自由研究の資料用かよと思った。
少なくとも漱石が好きな人は読む必要まったくなし!

twitterもう一回始めてみた

去年流行に乗って始めてみたtwitter
以前は、いろんな人のコメントがただひたすら大量に飛び交っていて、何がなんだかわからなかった。
IM経由で使おうとしても、やたら遅延してたし。
友達も出来ないしどうしたものかなーっと思って、もう使わなくなってた。

で、久しぶりにtwitterにログインしたら、いろいろ変わってた。
日本語表示になっていたり、IMも遅延無く使えるし。
何より、人によっておしらせするかどうかを設定できるようになったし。

大分使い勝手がよくなったっぽいので、また今日から使い始めてみた。
EthnaのIRCの人達が、addしてくれたりして嬉しかったー。
あと、Gtalk経由でやってるんだけど、みんなとIMしているみたいになるのね。
なんだか不思議。
けど、おもろい感覚だなーと思った。

ちょっと続けてみようと思うわな。

久しぶりに同業者と飲み

何年振りかに会って飲んだ。

お金のこととか、結構ストレートに話してちょっと面白かった。
うちの会社はまだしっかりしている方だと再確認。

いろいろ話したけど、途中でお酒に潰された模様。
可愛そうだった。
いつもは、俺が気持ち悪くなる方なのに・・・。

彼は全体的に疲れからか覇気は無いんだけど、勉強会とかに出席したりしてやる気はあるみたいなんで、頑張って欲しいなあ。

でもまあ、どこの会社も結構いろいろ大変みたいだ。
この業界、楽しそうにうまくやっている会社ってあんまりない気がするな。
みんなぎりぎりな感じがする。

んー、こわいなー。

麺屋ココイチ

R0010260
ココイチのラーメン屋ってことなんで、まあ、あんまり期待はしていなかったけど、食べてみたらぼちぼち。
カレーのココイチと一緒で、そんなにむちゃくちゃ美味くないんだけど、安定感のある味。
新しい店に入ってみて冒険するのが嫌な時には、ココイチって最適だ。
接客は素晴らしいし、清潔感のある店内。

メニューもカレーのお店と一緒で、やたらあった。
意外とセットで頼んだ揚げ餃子が美味かったな。

TwitterFox良いかも

Twitterをまたやり始めて3日ぐらい。
IMで繋がったの初日だけ。
後はサーバー落ちるは、IMだけずーっと落ちてるはでどうしたものか。

他の人見ていると、IM使っている人少ないみたい。
そりゃそうだ、こんだけ不安定なら。

っつうことで、他のツールを探してみた。
とりあえずFirefoxのアドオンで良さそうなのがあったので入れてみた。

TwitterFox :: Firefox Add-ons
これ良いわー。
ひとまずこれで。

他の人みたいにRubyのライブラリとか使ってカッコよくやりたいけど、Windows使ってると逆にそういうのはめんどくさいからなー。

「アフタースクール」みました

アフタースクール」観た。
結構好きな俳優さんが出ていたし、なんと言っても大泉君出てるし。

内容的にはコメディだった。
面白かったけど、大泉君が普段のテレビのキャラクターのまんまの演技でつまんなかったかな。
もっといろんなことやらせれば良いのに。

映画館でみたんだけど、会場のみんなのリアクションが良かった。
みんな、こういう面白さを求めて観に来ていたみたいだったな。

映画館で見なくても良かったかも。
けど、1000円で見れたので良かったわな。

マンガの新刊チェック

家にはあまり物を置かないようにしようとは思っていて、本も極力図書館で借りるようにしている。
マンガも出来るだけマン喫で読むようにしている。
なんか、図書館は良いけどマン喫はこうやって書くと寂しいな。

ま、それは関係ないとして、マン喫に行っても新刊とか出てなくて、全然楽しめない時とか、何が出ているか分からない時があったので、
マンガの新刊がチェックできるサービスとして「Amazon2ical」ってサービス使ってた。

Google Calenderに表示させていたんだけど、あんまりGoogle Calenderって見ないんだよねえ、マンガ何が出るかなって視点で。
あと、登録しているマンガの数が増えすぎて、マンガカレンダーみたいになってきてしまったのも嫌だった。

んで、他のないかなーと思って探してたら、「新刊.net」ってサイト見つけた。
RSSでも読めたり、他の人がどんなキーワードを登録しているか分かったりして、結構楽しい。

CDとかもチェックできるみたいだけど、本だけで良いや。
当面これで。

いつでるかわからない、よしもとよしともも一応登録しといたわ。

両方ともAmazon APIを上手に使っているよなー。
ちなみに、新刊.netはEthna使ってた!

#01 仮想化ソフトの選定 - WinでPHPの開発環境を揃える

僕はWindowsユーザーなので、WindowsでPHPの開発をやってきた。
EthnaとかCakePHPとか、他のフレームワークもそうなんだろうけど、最近のフレームワークはコンソールからコマンド打って開発することが増えてきた。
っつか、その方が便利。

んで、今まではテキストエディタで書いてLinux系のサーバにアップしていたんだけど、これじゃあコマンド使えない。
Windowsにサーバ環境インストールして・・・ってやれば、コマンドプロント立ち上げてコマンド叩いてやることも出来るんだろうけど、なんだかそれって気持ち悪い。
最終的にはLinuxのサーバにアップするんだし。

で、最近までXAMPPをインストールしてごにょごにょやってたんだけど、ふとググってみたらVMwareって仮想化ソフトいれてそこにLinuxいれちゃって、それ上で開発すれば良いじゃんってエントリーがちらほら。

#00 VMWare×CentOS5 Windowsでカンタン開発環境 - GRANADA Hatena @ sotarok
ウノウラボ Unoh Labs: VMwareとCentOSでウェブ開発の環境をさっさと整える手順書(前編)

ここで、二つの選択肢が。
VMWare PlayerとVMWare Server
この違いが分からんっつうことで、調べた。
hktr.jp: VMWare Tips まとめ。 アーカイブ

要は、Serverの方は複数同時にOS動かせたりしちゃうらしい。
実際に、小規模のサーバ運用なら出来るぐらいみたいなんだけど、まずはPlayerの方で良いかなと思ってまった。
ん~悩む。
会社のPCはデュアルコアじゃなかった気がするし、あんまり負荷をかけたくないし。
両方入れて考えようかな。
でも、二つを共存させることは出来ないらしい。

ということで、今日はここまで。

「織田信長の経営塾」読みました

織田信長の経営塾

特に経営には興味なかったんだけど、織田信長が今の時代に生きていたらどうだったかは気になったもんで。
どんな会社になったんだろうと。

内容は結構ライトな感じで、経営に関しても歴史に関してもとっても分かりやすく書かれている。
その分浅いかも知れんけど、エンターテイメントとして読もうと思っていたので、その軽さ&わかりやすさは良かった。
信長のお悩み相談とかいうコーナーがあって、信長が現代の経営者の悩みに応えるって形式があって面白かった。

信長というと、僕の中では革命者ってイメージ。
以前就職活動でIIS受けたことがあったんだけど(今思えば無謀)、そん時にIISはどんなイメージの会社ですか?って聞かれて、戦国時代の織田信長のようなイメージの会社ですって言ったら、一次試験受かったわな。
二次試験では、僕以外理系ばかりのなか質問内容も分からず落ちたけど。
ま、信長の様な会社って言われて、悪い気はしないよね、特にあーゆう社風の会社の場合。

あと、Amazonのレビューがたくさんあったことにびっくり。
マイナーな本じゃないのか、これ。
評価も高いし。
つか、「豊臣秀吉の経営塾」まであるし!

経営者や歴史好きが読むには浅いけど、最近中間管理職になって信長の野望も結構好きだった人には、面白いかも。

#02 CentOSのisoイメージ取得 - WinでPHPの開発環境を揃える

前回、VMware Playerと VMware Serverで悩んでいたけど、VMware Playerに決めた!
理由は、動作が軽快らしいってこと。
会社のPCはまだPentium4だからなー。

coLinuxという声もどうのこうの君から頂いたけど、記事の多さでVMwareにした。
参考になるサイトが無ければ、何も出来ないのでね。
ま、そんなものだよね、初心者ってばさ。

で、以下の公式サイトよりダウンロード。
VMware Player, 仮想マシン, 仮想化ソフト - VMware
なんかメールアドレスとか用途、名前とか聞かれたけど、適当に書いておいた。

んでインストール。
日本語化されているので、特に問題なくは出来た。
※serverは英語だった気がする、途中までやった

んで、次が入れるOSのイメージをダウンロード。
今までネットワークインストールしかやったこと無かったんだけど、とにかくめんどくさいんだよね。
そりゃDVD焼かなくて良いんだけどさ。

んで、今回はちゃんとDVDを作ろうと思ったんだけど、これまた大変。
torrentファイルってなに!
BitTorrent - Wikipedia

っつうことで、BitTorrentってソフトをインストールすりゃダウンロードできることが判明。
んーめんどくせー。
これまたダウンロード&インストール。
超簡単。
で、BitTorrent起動させて、そこに落としてきたtorrentファイルをドロップすれば、あら不思議。
ダウンロード始めた。
便利っちゃあ便利か。

今回はcentos4とcentos5を一気に落とす。
centosはまあ仕事用、ubuntuも趣味で入れたいな、家のPCに入れよっと。
centosは両方とも3GB程度あるでやんの。
Linuxも肥大化してるわね。

続く~。

#03 CentOSのインストール→失敗 - WinでPHPの開発環境を揃える

isoイメージもゲッツ。
で、本来ならDVD-Rとかに焼くんだけどそこが仮想環境、そのままでいける。
仮想でDVDドライブ用意すれば良いって話。
Daemonツール的なノリだね、懐かしい。

で、仮想化するためにはvmdkファイルとvmxファイルってのがいる模様。
vmdkってのが、まあ実態イメージ、vmxはその設定ファイルって感じ。

で、大体のところはqemuってツールを使ってvmdkファイルを作れって感じなんだけど、コマンド打ったりメモ帳で作成したりと結構大変で、なんか良いツールないかなと思って探していたらVMX Builderなるものを発見。
これだとGUI操作でvmdkファイルとvmxファイル作れる。
VMware Utilities Homepage
こりゃ楽だね。

で、VMX Builderを早速インストールして、立ち上げたらエラーになった。
一番上にあるCore Componentsもインストールしてみたら、無事起動。
凄いね、今日だけでどんだけインストールしてんだよって感じだ。

んで、ここを参考に設定していく。
もめす屋 > VMware Player2とVMX Builderで仮想PC

んで、無事CentOSのインストール画面に突入できた。
凄い、動いてる~けど、すげー重い。
CPUの稼働率が100%に行ったり行かなかったり。
良かった、Playerにしておいて・・・、Serverだともっと重いんだろうな。

んで、CentOSを最低限パッケージでインストール途中で会社のネットワークが切れた。
GoogleもYahooも見れなくなってもた。
あー、やべー。
「見れなくなった」と同僚~社長までみんなが聞きに来る・・・。
けど、これって俺のせい?
コントロールパネルでネットワーク接続を見てみると、VMwareの接続が2つも増えてるし、それを無効にしても状況変わらないし。
会社のルーター再起動したらなぜか復活・・・助かった・・・。
WAN側へのpingは通ったから、LAN側に何か問題があった模様。
ん~謎。
ルーターにまで影響を与えるとなると、ちと怖いな。

会社のPCに一旦インストールしたVMware各種をアンインストール。
そしたら、VMwareが作った接続も消えた。
こえー。

とりあえず家で試してからじゃないと、リスキー過ぎる。
NAT接続だ、ブリッジ接続だいろいろあるみたいだし、ちょっと勉強しなかんな。
っつうか、ブリッジ接続なんかしたら、ホストOS(Windowsの方)が繋がらなくなるイメージなんだけどなあ・・・。


ん~ようわからんけど、続く~。

通夜にいって思ったこと

久しぶりに通夜に行った。
同僚の親が亡くなった為。
時間も遅かったからか、人もあまりいなくガランとしていた。
それがまた寂しさを際立たせていたな。

会社でもそんなに接点の無い僕は、彼女にかける言葉が思い浮かばなかった。
声をかけられるほど親しくなかったのかなと思う。
以前、会社の上司の親が亡くなった時も、かける言葉が無かった気がする。

これが友達とかだとまた違うんだろうか。

こういう時に心から通夜に行きたいと思って行ってる人ってどんだけいるんだろ。
葬式とかは、故人よりも遺族の為のものってのは、やっぱ当たっているんだろうな。
そして、明日も何も変わらない毎日が始まる。

このたびはご愁傷様でした。
心からのお悔やみを申し上げます。

#04 CentOSのインストール→成功 - WinでPHPの開発環境を揃える

家だと出来た。
会社だとこの前みたくLAN接続が出来なくなると怖いので、人がいなくなった時にでもやってみようと思う。
いつが良いかな。

家でやった時に躓いたメモ。
VMX Builderを使ってvmxファイル作る時に、デフォルトでmemoryが128kbになっとる。
これだと途中で止まったり、グラフィカル・モードによるインストールが出来なかったりと、いろいろ不具合が出るので、512kbに増やしてやると幸せになれます。

あと、会社のこともあったので以下のサイトの「5. Windows側でのネットワーク設定」を実施。
革命の日々! CentOS on VMWare Player をインストールする
これ効き目あるのかなあ。

ネットワークの接続方法は特に変えなくて、ブリッジ接続でいけた。
yumのアップデートも出来たら、接続できている模様。
ブリッジ接続だと、新たにIP振ってあげないといけないことになるので、会社だと難しいかなあ。
この辺はいろいろ調べてみたい。

CentOS4、CentOS5、ubuntuと入れてみたけど、ubuntuがネットに繋がらない。
入れてはみたものの、使わない気もしてきた。
さて、どうしたものか。
※2008/9/5追記
[システム] > [システム管理] > [ネットワークの管理] > [DNS]
でルーターのIPアドレスを追加したら無事見ることが出来た。

あと、家のPCはAthlon64 X2 4200+なんだけど、さすがデュアルコア、快適。
こういう時強いのな、CPU使用率100%なんていかないし。

会社のに入れると、どうかな~。

#05 CentOSの設定 - WinでPHPの開発環境を揃える

以下のサイトを参考に初期設定を行う。

#05 CentOS5の設定::VMWare×CentOS5 Windowsでカンタン開発環境 - GRANADA Hatena @ sotarok
root権限以外のユーザーを作りましょうって事。
ま、ただ自分用の開発環境なら、いらないっちゃいらないけど。
確かに癖をつけておくべきだろうね。

#6.5 SSHの設定・SCPの使い方::VMWare×CentOS5 Windowsでカンタン開発環境 - GRANADA Hatena @ sotarok
VM Player上で動かしている場合、Windows側でコピーしたものを貼り付けたりすることは出来ない模様。
まあ、やりようがあるんだろうけど、めんどいな。
で、SSH経由で接続してしまえってこと。
それなら、今まで通りの使い勝手でいける。

NTPサーバー構築(ntpd) - CentOSで自宅サーバー構築
VMwareの凄いところは、ウインドウ閉じてもまた開くと閉じた状態の続きで始まるってところ。
まあ、それはそれで凄いんだけど、やっぱ気持ち悪いといえば気持ち悪いので、ウィンドウ閉じたら電源オフって感じの設定してみる。
そうすれば、VMwareの時間の設定はずれるって問題も多少良いでしょ。

VM Player
環境設定 > VMware Player > 終了時に仮想マシンをパワーOFF

これでよし。


本日躓いたことのメモ
スーバーユーザーになる時はハイフンをつけないと、PATHが通ってなくて参考サイトと同じコマンドを叩いても実行されない。
# su -

◇ログインアカウントの変更◇初心者のためのLinuxサーバー構築講座☆お便利.com☆

前もこれやったな。
これで30分ぐらいは浪費した模様。

そろそろ次はPHPとかのインストールになるのかしら??

「君に届け」読み始めました

君に届け 1 (1) (マーガレットコミックス)

人気あるみたいだね。
確かに面白い。
まだ2巻までしか読んでないけど、友情モノで結構泣けたわ。
優しい人が出てくる漫画はやっぱ良いね。

絵もそんなに少女漫画してなく、多少カジュアルな書き方をしてあったりするので男でも読みやすいかな。
通勤時に電車で読んでいたら、心なしか女性の視線を感じたわな。

羨望の眼差しか、はたまた・・・。

アーカイブ

2010

  • 01
  • 02
  • 03
  • 04
  • 05
  • 06
  • 07
  • 08
  • 09
  • 10
  • 11
  • 12

2009

2008

2007

コンタクト

longkey1[at]gmail[dot]com