Are you sure you aren’t invoking another copy of firefly in another skript?
In unslung, after installing the ipkg a startup skript is in /opt/etc/init.d/ anyway. So if you invoke another copy, there may be conflicts, locks on the DB and whatnot… causing firefly to shutdown, eventually?
But as far as I know the script under /opt/etc/init.d (S60mt-daapd) isn´t started during the NSLU boot process, that´s why I´ve put “./optetc/init.s/S60mt-daapd” in the rc.local.
Don’t know if it helps, but there are only three ways to send it a shutdown signal.
1. Send a TERM signal to the pid
2. Run another copy with a “-k” option
3. Hit the shutdown button from the web interface.
You can maybe turn the debuglevel up to 9 and comb through the logs to see which of the three it is.