dimanche 24 février 2013

Update DDNS script - run at startup on Synology (part 2)

How to make DDNS update run at startup:

1_ Install PYthon via Synology package manager
2_ Take script from here (www.debian-administration.org/articles/28) and modify it to run the DDNS PY script through a SCREEN session (the following must be in the "start" session of some startup script):

    echo "Starting refresh from FTPD" >> /root/refreshlog
    /opt/bin/screen -d -m sh -c "/etc/init.d/pythonstrap"

/etc/init.d/pythonstrap being defined like this:
    /usr/bin/python /etc/init.d/refresh_DDNS_JB.py



3_ You need "screen"! For that you need to install ipkg. Follow this: http://forum.synology.com/wiki/index.php/Overview_on_modifying_the_Synology_Server,_bootstrap,_ipkg_etc#How_to_install_ipkg

4_ ipkg is not working! You need to add /opt/bin AT THE BEGINING of your PATH at following locations:
   * /root/.profile
   * /etc/profile

4_ Now finish install ipkg:
   * ipkg update
   * ipkg upgrade

5_ Install screen:
   * ipkg install screen

6_ ... Make DDNS script run at startup. I'M STUCK HERE. I copied my .sh script here (with CHMOD 0755) and there but it won't run at startup, don't know why:
   * /opt/etc/init.d/S99refreshDDNSJB.sh
   * /usr/syno/etc/rc.d/S99refreshDDNSJB.sh

So for now I run the script manually after each reboot... but what if power outage...

7_ FOUND THE REASON: in startup scripts, you must specify the full path to screen! Like: /opt/bin/screen. Yeepee!!!

8_ And: I had to put the script insite S99ftpd.sh. A standalone script won't be launched! But I'm tired to find out why.... There must be a Synology command to refresh the startup list but who cares.

Nice reference about startup scripts on Synology: http://forum.synology.com/enu/viewtopic.php?f=27&t=48260

Aucun commentaire: