Revision history for DaemonEinrichtenDebian


Revision [20745]

Last edited on 2015-02-18 22:31:41 by ToBo
Additions:
### BEGIN INIT INFO
# Provides: autobackup
# Required-Start:
# Required-Stop:
# Default-Start: 2
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO


Revision [20742]

Edited on 2015-02-18 22:30:10 by ToBo
Additions:
Ein weiteres Beispiel: [[LinuxStartScriptExample2]]


Revision [20741]

Edited on 2015-02-18 22:29:31 by ToBo [Reverting last edit by ToBo [20740] to previous version [13262]]
Additions:
%%(bash;;/etc/init.d/autobackup)
# Andreas Tobola, 2012
DAEMON=autobackup
start-stop-daemon --background --start --pidfile /var/run/$DAEMON.pid --make-pidfile --exec /home/root/backup/usbautobackup.sh
echo "USB bar auto backup daemon started."
start-stop-daemon --stop --pidfile /var/run/$DAEMON.pid
echo "USB bar auto backup daemon stoped."
Deletions:
%%(bash;;/etc/init.d/bcc)
# Andreas Tobola, 2014
### BEGIN INIT INFO
# Provides: bcc
# Required-Start:
# Required-Stop:
# Default-Start: 2
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
# Blue Case Control
DAEMON=bcc
#/home/pi/system/speak `python /home/pi/ATmega16/systemVoltage.py`
start-stop-daemon --background --start --pidfile /var/run/$DAEMON.pid --make-pidfile -N -1 --exec /usr/bin/python /home/pi/sys
echo "Blue Cace control daemon started."
/home/pi/system/speak "blu kejs kontrollsystem gestartet." &
start-stop-daemon --stop --pidfile /var/run/$DAEMON.pid
echo "Blue Case control daemon stoped."
python /home/pi/system/kbcc.py
echo "I2C-Devices reset and giving back control to ATmega."
/home/pi/system/speak "blu kejs kontrollsystem beendet." &
restart)
$0 stop
sleep 1
$0 start


Revision [20740]

Edited on 2015-02-18 22:23:32 by ToBo [Reverting last edit by ToBo [20740] to previous version [13262]]
Additions:
%%(bash;;/etc/init.d/bcc)
# Andreas Tobola, 2014
### BEGIN INIT INFO
# Provides: bcc
# Required-Start:
# Required-Stop:
# Default-Start: 2
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
# Blue Case Control
DAEMON=bcc
#/home/pi/system/speak `python /home/pi/ATmega16/systemVoltage.py`
start-stop-daemon --background --start --pidfile /var/run/$DAEMON.pid --make-pidfile -N -1 --exec /usr/bin/python /home/pi/sys
echo "Blue Cace control daemon started."
/home/pi/system/speak "blu kejs kontrollsystem gestartet." &
start-stop-daemon --stop --pidfile /var/run/$DAEMON.pid
echo "Blue Case control daemon stoped."
python /home/pi/system/kbcc.py
echo "I2C-Devices reset and giving back control to ATmega."
/home/pi/system/speak "blu kejs kontrollsystem beendet." &
restart)
$0 stop
sleep 1
$0 start
Deletions:
%%(bash;;/etc/init.d/autobackup)
# Andreas Tobola, 2012
DAEMON=autobackup
start-stop-daemon --background --start --pidfile /var/run/$DAEMON.pid --make-pidfile --exec /home/root/backup/usbautobackup.sh
echo "USB bar auto backup daemon started."
start-stop-daemon --stop --pidfile /var/run/$DAEMON.pid
echo "USB bar auto backup daemon stoped."


Revision [13262]

Edited on 2012-03-17 21:45:05 by ToBo [Reverting last edit by ToBo [20740] to previous version [13262]]
Additions:
# /etc/init.d/autobackup start
# /etc/init.d/autobackup stop
Deletions:
# /etc/init.d/autobackup
# /etc/init.d/autobackup


Revision [13261]

Edited on 2012-03-17 21:39:37 by ToBo [Reverting last edit by ToBo [20740] to previous version [13262]]
Additions:
Diese Anleitung zeigt die Schritte für die Einrichtung eines Daemons unter [[OsLinux Debian]] auf. Einen neuen Daemon unter Debian. In meinem Fall war es u.a. ein Backup-Skript, welches erkennt, wenn ein bestimmter USB-Stick eingesteckt wurde und daraufhin ohne weiteres Zutun ein Backup macht.
Das Skript soll natürlich im Hintergrund des Systems laufen. Also ein Fall für einen Linux-Daemon.
Die erste Voraussetzung ist, es existiert bereits ein Skript wie in dem nachfolgenden Beispiel, welches im Systemhintergrund als "Daemon" laufen soll. Dieses Skript __muss__ eine Endlosschleife enthalten. Auf das Backup-Skript (usbautobackup.sh) wird ab jetzt nicht näher eingegangen. Anstelle des Backup-Skripts kann natürlich jeder belibige Code stehen.
Deletions:
Einen neuen Daemon unter Debian einzurichten ist nicht mit einer Zeile getan.
Die erste Voraussetzung ist, es existiert bereits ein Skript wie in dem nachfolgenden Beispiel, welches im Systemhintergrund als "Daemon" laufen soll. Dieses Skript muss eine Endlosschleife enthalten. Auf das Backup-Skript (usbautobackup.sh) wird nicht näher eingegangen.


Revision [13260]

