Difference between revisions of "Novacomd Init Script"

From WebOS Internals
Jump to navigation Jump to search
(Replaced content with 'See http://www.webos-internals.org/wiki/Accessing_Linux_Debian')
(Undo revision 13277 by Loudergood (Talk))
Line 1: Line 1:
See http://www.webos-internals.org/wiki/Accessing_Linux_Debian
+
<source lang="bash">
 +
#!/sbin/runscript
 +
 
 +
start() {
 +
        ebegin "Starting novacomd"
 +
        start-stop-daemon --start --background --exec /opt/Palm/novacom/novacomd
 +
        result=$?
 +
        eend $result
 +
}
 +
 
 +
stop() {
 +
        ebegin "Stopping novacomd"
 +
        start-stop-daemon --stop --quiet --exec /opt/Palm/novacom/novacomd
 +
        result=$?
 +
        eend $result
 +
}
 +
</source>
 +
 
 +
 
 +
== For Debian(tested on Sid 2/21/2011) ==
 +
 
 +
1. Save this at /etc/init.d/novacomd
 +
2. Make sure you make it executable. Use "chmod +x /etc/init.d/novacomd"
 +
3. Run "update-rc.d novacomd defaults"
 +
 
 +
<source lang="bash">
 +
    #! /bin/sh
 +
    ### BEGIN INIT INFO
 +
    # Provides:          novacomd
 +
    # Required-Start:    $remote_fs dbus udev
 +
    # Required-Stop:    $remote_fs dbus udev
 +
    # Should-Start:      $syslog
 +
    # Should-Stop:      $syslog
 +
    # Default-Start:    2 3 4 5
 +
    # Default-Stop:      0 1 6
 +
    # Short-Description: palm novacom daemon
 +
    # Description:      Daemon for connecting to palm devices
 +
    #                   
 +
    ### END INIT INFO
 +
   
 +
    PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/Palm/novacom
 +
    DESC="Palm Novacom daemon"
 +
    NAME="novacomd"
 +
   
 +
    DAEMON=/opt/Palm/novacom/$NAME
 +
   
 +
    PIDFILE=/var/run/$NAME.pid
 +
   
 +
    SCRIPTNAME=/etc/init.d/novacomd
 +
   
 +
    # Gracefully exit if the package has been removed.
 +
    test -x $DAEMON || exit 0
 +
   
 +
    . /lib/lsb/init-functions
 +
   
 +
    #
 +
    #      Function that starts the daemon/service.
 +
    #
 +
    d_start() {
 +
            start-stop-daemon --start --quiet --pidfile $PIDFILE \
 +
                    --exec $DAEMON -- $DAEMON_OPTS
 +
    }
 +
   
 +
    #
 +
    #      Function that stops the daemon/service.
 +
    #
 +
    d_stop() {
 +
            start-stop-daemon --stop --retry 5 --quiet --pidfile $PIDFILE \
 +
                    --exec $DAEMON
 +
    }
 +
   
 +
   
 +
    case "$1" in
 +
      start)
 +
            log_daemon_msg "Starting $DESC" "$NAME"
 +
            d_start
 +
            case "$?" in
 +
                    0) log_end_msg 0 ;;
 +
                    1) log_progress_msg "already started"
 +
                      log_end_msg 0 ;;
 +
                    *) log_end_msg 1 ;;
 +
            esac
 +
            ;;
 +
      stop)
 +
            log_daemon_msg "Stopping $DESC" "$NAME"
 +
            d_stop
 +
            case "$?" in
 +
                    0) log_end_msg 0 ;;
 +
                    1) log_progress_msg "already stopped"
 +
                      log_end_msg 0 ;;
 +
                    *) log_end_msg 1 ;;
 +
            esac
 +
            ;;
 +
      restart|force-reload)
 +
            $0 stop
 +
            $0 start
 +
            ;;
 +
      status)
 +
            status_of_proc -p $PIDFILE $DAEMON $NAME && exit 0 || exit $?
 +
            ;;
 +
      *)
 +
            echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2
 +
            exit 1
 +
            ;;
 +
    esac
 +
   
 +
    exit 0
 +
</source>

Revision as of 23:17, 10 March 2011

<source lang="bash">

  1. !/sbin/runscript

start() {

       ebegin "Starting novacomd"
       start-stop-daemon --start --background --exec /opt/Palm/novacom/novacomd
       result=$?
       eend $result

}

stop() {

       ebegin "Stopping novacomd"
       start-stop-daemon --stop --quiet --exec /opt/Palm/novacom/novacomd
       result=$?
       eend $result

} </source>


For Debian(tested on Sid 2/21/2011)

1. Save this at /etc/init.d/novacomd 2. Make sure you make it executable. Use "chmod +x /etc/init.d/novacomd" 3. Run "update-rc.d novacomd defaults"

<source lang="bash">

   #! /bin/sh
   ### BEGIN INIT INFO
   # Provides:          novacomd
   # Required-Start:    $remote_fs dbus udev
   # Required-Stop:     $remote_fs dbus udev
   # Should-Start:      $syslog
   # Should-Stop:       $syslog
   # Default-Start:     2 3 4 5
   # Default-Stop:      0 1 6
   # Short-Description: palm novacom daemon
   # Description:       Daemon for connecting to palm devices
   #                    
   ### END INIT INFO
    
   PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/Palm/novacom
   DESC="Palm Novacom daemon"
   NAME="novacomd"
    
   DAEMON=/opt/Palm/novacom/$NAME
    
   PIDFILE=/var/run/$NAME.pid
    
   SCRIPTNAME=/etc/init.d/novacomd
    
   # Gracefully exit if the package has been removed.
   test -x $DAEMON || exit 0
    
   . /lib/lsb/init-functions
    
   #
   #       Function that starts the daemon/service.
   #
   d_start() {
           start-stop-daemon --start --quiet --pidfile $PIDFILE \
                   --exec $DAEMON -- $DAEMON_OPTS
   }
    
   #
   #       Function that stops the daemon/service.
   #
   d_stop() {
           start-stop-daemon --stop --retry 5 --quiet --pidfile $PIDFILE \
                   --exec $DAEMON
   }
    
    
   case "$1" in
     start)
           log_daemon_msg "Starting $DESC" "$NAME"
           d_start
           case "$?" in
                   0) log_end_msg 0 ;;
                   1) log_progress_msg "already started"
                      log_end_msg 0 ;;
                   *) log_end_msg 1 ;;
           esac
           ;;
     stop)
           log_daemon_msg "Stopping $DESC" "$NAME"
           d_stop
           case "$?" in
                   0) log_end_msg 0 ;;
                   1) log_progress_msg "already stopped"
                      log_end_msg 0 ;;
                   *) log_end_msg 1 ;;
           esac
           ;;
     restart|force-reload)
           $0 stop
           $0 start
           ;;
     status)
           status_of_proc -p $PIDFILE $DAEMON $NAME && exit 0 || exit $?
           ;;
     *)
           echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2
           exit 1
           ;;
   esac
    
   exit 0

</source>