玄箱は、バージョン 2.4.17 のカーネルが FLASH ROM に焼きこまれており、 常にそのカーネルから起動するようになっている。 カーネルのバージョンアップ をせずに、 この標準カーネルのまま使用する場合、以下のような制限がある。
これらの制限を回避するための方法を載せておく *1。
adjtimex のパッケージをインストール。
# aptitude install adjtimex
インストール時の質問には、以下のように答える。
decrementer frequency の適正値を、以下のような手順で求める *2。
# dmesg | grep "decrementer frequency"
# ntpdate -b ntp1.jst.mfeed.ad.jp; sleep 3600; ntpdate -b ntp1.jst.mfeed.ad.jp
適正値 = (decrementer frequency) × 3600 ÷ (3600 + offset)
/etc/init.d/adjtimex を以下のように書き換える。 base_freq の部分は、上で調べた decrementer frequency の適正値に置き換える。
#!/bin/sh
#
# Run ADJTIMEX at startup.
test -x /sbin/adjtimex || exit 0
base_freq=32.522240
base_tick=10000
real_freq=`dmesg | grep "decrementer frequency" | awk '{print $4}'`
tick_freq=`awk "BEGIN { \
real_tick = $base_tick * $real_freq / $base_freq; \
tick = int(real_tick); \
freq = int((real_tick - tick) * 6553600 + 0.5); \
print tick, freq; \
}"`
TICK=${tick_freq% *}
FREQ=${tick_freq#* }
case "$1" in
start|restart|force-reload)
echo -n "Regulating system clock..."
/sbin/adjtimex -tick "$TICK" -frequency "$FREQ"
echo "done."
;;
stop)
;;
*)
echo "/etc/init.d/adjtimex: unknown command $1" >&2
echo "Usage: /etc/init.d/adjtimex {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
exit 0
NFS サーバのパッケージをインストール。
玄箱うぉううぉう♪
さんの Debian 化キットを玄箱/HG で使っている場合は、
カーネルモジュールのインストール
も忘れずに行っておく。
# aptitude install nfs-user-server
/etc/exports に以下の設定を追加 *3。
/home 192.168.0.0/24(rw) /home/data 192.168.0.0/24(rw,anongid=100) /home/www 192.168.0.0/24(rw,all_squash,anonuid=33,anongid=100) /cdrom 192.168.0.0/24(ro)
以下のコマンドを実行し、NFS デーモンを再起動。
# /etc/init.d/nfs-user-server restart