メモリ 2GB にしてからとても調子がいい。 expose もダッシュボードもすぐに反応するし、 アプリケーション切り替えも速い。 やっぱり 1GB ではメモリが足りなかったみたいだ。
(14:36)
http://www.php.co.jp/fun/ranking/books.php?genre=pc2007-04-03
1 位が On Lisp で 2 位がるびま本かよっ。 世も末だなと言うべきなのか それとも日本はじまったなと言うべきなのか (単に書泉グランデの読者層が偏りすぎという説が最有力)。
(21:24)
うはー なんかサーバの ReiserFS デバドラが panic 吐いて死にやがりましたよ! これはヤバい
再起動は問題なく成功。 まずは速攻で Subversion レポジトリの最新バックアップをミラーだ。 よし OK。
次は……えーと、/etc と /var/www をバックアップするかな。
(23:45)
昨夜サーバが panic してからほどなくして復旧したのだが、 一向にインターネットにつながらない。 いったい何かと思ったら今度はルータが死んでた。 おれ呪われてる? おかげで昨日の 23 時あたりからいままで loveruby.net全域が不通になってた。
そんなわけでルータを買ってきた。 OMRON の MR504DV というルータ。 欲しかった機能はこんなとこ。
おれはできるだけ単純なルータが好きなので、 この MR504DV はなかなかよかった。
しかし、単純なのはよいのだが、いまいち設定がわかりにくい。 特に設定用ウェブアプリケーションのインターフェイスは最悪。 たかだかポート 1 つ開けるだけで、
とかいうバカな手順を踏まなければならない。 しかもレコードの上書きや修正ができないというありえなさ (telnet 経由ならできるんだけど)。
HTTP の設定ツールは使ってるだけでイライラしてくるので telnet に逃げることにした。 以下は ssh, HTTP, SMTP, DNS のポートを 192.168.1.4に向ける設定。
ip nat 1 192.168.1.4/SSH ipcp remote 0 ip nat 2 192.168.1.4/SMTP ipcp remote 0 ip nat 3 192.168.1.4/HTTP ipcp remote 0 ip nat 4 192.168.1.4/DNS ipcp remote 0 ip nat 128 */* ipcp remote 0 ip filter 1 pass in * 192.168.1.4/32 SSH wanany ip filter 2 pass in * 192.168.1.4/32 SMTP wanany ip filter 3 pass in * 192.168.1.4/32 DNS wanany ip filter 4 pass in * 192.168.1.4/32 HTTP wanany
ip nat の最後の設定が重要らしい。 これをやらないと、外から中には入れても中から外にまったく出られなくなる。 また、この場合の remote 0 は PPPoE リンクのID である。
(00:51)
昨日のファイルシステム panic のあと、 何事もなく起動したから安心してたんだけど、 やっぱりちゃんと問題が起きていた。 ruby-talk のメールボックス (の実体のファイル) がなんか致命的に壊れてる。 root で ls しても Permission Denied で stat(2) すらできないというわけわかんない状態に陥った。 困ったなあー。
……とりあえず無視しよっと。
(01:11)
http://www.debian.org/releases/stable/
あ、etch 出たんだ。 今回はずいぶん早かったなあ。
(HYSPRODiaryより)
(01:38)
大変申し訳ないことに、 るびま本の間違いが続々と報告されています。 一番ひどいのがオビにたださんの名前が載ってないこと、 その次は 80 ページで同じ内容が二回のってること。 ちょっとここんとこ本業でテンパってるので まだ正誤表に書いてないんですが、土日にでも書きます。
ちなみに 80 ページの間違いは咳さんではなくわたしの編集ミスです。 なんでこんな派手な間違いに気付かなかったんだ俺は……。
(02:04)
るびま本の正誤表に項目を追加しました。
http://i.loveruby.net/ja/rubimabook/errata.html
報告がまとめて来たからあせったけど、 よくよく見てみたら特に言うほど多くはなかった。 まあ、例年通りじゃないかな。
しかし、正誤表の管理をもうちょっと改善したいなあ。 まいどまいど一から HTML を書くのが面倒でしょうがない。 前に書いた簡易掲示板アプリを改造して ReVIEW に組み込んでしまいたいな。
(01:47)
■ ゆーぼー [最近、Rubyの使業務用のアプリを作成しています。一応、Rubyについてはあれこれ勉強したつもりだったのですが、実際にコードを書くと意外にハマリます。そんな時、Rubyist Magzineにある「POINT」を脳内検索すると、結構答えがあります。最近、急にデバッグスピードが上がっているのもその成果かと…]
とつぜん外からウェブサーバが見えなくなった。 DNS は通る。SMTP も通る。しかし HTTP が見えない。 LAN からは問題なくアクセスできるし、ルータの設定もおかしくない。 どうも変だーと思ったら、 なぜか Apache が IPv6 アドレスしか listen していない。 それを直したらなんとなく直ったような気がする。
(22:36)
そういえばルータの再起動もしたので、 もしかするとそっちが原因かもしれない。 こういうのは分割してやらないとだめだな。
ま、ルータのせいだったらしばらくしたらまた通らなくなるだろ。
(22:47)
4 月に入ってから生活パターンが変わったので、 この日記の更新頻度が急激に減っている。 ここんとこ 3 週間は ずっと毎朝 6 時に起きて夜 2 時に寝る生活ですよ。 移動時間が片道 100 分てのがどうもアレだ。
なにぶん家にいないので、 原稿とか Ruby 関係のことがほとんど何もできていない。 8 月以降は移動時間が一気に片道 30 分になるのだが、 忙しさ自体が急激に上がるらしいのでさらに何もできなくなるかもしれない。
そんなわけで週末は貴重なのだが、今日はへばって 17 時まで寝てたし。 リファレンスとか全然いじれてないんだよな〜。どうしたもんかなあ〜。
(22:18)
サーバを Debian の etch にアップグレードしようと思う。 いつもはソフトウェアの類はどうしょもなくなってから アップグレードすることが多いんだけど、 今回は早めにやってしまうことにする。 後回しにしとくと、 また月曜の深夜に作業しないといけなくなったりしそうだからな。
しかしいきなりサーバでやるのは恐いので、 まずデスクトップマシンで試すことにする。 それにしても最近全然使ってねえなこのマシン。
んでアップグレードだけど、 /etc/apt/sources.list を etch にして、 sudo aptitude dist-upgrade するだけ (のはず)。 しかしそれだけだとどうも不安だったので もう一回 sudo aptitude upgrade すると、 "untrusted packages" とかなんとか言われつつ 50 個くらい大量にアップデートされた。
zsh がファイルを補完できないときに変なエラーが出るが、 シェルを起動しなおしたら直った。
とりあえずマシンを再起動してみよう。
特に問題なさそうに見えるな。 とか言って X を起動したらひどいことになったりして。
……X を起こしても何も起こらないね。 拍子抜けなくらい何も問題ない。 うーん、たいしたもんだ。
あれ? もしかしてアンチエイリアスがかかるようになってる? しかも日本語の文字も太字になるようになったな。 でもフォント自体の品質が低いのはどうにもならない。 まあ最近このマシン使ってないからどうでもいいや。
(22:21)
さっさとサーバもアップデートしちゃいますよー。
aptitude dist-upgrade はうまくいったようだ。
ん? IMAP が認証できてない。そういえば courier-authlib がどーとか出てたような。まずいなあ。
と思ったが、単に courier-imap がアップデートされてないだけだった。どうも一回 dist-upgrade しただけだとうまくアップデートされてないようだ。
kept back が出なくなるまで何度か aptitude dist-upgrade を実行して、 なんとか正常な状態になったようだ。 しかしカーネルまでアップデートすることになるとは思わんかった。 やっぱり安易にディストリビューションをアップグレードしちゃいかんねー。
ntp-simple がなくなってる。 ntp にすればいいのかな。
うわー、apache にコネクションが来てない。 いや、これはもしかしてルータのせいか。 やっぱり、ルータを再起動すると直るな。 このまえのもルータが悪かったのか。 もしかして、サーバを再起動するとだめになるの?
あああ、exim も動きがおかしい。 あらゆるメールをリレーだと思って蹴ってるな。 そうか、exim.conf を無理矢理上書きして一つのファイルにしてたのに、 元に戻されてしまってるから設定が空になってるんだ。 あーもう、このクソな設定ファイルの仕様につきあうのはウンザリしてきた。 さっさと exim 捨てよっと。
あれ、mod_dav_svn が動いてないな。 mods-enable から消えてる……? じゃねーよ、mod_dav_svn.so 自体が消えてる。 libapache2-svn をインストールしなおして解決。
うげ、今度は AuthDigestFile でエラーが出るよ。 AuthUserFile に変わったらしい。
(01:41)
デスクトップのほうももう一回 aptitude dist-upgrade やっとく。 やっぱりザクザク更新されるなあ。 そういえば firefox から iceweasel になったんだった。
これでたぶん完了かな。
(02:37)
~ % ruby -rripper/sexp -e 'p Ripper.sexp("def m()nil end")' [:program, [[:def, [:@ident, "m", [1, 4]], [:paren, [:params, nil,nil, nil, nil, nil]], [:bodystmt, [[:var_ref, [:@kw, "nil", [1,7]]]], nil, nil, nil]]]]
てのは、いちおうある。 カッコじゃないけど。
(02:46)
久しぶりに BitClust をいじった。 やっぱりプログラミングはいいねえ。
ついでに、タイトルが「method $;」とかなってたのを「variable $;」に変えた。
上書き前と後、どちらかのエントリしか表示されない knownbug を修正。 めんどくさくて放置していたんだが、やってみたら意外と簡単だった。
自クラスのメソッドが出たりしてたバグを修正。 これもメソッド上書きがらみ。ほんとに上書きと再定義はめんどくせー。
% bitclust -d ./var/1.9.0 query 'db.fetch_class("Enumerable").ancestors' [#<module Enumerable>]
と、いう、怪しげな機能を付けてみた。
(15:01)
Dellがあまりに安いのでDellでパソコンを買ってしまった。 DimensionのE521。スペックはこんな感じ。
えー、VistaですよVista。 まさかこの俺がこんなに早くVistaを買うなど誰が予測したであろうか。 おれも知らなかったよ。
(23:06)
■ ゆーぼー [るびま本、即、「買い」ですね…]
■ 青木 [ありがとうございます。るびま本、けっこう売れてるようです。]
■ きむら(K) [2冊ともグランデで買いますた。偏りに荷担してますw?]