crontab autostart

  • hallo forum,


    habe nun meine DNS am laufen. :)
    leider funktioniert

    Code
    chroot /share/HDA_DATA/optware /opt/etc/init.d/S09named start

    in der 'autorun.sh' nicht :(


    meine 'Optware' befindet sich in:
    '/share/MD0_DATA/.qpkg/Optware' (RAID 1)
    ...den ordner '.qpkg' kann ich auch via 'Putty' nicht öffnen.


    /opt/etc/init.d/S09named start via 'autorun.sh' klappt auch nicht ...
    ... auf der konsole KEIN PROBLEM (via Putty).


    also:
    crontab

    Code
    */6 * * * * /share/MD0_DATA/Config/autostart


    da '/share/HDA_DATA' nach dem "reboot" immer leer ist soll diese 'autostart' prüfen, ob die datei 'start_config' in '/share/HDA_DATA' existiert.
    * wenn nicht, soll eine erstellt werden und '/opt/etc/init.d/S09named start' ausgeführt werden.
    * wenn ja, passiert nichts

    Code
    if [ " DATEI EXISTIERT /share/HDA_DATA/start_config " ]; 
    else
    	touch /share/HDA_DATA/start_config
    	/opt/etc/init.d/S09named start
    fi


    kann mir jemand helfen, den teil DATEI EXISTIERT zu ersetzen? {meine welt ist (noch) PHP}
    oder hat jemand eine bessere idee?


    ...mfg dark

    2 Mal editiert, zuletzt von Eraser-EMC2- () aus folgendem Grund: Thema verschoben

  • Hallo Dark,


    ich hatte mir damals diesen Script erstellt :


    Evtl. könnte ich dazu ein QPKG zur Verfügung stellen, so daß das Bearbeiten der autorun.sh entfällt.


    Stefan

  • hallo Stefan


    ... du meinst, ich sollte 'S09named'
    mit deinem script ersetzen?


    da steckt schon deins aus dem thema 'DNS' drin :thumb:



    eigentlich wollte ich ja in meiner 'autostart' statt
    /opt/etc/init.d/S09named start
    eine datei einbinden (für evtl. weitere überraschungen des "QNAP")


    ...ich kann es nur meinem linux nicht verständlich machen :oops:


    in PHP wäre es etwa:
    if(is_file('/share/HDA_DATA/start_config'))

  • Zitat von "dark"

    ...ich kann es nur meinem linux nicht verständlich machen


    Ok, ich war wohl wieder mit zuvielen Dingen gleichzeitig beschäftigt.


    [quote="dark"]if(is_file('/share/HDA_DATA/start_config'))[/quote
    Das geht bei Linux auch recht einfach

    Code
    if [ ! -f "/share/HDA_DATA/start_config" ]; then
       touch /share/HDA_DATA/start_config
       /opt/etc/init.d/S09named start
    fi


    Wenn die Datei "/share/HDA_DATA/start_config" nicht vorhanden ist,
    soll diese erstellt werden.


    Hier findest du einige Dinge zu den Shell-Scripten von Linux.


    Tschuldige, aber den Sinn des Scriptes verstehe ich nicht , da nach einem Reboot eh kein DNS gestartet ist.


    Stefan

  • cool, genau was ich brauchte, vielen dank :thumb:


    ergebnis:

    Code
    if [ ! -f "/share/HDA_DATA/start_config" ]; then   touch /share/HDA_DATA/start_config   /share/MD0_DATA/Config/autostart_job  fi


    und 'autostart_job':

    Code
    # starte DNS-Server
    touch /share/HDA_DATA/start_DNS
    /opt/etc/init.d/S09named start
    
    
    # Dateiende erreicht (ohne Fehler)
    touch /share/HDA_DATA/start_config_successful

    tritt beim start von 'S09named' oder weiteren jobs ein fehler auf, wird das dateiende nicht erreicht und 'start_config_successful' nicht erstellt...


    :idea: Tip zum nachbauen: 'autostart' und 'autostart_job' müssen ausführbar sein.
    (chmod +x) ...hatte da leichte probleme...


    mfg dark