Daemons
Publié : mar. 31/mars/2009 18:21
J'y connais pas encore grand chose , mais voici ce que j'ai fait , ca tourne :
le script du daemon dans /etc/init.d
le code purebasic , à compilé et à plaçer dans usr/sbin sous le nom de MyEmptyDaemon
le script du daemon dans /etc/init.d
( j'ai repris atd , que j'ai modifier bien évidement )#! /bin/sh -e
#### BEGIN INIT INFO
# Provides: MyEmptyDaemon
# Default-Start: 2 3 4 5
# Default-Stop: S 0 1 6
# Short-Description: MyEmptyDaemon
# Description: Debian init script for the MyEmptyDaemon deferred executions
### END INIT INFO
#
# Author: Cpl.Bator
#
set -e
PATH=/bin:/usr/bin:/sbin:/usr/sbin
DAEMON=/usr/sbin/MyEmptyDaemon
test -x $DAEMON || exit 0
. /lib/lsb/init-functions
case "$1" in
start)
log_daemon_msg "Starting empty deamon" "MyEmptyDaemon"
start_daemon $DAEMON
log_end_msg $?
;;
stop)
log_daemon_msg "Stopping empty deamon" "MyEmptyDaemon"
killproc $DAEMON
log_end_msg $?
;;
force-reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: /etc/init.d/MyEmptyDaemon {start|stop|restart|force-reload}"
exit 1
;;
esac
exit 0
le code purebasic , à compilé et à plaçer dans usr/sbin sous le nom de MyEmptyDaemon
Code : Tout sélectionner
; CREATION DE DAEMONS SOUS LINUX
; CODE ORIGINAL :
;http://www.netzmafia.de/skripten/unix/linux-daemon-howto.html
; Traduction par Cpl.Bator.
#EXIT_SUCCESS=0
#EXIT_FAILURE=1
#STDIN_FILENO = 0
#STDOUT_FILENO = 1
#STDERR_FILENO = 2
Macro pid_t
i
EndMacro
Define.pid_t pid,sid
pid = fork_()
If pid<0
exit_(#EXIT_FAILURE)
ElseIf pid>0
exit_(#EXIT_SUCCESS)
EndIf
umask_(0)
sid = setsid_()
If sid<0
exit_(#EXIT_FAILURE)
EndIf
If chdir_("/") < 0
exit_(#EXIT_FAILURE)
EndIf
close_(#STDIN_FILENO)
close_(#STDOUT_FILENO)
close_(#STDERR_FILENO)
; CODE DU DAEMON !
While(#True)
If Flag = 0
Flag = 1
MessageRequester("Daemon started!","Daemon started!")
EndIf
Delay(30)
Wend
exit_(#EXIT_SUCCESS)