玄箱は、バージョン 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