Programm im Hintergrund mehrmals starten



  • Hi,

    ich habe ein Startscript geschrieben in dem ich mehrere Programme beim Start von Linux im Hintergrund starte (Script im /etc/init.d Verzeichnis).
    Hier möchte ich unter anderem ein Programm mit verschiedenen Parametern 3 mal starten.
    Leider startet das Programm nur einmal.....vermutlich überprüft die shell ob das Programm schon läuft und startet diese dann nicht nochmals.
    Wie kann ich das, wenn überhaupt möglich umgehen, das das selbe Programm mit verscheidenen Parametern mehrmals läuft.

    Danke
    worst_case



  • worst_case schrieb:

    Hi,
    Leider startet das Programm nur einmal.....vermutlich überprüft die shell ob das Programm schon läuft und startet diese dann nicht nochmals.

    Wie startest du das Programm denn genau? Die Shell kümmert sich um sowas ansich nicht (darf sie auch nicht). Vielelicht tuts das Programm selber?



  • Hi,

    hier mal mein Code: Achtung.... ist mein erstes Projekt

    #! /bin/sh
    #
    # Author: ich
    #
    ### BEGIN INIT INFO
    # Provides:       visual
    # Required-Start:  $remote_fs $syslog
    # X-UnitedLinux-Should-Start: setserial hotplug
    # Required-Stop:   $remote_fs $syslog
    # Default-Start:   2 3 5
    # Default-Stop:    0 1 6 
    # Description:    starting and stopping the visual Daemon
    ### END INIT INFO
    
        programme=(
                 "/home/grimma/projekte/visual_sst/visual_sst/visual_sst"
                 "/srv/www/htdocs/alert/find_alert_data" 
                 "/srv/www/htdocs/alert/alert"
                 "/srv/www/htdocs/diagramm/save_data"   
                 "/srv/www/htdocs/kWh/kwh_zaehler -fn Zentrale -vp /srv/www/htdocs/data/data_mpi_10 -vn 25 -kp /srv/www/htdocs/kWh" 
                 "/srv/www/htdocs/kWh/kwh_zaehler -fn T1 -vp /srv/www/htdocs/data/data_mpi_11 -vn 45 -kp /srv/www/htdocs/kWh"
                 "/srv/www/htdocs/kWh/kwh_zaehler -fn T2 -vp /srv/www/htdocs/data/data_mpi_12 -vn 45 -kp /srv/www/htdocs/kWh"
                 )
    
    # funkt noch nicht
    #  for (( s=0; s < (${#programme[*]}); s++));
    #      do 
    #       test -x "${programme[s]}" || echo "Fehler bei #Programm:${programme[s]}" exit 5
    #      done
    
    . /etc/rc.status
    rc_reset
    
    case "$1" in
        start)
            echo "Starting Visual-System"
    
            for (( s=0; s < (${#programme[*]}); s++));
    	    do
                 echo -n "Starting ${programme[s]}"
    	     eval  startproc "${programme[s]}"
    	     rc_status -v
                done
            ;;
        stop)
            echo "Shutting down Visual-System "
    
            for (( s=0; s < (${#programme[*]}); s++));
    	    do
                 echo -n "Shutting down ${programme[s]}"
                 eval  killproc -TERM "${programme[s]}"
    	     rc_status -v
                done
            ;;
        try-restart)
            $0 status >/dev/null &&  $0 restart
            rc_status
            ;;
        restart)
            $0 stop
    	sleep 1
            $0 start
            rc_status
            ;;
        status)
            echo "Checking for visual: "
    
            for (( s=0; s < (${#programme[*]} -1 ); s++));
    	    do
                  echo -n "Checking for : ${programme[s]} "
                  checkproc ${programme[s]}
     	      rc_status -v
    	    done
    	;;
        *)
            echo "Usage: $0 {start|stop|try-restart|restart|status}"
            exit 1
            ;;
    esac
    rc_exit
    

    Ich hoffe du kannst was finden

    Danke
    worst_case


Anmelden zum Antworten