2003-04-07 (Mon)

_ [comp] tftp サーバようやく完成

kernel 再構築しまくったりやら、tftp が NAT 越えられないやらいろいろあったが、やっと tftp サーバが完成し、diskless 環境が完成した。 grub の command line に間違いがあったので訂正。

kernel /tftp/vmlinuz nfsroot=XXX.XXX.XXX.XXX:/tftp ip=dhcp apm=power-off acpi=off devfs=mount

ro をつけていると mount に失敗した。 / は共有するので ro にしておくが、これのためにいろいろ不都合が出たのでこまごま修正。

  • /dev も書けないので、思い切って devfs に。
  • /var は ramdisk に追い出す。本当なら log 等を rw 領域に退避させたりしたいところだが、そこまで厳密にやる気はないので毎回まっさらに。
  • /var/yp/nicknames がなくて NIS が引けないので毎回コピー。
  • /etc に書き込みを行うスクリプト等をかたっぱしからコメントアウト、修正。
  • iptables 関係の kernel module を読み込むと何故か panic するので削除。

などなど。

_ [comp] xmms-OpenSPC

何故か再生しようとすると、floating point exception が出るので gdb で追ってみる。 どうも resampling まわりの初期化に失敗しているようだ。その関数の前後の変数の変動を見てみるが変化なし。というより、その関数自体が呼ばれていないようだ。そこで、その関数の先頭に xxx_ という prefix をつけて再コンパイル。結果、その関数はちゃんと呼び出され、再生できるようになった。どこかの同名の関数を呼んでしまっていたということだろう。

2003-04-05 (Sat)

_ [comp] tftp over iptables

iptables による NAT を介して、private 空間からその外へ対して tftp ができない。調べてみると、ip_conntrack_HOGEHOGE とか ip_nat_HOGEHOGE というモジュールがある。ftp や irc などを NAT 越しにうまいこと動作するように都合つけてくれるモジュールだが、これの tftp 版は標準では含まれていないらしい。探してみると、netfilter.org の cvs 中に patch を発見。ってか patch といっても不完全なもので、ほとんどが手パッチかつ既存のコードを真似してコピペするなどの作業を強いられた。ともかくこれによって tftp over iptables が成功。

2003-03-30 (Sun)

_ [comp] 人がゴミのようだ

悪役中の悪役、ムスカ大佐の登場するジブリの名作「天空の城ラピュタ」を mplayer で見ようとしているのだが、-vo x11 -ao alsa9 だと音が遅れてしまう。-vo sdl -ao alsa9 だときちんと同期。うーむ。