OK, ist eigentlich nicht sonderlich schwierig bei Debian beim booten etwas automatisch zu starten. Ich hole nur erstmal etwas weiter aus, damit du auch verstehen kannst, was da passiert:
Debian benutzt ein Sys-V Init (oder ein daran angelehntes Init-System). "/sbin/init" ist der erste Prozess, der gestartet wird, nachdem der Kernel geladen ist (initrd mal außen vor). Die später im Hintergrund laufenden Dienste werden über die Init-Scripts gestartet. Diese liegen bei Debian im Verzeichnis "/etc/init.d/". Es sind für verschiedene Verwendungszwecke des Betriebssystems unterschiedliche Runlevel vorgesehen, bei Debian wird aber eigentlich nur Runlevel 2 im Normalbetrieb verwendet. Dienste die in allen Runlevels laufen müssen, werden beim booten im Runlevel "S" gestartet.
Die Init-Scripts werden zum starten eines Dienstes mit dem Parameter "start" aufgerufen und zum beenden mit dem Parameter "stop". Wenns nicht ganz sauber sein soll, kann man den Paramter auch ignorieren. Die Init-Scripte liegen bei Debian im Verzeichnis "/etc/init.d/". Im Verzeichnis "/etc/rc2.d/" werden nun alle Init-Scripts verlinkt, deren Dienste im Runlevel 2 gestartet und auch gestoppt werden sollen. Beim Wechsel in das Runlevel (also während dem Bootvorgang) werden alle Scripts gestartet, deren (Link-)Name mit "S" anfängt. Die zwei darauf folgenden Ziffern legen fest, in welcher Reihenfolge die Scripts gestartet werden. Wenn das Runlevel verlassen wird, werden die Scripts, deren Name mit "K" (Kill) beginnt, mit dem Parameter "stop" aufgerufen.
Lange Rede, kurzer Sinn:
1. Kopier dein Script als root nach /etc/init.d/teamspeak.
2. Dann sorge dafür, dass es auführbar ist ("chmod u+rx /etc/init.d/teamspeak").
3. Verlinke es von "/etc/rc2.d/" aus ("cd /etc/rc2.d/; ln -s ../init.d/teamspeak S99teamspeak").
Jedes mal wenn der Rechner gestartet wird, wird als eins der letzten Initscripts nun dein script in Form des Kommandos "/etc/rc2.d/S99teamspeak start" aufgerufen. Das Script startet dann (hoffentlich) die beiden Dienste.
Wenn du das ganze sauberer lösen möchtest, solltest du für beide Dienste je ein eigenes Script erstellen, was dann auch die Parameter "start", "stop" und "restart" abarbeiten können sollte. Die Scripts verlinkst du dann in /etc/rc2.d/ so, dass die Dienste in der richtigen Reihenfolge gestartet werden.
Auch wenn es bei deinen Programmen vielleicht reicht, wenn sie beim herunterfahren von "kill" beendet werden, so ist ein Init-Script was die Parameter "stop" und "restart" beherrscht doch recht praktisch. Man kann nämlich bei Debian z.B. sämtliche Dienste über eben diese Init-Scripts beenden oder neustarten. Mal eben was an der Apache-Konfiguration geändert und der Webserver muss neu gestartet werden? "/etc/init.d/apache restart" -> fertig.
Die Unterscheidung der Parameter kann z.B. so erfolgen:
#!/bin/bash
function dienst_starten()
{
# hier die Kommandos zum starten des Dienstes eintragen
}
function dienst_stoppen()
{
# hier die Kommandos zum stoppen des Dienstes eintragen
}
case "$1" in
start)
dienst_starten
;;
stop)
dienst_stoppen
;;
restart|reload|force-reload)
dienst_stoppen
dienst_starten
;;
*)
echo "Usage: $0 {start|stop|restart}"
esac