時間が経過するとリセットというのは、
ppc_uartd が動いていないときの症状なのだが、
ppc_uartd はちゃんと動かしてある。
なんで??と思いながら、ppc_uartd を strings にかけていたら、
error chdir という文字列を見つけた。
どこに chdir しているのかは不明だが、、、
ためしに /etc/rc.d/init.d/hackkit で
rm -fr /www mkdir /www mkdir /www/script cp /mnt/HackKit/www/script/melsub_shutdown.sh /www/script/melsub_shutdown.shとして、/www を消しているのをやめてみる
# rm -fr /www # mkdir /www # mkdir /www/script cp /mnt/HackKit/www/script/melsub_shutdown.sh /www/script/melsub_shutdown.shfl0 の conf_save.tar.gz を作り直して、再起動。
確認のため、
root@hackkit:~# /etc/rc.d/init.d/ppc_uartd stop Stop services: ppc_uartd root@hackkit:~# rm -fr /www root@hackkit:~# /etc/rc.d/init.d/ppc_uartd start Start services: ppc_uartdして放置しておいたら、リセットされた。
/www は Web からの設定をしないので必要はなく、
また、リアパネルの設定初期化ボタンを押すと
/www/script/melsub_init.sh が起動されて、
せっかく書き込んだ /dev/fl0 が初期化されてしまうので、
できれば消しておきたい。
空のディレクトリだけにしてみる
root@hackkit:~# /etc/rc.d/init.d/ppc_uartd stop Stop services: ppc_uartd root@hackkit:~# rm -fr /www root@hackkit:~# mkdir /www root@hackkit:~# mkdir /www/image root@hackkit:~# mkdir /www/script root@hackkit:~# mkdir /www/cgi-bin root@hackkit:~# mkdir /www/errors root@hackkit:~# mkdir /www/help root@hackkit:~# /etc/rc.d/init.d/ppc_uartd start Start services: ppc_uartdこれで大丈夫だろうと思っていたら、リセットされてしまった。
こ1時間かかって達した結論は、、、
というわけで、 /www/script/melsub_shutdown.sh のほかに、 /www/script/melsub_diskcheck.sh も必要。
melsub_diskcheck.sh 互換品を作り、/www/script に置くことにする
#!/bin/sh if [ `df | sed -n -e 's;^/dev/hda1.*[ ]*\([0-9][0-9]*\)%.*$;\1;p'` -ge 90 ] then echo -n "WWWW" > /dev/ttyS1 exit 1 fi echo -n "VVVV" > /dev/ttyS1 exit 0というスクリプトを /mnt/HackKit/www/script/melsub_diskcheck.sh として置き、
rm -fr /www mkdir /www mkdir /www/script cp /mnt/HackKit/www/script/melsub_shutdown.sh /www/script/melsub_shutdown.shを
rm -fr /www mkdir /www mkdir /www/script cp /mnt/HackKit/www/script/*.sh /www/scriptと変更、
root@hackkit:/tmp# as_flash /dev/fl0 get -n /tmp/conf_save.tar.gz --output /tmp/conf_save.tar.gz root@hackkit:/tmp# tar zxvf conf_save.tar.gz etc/ etc/network/ etc/network/interfaces : : etc/rc.d/init.d/hackkit etc/rc.d/rc0.d/K10hackkit etc/rc.d/rc2.d/S96hackkit root@hackkit:/tmp# (cd /; tar cf - etc/rc.d/*/*hackkit)|tar xvf - etc/rc.d/init.d/hackkit etc/rc.d/rc0.d/K10hackkit etc/rc.d/rc2.d/S96hackkit root@hackkit:/tmp# tar zcvf conf_save.tar.gz etc www etc/ etc/network/ etc/network/interfaces : : etc/rc.d/ etc/rc.d/init.d/ etc/rc.d/init.d/hackkit etc/rc.d/rc0.d/ etc/rc.d/rc0.d/K10hackkit etc/rc.d/rc2.d/ etc/rc.d/rc2.d/S96hackkit www/ www/.htpasswd www/cgi-bin/ www/cgi-bin/.htpasswd www/script/ www/script/.htpasswd root@hackkit:/tmp# as_flash /dev/fl0 add -n /tmp/conf_save.tar.gz root@hackkit:/tmp# as_flash /dev/fl0 list 0 -> /tmp/conf_save.tar.gz電源を入れなおし、/www には2つのファイルしかないことを確認。
root@hackkit:~# find /www -print /www /www/script /www/script/melsub_diskcheck.sh /www/script/melsub_shutdown.shこれでよさそう、、、
← | LinkStation/玄箱 をハックしよう | → HD-120LAN ハックキットの動作確認・・・問題発生 |