玄箱etch へアップデートをかけてみた ところ、以下のような問題が発生しました。
  1. usbmgr のインストールが完了しない
  2. squid で エラーが発生して動作しない
  3. プリントアウトできなくなった
 usbmgr の方は、一度アンインストールして、 入れ直すとうまくインストールされました。
 次に squid ですが、 以下のようなログが syslog に残っていました。
Apr 21 12:43:05 server squid[580]: Squid Parent: child process 643 started
Apr 21 12:43:05 server (squid): comm_select_init: epoll_create(): (38) Function not implemented
Apr 21 12:43:05 server squid[580]: Squid Parent: child process 643 exited due to signal 6
 どうも epoll_create と言う実装されていない関数の呼び出しで失敗しているようです。 これをキーワードに調べてみると、 squid 2.6 から epoll() と言う関数を使うらしいのですが、これが Linux Kernel 2.6 からの機能で、 玄箱 のカーネルは 2.4 系ですから、 これでは動くはずもありません。
 と言うわけで、以下の手順で squid 2.5 系の パッケージをインストールし直しました。
cd /tmp
apt-get remove squid
apt-get remove squid-common
cp /etc/squid/squid.conf .
dpkg -P squid
dpkg -P squid-common
wget http://security.debian.org/debian-security/pool/updates/main/s/squid/squid-common_2.5.9-10sarge2_all.deb
wget http://security.debian.org/debian-security/pool/updates/main/s/squid/squid_2.5.9-10sarge2_powerpc.deb
dpkg -i squid-common_2.5.9-10sarge2_all.deb squid_2.5.9-10sarge2_powerpc.deb
cp squid.conf /etc/squid/
 しかし、このままでは apt でアップデートを行うたびに squid の 最新版がインストールされてしまいます。 そこで /etc/apt/preferences として以下の内容のファイルを作成しておけば、 これを回避することができます。
Package: squid
Pin: version 2.5*
Pin-Priority: 989

Package: squid-common
Pin: version 2.5*
Pin-Priority: 989
 これで squid の 問題は解決。次は CUPS を 何とかしなければ…