トップ «前の日記(2007-03-06) 最新 次の日記(2007-03-08)» 編集

ヨタの日々

2001|08|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|12|
2024|01|02|03|

2007-03-07 :-|

_ [通勤][Heidy][iPod shuffle]通勤る

今日も寝不足です!なんかもう「 さっき寝たはずなのにもう朝だ 」というくらいフラフラして通勤途中にデカビタ C を買ったくらい眠いです。あまりにも眠いので今日は iPod Shuffle にスマイルオ・ブ・ユーを入れて Heidy の歌に悶えながら通勤しました。とても良い声です。これは恋ですよへっへ。

B000JLSWE6}

_ 仕事

0750 寒川。

プログラムのバグなのかと思ってたらじつはほんとに基板が故障しているかもしれないというオチ。

_ [NetBSD]NetBSD 計算機につんだ物理メモリを確認する

手段は以下 3 つ

計算機を注文したときのスペックを見る[ 2006-10-15 ]

メモリ 1GB DDR2 SDRAM (PC4200 / 512MB×2)

dmesg を見る。

% dmesg | grep memory
total memory = 990 MB
avail memory = 961 MB
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pci1: i/o space, memory space enabled, rd/line, wr/inv ok
pci2: i/o space, memory space enabled, rd/line, wr/inv ok
pci3: i/o space, memory space enabled

sysctl を見る。

% sysctl -A | grep hw.physmem
hw.physmem = 1038610432
hw.physmem64 = 1038610432

dmesg と sysctl で表示される値が異なるけどいまはスルーします。

_ [テスト]テスト

にょろーん

_ [tDiary][ruby][/usr/bin/env]tdiary の #!/usr/bin/env

tdiary の #!/usr/bin/env ネタ[ 2007-03-03 ]へただただしさんからツッコミをいただきました[ 2007-03-03 ]

/usr/bin/envに依存しないようにtDiaryを設定するなら、以下のようなindex.cgiを作成して、これをhttpdから実行するようにすると良いです。

ということで tdiary/index.rb ではなく tdiary/index.cgi を実行させてみます。まず index.cgi と index.rb の関係を確認します。手元の httpd.conf は以下のようになっています。

DirectoryIndex index.html index.html.var index.cgi index.rb index.pl index.php

DirectoryIndex のマニュアルを読みます。

複数の URL が設定された場合には、最初に見つかったものを返します。

上記の設定ではこの順番で探します。

  1. index.html
  2. index.html.var
  3. index.cgi
  4. index.rb
  5. index.pl
  6. index.php

index.cgi が index.rb より先に見つかります。すなわち tdiary/index.cgi が実行されます。tdiary/index.cgi は tdiary/index.rb を呼び出します。これで index.cgi と index.rb の関係が分かりました。

次にこんな index.cgi を作ります。

% cat ~/public_html/diary/index.cgi
#!/usr/pkg/bin/ruby
require '/home/rin/public_html/diary/index'

+x します。

% chmod +x index.cgi

さっそく試してみます。きっちり動作確認するためには計算機を再起動させればいいのだけど面倒なのでログインユーザーのまま試します。PATH はこうです。

% echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/pkg/bin:/usr/pkg/sbin:/bin:/sbin:/usr/sbin:/usr/bin:/home/rin/usr/local/bin

上書きします。たぶん最低限はこれくらいでしょう。ようするに /usr/pkg/bin は含めないようにします。

% export PATH=/bin:/sbin:/usr/sbin:/usr/bin
% echo $PATH
/bin:/sbin:/usr/sbin:/usr/bin

準備できました。

apache を再起動します。

% sudo /etc/rc.d/apache restart
zsh: command not found: sudo

おっと。sudo は /usr/pkg/bin にあるのでした。絶対 PATH を指定して実行します。

% /usr/pkg/bin/sudo /etc/rc.d/apache restart
Password:
Stopping apache.
Starting apache.

起動しました。

さっそく ~rin/diary/ を表示してみます。

ありゃ。intarnal server error になりました。ログを見てみます。

% tail /var/log/httpd/error_log
[Wed Mar 07 20:06:34 2007] [error] [client 65.55.209.167] env:
[Wed Mar 07 20:06:34 2007] [error] [client 65.55.209.167] ruby
[Wed Mar 07 20:06:34 2007] [error] [client 65.55.209.167] :
[Wed Mar 07 20:06:34 2007] [error] [client 65.55.209.167] No such file or directory
[Wed Mar 07 20:06:34 2007] [error] [client 65.55.209.167] Premature end of script headers: index.rb

同じ現象のようですね。tdiary/index.cgi は実行されていないんでしょうか。そういえば tdiary に同梱されていた .htaccess の存在を思い出しました。 .htaccess の DirectoryIndex はこう。

DirectoryIndex index.rb

DirectoryIndex を上書きしてるんですね。こうします。

DirectoryIndex index.cgi

再度 ~rin/diary/ を表示します。

表示されました。OK ですね。

あとは同様に update.rb をごにょごにょしたりします。が、デフォルトでは update.rb を実行するようになっているので update.cgi を実行するようにするには tdiary.conf を変更します。すでに CGI で設定してあると tdiary.conf 変更しても反映されません。なので CGI で設定した内容を tdiary.conf に反映させながらごにょごにょしていきます。

あー

あー

あー

いまさら気づいたけど他にも grep.rb や tagapi.rb などの非公式スクリプトも #!/usr/bin/env を使っていました。こりゃけっこう手間がかかりますね。もうやめます....。

本日のツッコミ(全5件) [ツッコミを入れる]
_ youichi (2007-03-07 13:16)

物理メモリ >> 僕はtopとかしてました...

_ NA0 (2007-03-08 01:16)

>めもり<br>1038610432/(1024*1024)=990.49609375≒990<br>異なってないじゃん

_ みわ (2007-03-08 07:36)

youchiさん<br>top のメモリ項目は Active, Inact などいくつか表示があるのだけど合計の物理メモリの数値はどれが表現してるのか分からなかったのでやめました...。<br><br>なおさん<br>ががっ<br>数値の計算式をあとで調べようとしたんですっ<br>まあバイトの単位を変換するだけなんだが

_ さいき (2007-03-08 11:53)

おいらは、ビンビタの方がいいな〜(何

_ みわ (2007-03-08 12:31)

さいきくん<br>これか!<br>http://gongze.hp.infoseek.co.jp/binnbita.htm<br>こんなのがあるのか