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

ヨタの日々

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|04|

2007-03-03 :-)

_ [httpd][Apache][reboot][NetBSD][再起動][モニター][プロセス][システム][カーネル][ドキュメント]NetBSD の PRI -22 の httpd

top したらこのような状態でした。PRI が -22 って常態なんだろか。普段モニターしてないから分からないです。-22 という時点であやしいんだけど。

load averages:  0.31,  0.16,  0.10                                     11:43:50
65 processes:  62 sleeping, 2 zombie, 1 on processor
CPU states:     % user,     % nice,     % system,     % interrupt,     % idle
Memory: 421M Act, 172M Inact, 1036K Wired, 23M Exec, 414M File, 149M Free
Swap: 128M Total, 51M Used, 78M Free

  PID USERNAME PRI NICE   SIZE   RES STATE      TIME   WCPU    CPU COMMAND
   17 root      18    0     0K  182M syncer   211:50  0.00%  0.00% [ioflush]
20895 www      -22    0    17M   16M mclpl     11:36  0.00%  0.00% httpd
23645 www      -22    0    16M   15M mclpl     10:37  0.00%  0.00% httpd
25816 www      -22    0    16M   16M mclpl     10:36  0.00%  0.00% httpd
 8522 www      -22    0    16M   15M mclpl     10:29  0.00%  0.00% httpd
17351 www      -22    0    16M   16M mclpl     10:25  0.00%  0.00% httpd
24014 www      -22    0    16M   15M mclpl     10:13  0.00%  0.00% httpd
27446 www      -22    0    15M   15M mclpl      9:32  0.00%  0.00% httpd
 8911 www      -22    0    15M   13M mclpl      9:00  0.00%  0.00% httpd
15710 www      -22    0    15M   13M mclpl      8:19  0.00%  0.00% httpd
 1847 www      -22    0    15M   14M mclpl      8:14  0.00%  0.00% httpd
   18 root     -18    0     0K  182M aiodoned   6:36  0.00%  0.00% [aiodoned]
  885 root       2    0  1124K 2060K select     2:13  0.00%  0.00% sendmail
15693 root       2    0   300K  928K select     1:40  0.00%  0.00% sshd
  407 root       2    0   188K  484K kqread     0:37  0.00%  0.00% syslogd
  241 rin        2    0  2096K 2036K select     0:32  0.00%  0.00% screen-4.0.3
  170 root       2    0   192K  420K select     0:26  0.00%  0.00% master
  317 tinydns    2    0   160K  220K netio      0:25  0.00%  0.00% tinydns
  378 dnslog     2    0    60K  316K piperd     0:10  0.00%  0.00% logger
   16 root     -18    0     0K  182M pgdaemon   0:10  0.00%  0.00% [pagedaemon]

とりあえず restart してみたらなんか言われたけどログしてなかったです。はう。ということでドキュメント読みます。

pid ってどれだっけ。

% grep pid /usr/pkg/etc/httpd/httpd.conf
PidFile /var/run/httpd.pid

これですね。

% ls /var/run/httpd.pid
ls: /var/run/httpd.pid: No such file or directory

無い! さっき restart したときに削除したのね。

では次に httpd してみます。

% sudo httpd -k stop
httpd (no pid file) not running

pid を見てるようです。

次の手段。kill します。

% sudo pkill -TERM httpd

でも死んでくれません。

IRC で訊いてみました。