Edited on 2012-03-17 21:30:28 by ToBo [Reverting last edit by ToBo [20740] to previous version [13262]]
Additions:
Der nachfolgende Test sollte ergeben:
# /etc/init.d/autobackup
USB bar auto backup daemon started.
# /etc/init.d/autobackup
USB bar auto backup daemon stoped.
Damit das System den Daemon automatisch beim Wechsel der Runlevel startet bzw. stopt, muss dieses zumindest unter dem aktuellen Runlevel verlinkt werden. Mit dem Befehl runlevel, lässt sich herausfinden in welchem Runlevel das System im Normalfall arbeitet. Für Runlevel 2 wechselt man in das Verzeichnis /etc/rc2.d/. Für Runlevel 3 entsprechend /etc/rc3.d/. Die Nummer 80 im Beispiel gibt an, in welcher Reihenfolge die Skripte gestartet werden. In dem fall an stelle 82. Dazu schaut man sich in /etc/rc2.d/ was dort nach einander gestartet wird und wählt dann eine entsprechende Nummer, damit schon das Grundsystem verfügbar ist, wenn das eigene Skript gestartet wird. Wenn man die symbolischn Links unter /etc/rc2.d/ zu kryptisch empfindet, so wählt man eine recht hohe Nummer, notfalls 99. Nummer dürfen mehrfach vergeben werden. Man erstellt eine Datei mit S für Start (Starten beim Eintritt in den Runlevel) und eine Datei mit K für Kill (beim Verlassen des Runlevels beenden).
ln -s /etc/init.d/autobackup S82autobackup
ln -s /etc/init.d/autobackup K82autobackup
Alternativ können unter Debian die üblichen symbolischen Links wie folgt automatisch erstellt werden, allerdings rate ich davon ab.
update-rc.d autobackup defaults
Und wenn die Links wieder weg sollen, dann gib man dem Computer das folgende Kommando:
update-rc.d -f autobackup remove
Deletions:
Das Skript zumindest unter dem aktuellen Runlevel verlinken. Mit dem Befehl runlevel, lässt sich herausfinden in welchem Runlevel das System im Normalfall arbeitet. Für Runlevel 2 wechselt man in das Verzeichnis /etc/rc2.d/. Für Runlevel 3 entsprechend /etc/rc3.d/.
ln -s /etc/init.d/autobackup S80autobackup
ln -s /etc/init.d/autobackup K80autobackup


Revision [13259]

Edited on 2012-03-17 21:17:59 by ToBo [Reverting last edit by ToBo [20740] to previous version [13262]]
Additions:
Einen neuen Daemon unter Debian einzurichten ist nicht mit einer Zeile getan.
Die erste Voraussetzung ist, es existiert bereits ein Skript wie in dem nachfolgenden Beispiel, welches im Systemhintergrund als "Daemon" laufen soll. Dieses Skript muss eine Endlosschleife enthalten. Auf das Backup-Skript (usbautobackup.sh) wird nicht näher eingegangen.
%%(bash;;/home/root/backup/usbautobackup.sh)
#!/bin/sh
while [ 1 ]
do
# place your code here
done
Als zweiten Schritt wird unter /etc/init.d/ ein Start-Skript erstellt, dass beim Wechsel von Runlevel zu Runlevel vom System aufgerufen wird.
#!/bin/sh
Deletions:
Einen neuen Daemon unter Debian einzurichten ist für Anfänger eine keine Herausforderung.
#! /bin/sh


Revision [13258]

Edited on 2012-03-17 21:10:21 by ToBo [Reverting last edit by ToBo [20740] to previous version [13262]]
Additions:
#! /bin/sh
# Andreas Tobola, 2012
# The name of the deamon
DAEMON=autobackup
touch /var/lock/$DAEMON
# Carry out specific functions when asked to by the system
start-stop-daemon --background --start --pidfile /var/run/$DAEMON.pid --make-pidfile --exec /home/root/backup/usbautobackup.sh
echo "USB bar auto backup daemon started."
start-stop-daemon --stop --pidfile /var/run/$DAEMON.pid
echo "USB bar auto backup daemon stoped."
echo "Usage: /etc/init.d/$DAEMON {start|stop}"
Geeignete Rechte setzen
chmod 755 /etc/init.d/autobackup
Deletions:
echo "Usage: /etc/init.d/autobackup {start|stop}"


Revision [13257]

Edited on 2012-03-17 20:56:29 by ToBo [Reverting last edit by ToBo [20740] to previous version [13262]]
Additions:
=====Daemon einrichten=====
Einen neuen Daemon unter Debian einzurichten ist für Anfänger eine keine Herausforderung.
%%(bash;;/etc/init.d/autobackup)
case "$1" in
start)
;;
stop)
;;
*)
echo "Usage: /etc/init.d/autobackup {start|stop}"
exit 1
;;
esac
exit 0
%%
Das Skript zumindest unter dem aktuellen Runlevel verlinken. Mit dem Befehl runlevel, lässt sich herausfinden in welchem Runlevel das System im Normalfall arbeitet. Für Runlevel 2 wechselt man in das Verzeichnis /etc/rc2.d/. Für Runlevel 3 entsprechend /etc/rc3.d/.
%%(bash)
cd /etc/rc2.d/
ln -s /etc/init.d/autobackup S80autobackup
ln -s /etc/init.d/autobackup K80autobackup
%%
Deletions:
=====Titel=====


Revision [13256]

The oldest known version of this page was created on 2012-03-17 20:46:46 by ToBo [Reverting last edit by ToBo [20740] to previous version [13262]]
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki