php3


gqmpeg-0.6.3, gqview-0.7.0

アップグレードした. bug fix が中心. こういった情報は, http://www.gnome.org とかに掲載されるので, そこへ行く url をデスクトップに保存してある. 誰かに送らないといけないファイルなども, デスクトップに置いとき, 用が済むと消すのである. もっとも, こっちはしばしば送るのを忘れるのだが.

PostgreSQL-6.5 と php3 と apache

php というのは CGI などの独立のプログラムと違って html 埋め込みのスクリプト言語で, つまり, その存在のあり方は JavaScript とかと同じだ. JavaScript と違うのは, これが サーバ側で parse され, 実行されるというところである. 糞ったれの JavaScript は, クライアント側で実行されるが, これがかなり糞ったれで, Windows 版の navigator と Linux 版の navigator で 動作が違ったりするのであり, さらには IE だとどうなるか, など, 考えた くもないから, 俺の場合はとりあえず一本書いただけで嫌気がさした. しかし, php はサーバ側で実行されるので, そういう問題とは無縁である. クライアントに負荷を分散するのも良いが, 人間の負荷も考えておくれ. php を使えば, PostgreSQL とのインターフェースを備え, www 経由でデータベー スとやりとりできる(らしい).

PostgreSQL 6.5 もインストールした. regression test が冪乗のところでひっ かかってちゃんと実行できなかった. 何か間違ったかのう. まあ, 当分冪乗は使わないだろうから, べつにいいや.

DSO サポートを組み込んで apache を使っている人は, 今の httpd.conf を捨て たくなければ, php のインストールは若干注意が必要だ. 付属の文書 INSTALL のとおりにやるとはまるのである. モジュールは組み込まれているのに, php が全然動かないのである. 同梱の文書にはもうひとつ, INSTALL.DSO というのがあり, こっちに載っている方法でやれば, ちゃんと php は動作し, しかも apache をコンパイルしなおしたり停止したりする必要すらない. make install したあとは apachectrl restart でいいのだ. apache は普通, DSO サポートを付けて使うだろうから, 実際には apache でのインストールはこのやり方が主流だと思われる.

据え置きの新しいドライブ

据え置きに積んでた くぁんたむ の糞ドライブが死んじまったので, しょうがないから もう一個ドライブ買って来た. ドライブが壊れてムカツクのはもう沢山なので, 今度は有名ブランドものにした. ハードディスクといえばすなわち IBM である.

キャッシュが2MB ついてる高級品である. それにしても, ディスクは安くなる一方であり, IBM の 9GB で 2万だ. なんじゃそりゃ. この容量はもう, 無限です. まじで. 無限なので, mkfs だけでもかなり時間がかかりました. つうか, インストールで一番大変だったのはファイルシステムを作る所です. 風呂から出て来ても終ってないんだもんね.

最初, fdisk がちゃんと 9G を認識しないので, 若干困った. シリンダ, ヘッド, セクタを教えてやらないと, 認識しないのである. あと, 拡張パーティションの作り方を忘れてた. 今回は, / に 100M /var に 100M /usr に 2000M /home に 6000M swap を 100M とした. インストールは極めて適当に, 突っ込んだ. 足りないものは後から個別にインス トールすれば良いし, 要らないものも気が付くまでほっとけば良い. なんせ, /usr だけで 2G だからな. インストールが終ったら, 次は GNOME 関連だ. まず, gtk+-1.0.x 一族を抹殺する. これは若干めんどくさい. gtk を使ってるプログラムはけっこうあるからな. 今回はノートと同じパッケージを入れたので, バイナリ互換性がある. 追加のインストールは, ノートの /usr/local を nfs で cp -prd で持って来て出来上がりだ. これで自分でパッチした GNOME その他がそのまま全開で動いてます. かなり楽勝です. カーネルを速攻でコンパイルしなおして, sound blaster 16 もちゃんと動作しており, 音も出るようになった. CD プレーヤも動くのである.

IBM のドライブは, ヘッドが動く音がかなりでかいです. 気合いが入ってるんでしょうか. なんにせよ, 今度は壊れないで欲しいもんですな. ま, くぁんたむ も完全に死んだわけではないので, IDE の電線をもう一個買って来て, 生きてるパーティションをサルベージせねば.

GNOME が動くと, gnorpm なんかを使えば要らんものをどけるのも楽だ. もう GNOME と zsh 無しでは生きてゆけぬ体になっている. 人間の労力と気合いは有限だから, 人に厳しいテクノロジが望ましいのは確かだが, 場所と場合を選んで欲しいと いうのも切実なものがあるね. 船があるのに泳いでゆくという類のアホさとは俺は必ずしも無縁ではないが, それも場合によるよ.

xosview と ip accounting

xosview には, デフォルトでは off になっているが, じつはネットワークの負荷を見るメータも付いている. しかし, これは若干設定してやらないと動かない. というわけで, IP MASQUERADE がてらにこれも設定して動くようにしてやった. こういう設定を書くのは slackware なら rc.d が単純だから楽勝なんだけどな. Red Hat はけっこう大変だった. 特に, linuxconf で書けない項目をいじくる のは, rc.local にベタ書きしたくないなら, かなりの気合いが必要だ.

俺はカーネル 2.0.37 でやったので, 2.2.x とはだいぶ違っているから, 2.2.x の人は, 適宜読みかえてほしい. まず, カーネルが ip_accounting を有効にしてコンパイルされてないとダメだ. つまり, /usr/src/linux/.config が

CONFIG_IP_ACCT=y
こうなってないとだめ. なってない人は make config とかして, networking options にある ip accounting を on にしてカーネルを make だ.

IP accounting は, カーネルを設定しただけではダメで, ipfwadm でパケットの記録を取るという設定をかまさないといけない. 今, デバイス eth0 の IP アドレスが 192.168.0.7 だったとすると, 出入りするパケットを全部見張るには,

ipfwadm -A -a -P all -S 192.168.0.7 -D 0/0
ipfwadm -A -a -P all -S 0/0 -D 192.168.0.7
こんなかんじ. ipfwadm のコマンドに関しては, 詳しくは man 8 ipfwadm をどうぞ. いちいち手でやるのは面倒なので, これを ifconfig eth0 up とかやってるシステム初期化スクリプトの近所に そのまま書き込んどけばいい. きっと, システム初期化スクリプトは, IP アドレスとかを変数にして 持ってるはずなので, インターフェースが何枚もある場合は アドレスは じかに書かずにスクリプトの中の変数を使った方が良いだろう. でも, dhcp とかを使っている場合は, どうすればいいのかのう.

ネットワークインターフェースを停止する場合は,

ipfwadm -A -d -P all -S 192.168.0.7 -D 0/0
ipfwadm -A -d -P all -S 0/0 -D 192.168.0.7
とやって, ルールを削除してやらないと, runlevel を切替えるたびに冗長なルールが どんどん追加されてゆくことになるので, システム初期化スクリプトをいじくる人は, このへんにも注意しよう.

ノートの人は, /etc/pcmcia/network をいじれば良いでしょう.

このプログラムは, 今や懐かしい, X のリソース方式の設定である. ネットワークの負荷のメータを出すかどうかと, その帯域幅を リソースで指定できるので, 書いといた方が良い. /usr/X11R6/lib/X11/app-defaults/XOsview がリソースファイルで, その中に, そのままズバリのリソースがコメント付きで書いてあるので, そこを編集しよう. 多分編集した方が良い. というのは, 「なんか ping ごときで半分いっとるがな. えらいショボいのう, このネットワーク」と思って調べたら, デフォルトが 50K/s のモデムの帯域幅という設定になってたのである. コメントになっているサンプルでは, イーサネットは 10Mbit/s 出ることになっているが, そんなカードは存在しないので, 5Mbit/s くらいにしとくのが 現実的ではないかと思う. 表示がどれくらい正しいのか知らんが, イーサネットのパワーを使い切るのは 普通に使っていると並大抵ではないようだ. ちなみに, うちの環境は非力で, ssh ではネットワークよりも先に暗号通信で CPU を使い切ってしまうのだった.