12:04 [rin] pkill -TERM httpd したが
12:05 [rin] top には httpd ヶ表示される
12:05 [rin] 放置しておけばいいんだろか
12:05 [USADA] -KILL httpd で
12:06 [USADA] それで死なない奴は
12:06 [USADA] シグナルハンドラを無視するところにいる
12:07 [USADA] リブートだな
12:07 [USADA] もしくはpanicさせるw
12:07 [rin] できるのかっ
12:07 [rin] って、カーネルを panic ?
12:07 [USADA] うむ
12:07 [rin] ひー
12:08 [rin] ちなみにどうやるの
12:08 [USADA] ((((((((o_△_)o サァーシラン
12:09 [rin] kill -TERM -1
12:09 [rin] ってなにが起きるんだろう...
12:09 [USADA] システムが死ぬw
12:09 [USADA] りなざうでやったことがあるw
12:12 [NOB_away] プロセスIDに-1を指定すると、「全プロセス」という扱いになるw

ということでやってみようと思ったけど素直に reboot しました。

_ [スクリプト][Ruby][httpd][script][NetBSD][Apache]/usr/bin/env は有害?

環境は NetBSD

先ほど計算機を reboot しました。httpd/erros_log に以下のログがありました。

[Sat Mar 03 13:02:47 2007] [error] [client 72.30.216.98] env:
[Sat Mar 03 13:02:47 2007] [error] [client 72.30.216.98] ruby
[Sat Mar 03 13:02:47 2007] [error] [client 72.30.216.98] :
[Sat Mar 03 13:02:47 2007] [error] [client 72.30.216.98] No such file or directory
[Sat Mar 03 13:02:47 2007] [error] [client 72.30.216.98] Premature end of script headers: index.rb

tdiary の index.rb のことです。index.rb の冒頭はこうです。

#!/usr/bin/env ruby
#
# index.rb $Revision: 1.33 $
#

ちなみに ruby はここ。

% which ruby
/usr/pkg/bin/ruby

/etc/rc.d/apache から起動された httpd には /usr/pkg/bin/ruby への PATH が無いということです。なので結局 httpd は ruby を見つけられていません。ここはひとまずログインユーザー( PATH に /usr/pkg/bin/ruby がある )で sudo /etc/rc.d/apache start しました。

/etc/rc.d/apache に /usr/pkg/bin/ を追加するようにすればいいのだけどそれって一般的なんでしょうか。通常は env をどう扱ってるんでしょうか。tdiary の index.rb を ruby を実行するように書き換える? 窓から投げ捨てる?

ref. /usr/bin/env でラップするという悪習はいったい誰が広めたんだろうか

_ [技術者][マインドマップ][シリコンバレー][イノベーション][プロフェッショナル]NHK プロフェッショナル 仕事の流儀

技術者 渡辺誠一郎

  • シリコンバレーの流儀
  • 破壊的イノベーション
  • 技術者は技術やってないと退屈で死ぬ
  • 部長になった → 退屈になった → じゃあシリコンバレー行くべ
  • 持ち歩いてる計算機は Mac かしら
  • マインドマップ使ってた

_ [レピドール][おやつ][ロールケーキ]おやつ

レピドールのロールケーキ。

img_3163.jpg

img_3164.jpg

img_3166.jpg

_ [沖縄料理][沖縄そば][とらのあな][ティンダーリアの種]飯

hiroym と沖縄料理を食う会。

沖縄居食酒屋・こだわり弁当 びんがた( 紅型 )

via Youichi’s Log(分家) 沖縄そば再び。ポジ会 6th[ 2006-06-24 ]のときに利用したので馴染みがあったからというのもあります。

食ったものたち。泡盛 2 杯飲んだのだけど飲んでる最中に頭痛になりました。酒は弱いっす。はう。

img_3167.jpg

img_3168.jpg

img_3173.jpg

img_3175.jpg

img_3176.jpg

img_3178.jpg

img_3179.jpg

img_3180.jpg

img_3182.jpg

とらのあなで買ったというティンダーリアの種。

img_3170.jpg

img_3169.jpg

私は amazon で買ったのだけど[ 2007-02-22 ] 買った店舗により付録がいくつかあるらしいです。amazon 特典はキャラクター相関図でした。

img_3183.jpg

img_3184.jpg

本日のツッコミ(全6件) [ツッコミを入れる]
_ soda (2007-03-05 04:10)

mclpl ですか。カーネルコンフィグで NMBCLUSTERS を増やしといた方が<br>いいと思います。デフォルトはかなり控え目なので。

_ みわ (2007-03-06 01:41)

sodaさん<br>ありがとうございます。top のうちプロセスばかり目がいって STATE などは注目してませんでした。<br>mclpl はこの辺りですね。<br><br>*What does mclpool limit reached: increase NMBCLUSTERS mean?<br>http://www.jp.netbsd.org/Documentation/kernel/#mclpool-limit<br><br>しかし /var/log/messages や messages.0.gz などを見てみたけどログされてない

_ ただただし (2007-03-06 17:44)

/usr/bin/envに依存しないようにtDiaryを設定するなら、以下のようなindex.cgiを作成して、これをhttpdから実行するようにすると良いです。<br>----<br>#!/usr/pkg/bin/ruby<br>require 'PATH_OF_TDIARY/index'<br>----<br>update.cgiも同様に。<br>/usr/bin/envを使っているのは、「多くの環境でインストーラが不要になる」という一点のために過ぎませんから:-)

_ soda (2007-03-06 18:07)

mbuf が枯渇した場合、syslog にもメッセージが送られなくて、/var/log/messages に記録されないこともあります。画面には出ますが…

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

ただただしさん<br>/usr/bin/env を使わない設定をしてみようとしたけど、けっこうな手間がかかるようなので挫折しました...。<br>システムをいじる手段があるようなのでそちらも試してみます。/usr/bin/env を使えるようにできる環境じゃあいところなら tdiary を変える必要はあるけど、そうでないなら tdiary を変えるのは間違いだ。tdiary 以外にも /usr/bin/env を使ってるプログラムがあるかもしれないのだし。<br><br>ref. デーモンさんの起こしかた<br>http://ya.maya.st/d/200703a.html#s20070304_1

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

sodaさん<br>mbuf なんてカーネルをプログラムする人間以外には無縁なものだと思っていたけど、けっこう身近なのですね。チューニングというかパフォーマンスについて BSD MAGAZINE vol.14 に特集があるようなので見てみます。<br><br>* BSD magazine 2002 No.14<br>http://www.ascii.co.jp/pb/BSDmag/200214/contents.html