Autostart aber nur wie ?

F

Flo_007

Grünschnabel
Servus mit einander,

ich hätte da paar programme aufn Server die Automatisch gestartet werden sollen nach dem Boot.

normal kommt das zeug ja in /ect/init.d/ rein und mit update-rc.d dann aktiviert

Aber, wie mache ich das nun wenn ich eine start datei habe die mit "./xxxxxx start" gestartet werden muss ?

Hab Debian drauf ;)

Gruß Flo
 
Zuletzt bearbeitet:
Ist zwar für Suse, aber sicher ein gutes Beispiel:

http://www.mi.uni-erlangen.de/~schmid/miinfo/pculinux.html

der Abschnitt: apt-get beim Booten automatisch ausführen

Anderes Debian-Beispiel:

10.6 Es scheint so, als ob Debian rc.local nicht zum Anpassen des Bootprozesses verwendet; welche Einrichtungen gibt es?

Nehmen Sie an, ein System solle beim Hochfahren das Skript foo ausführen oder einen bestimmten (System-V-) Runlevel aktivieren. Dann sollte der Systemadministrator:

*

das Skript foo ins Verzeichnis /etc/init.d/ verschieben,

*

den Debian-Befehl update-rc.d mit den passenden Argumenten ausführen, um die Verweise zwischen den (in der Befehlszeile spezifizierten) Verzeichnissen rc?.d und /etc/init.d/foo (das »?« ist eine Nummer zwischen 0 und 6, die je einem der System-V-Runlevel entspricht) einzurichten,

*

das System neu starten.

Der Befehl update-rc.d richtet Verweise zwischen den Dateien in den rc?.d-Verzeichnissen und dem Skript in /etc/init.d/ ein. Jeder Verweis beginnt entweder mit einem »S« oder einem »K«, gefolgt von einer Nummer, der wiederum der Name des Skripts folgt. Skripte in /etc/rcN.d/, die mit einem »S« beginnen, werden ausgeführt, wenn in den Runlevel N gewechselt wird. Skripte, die mit einem »K« beginnen, werden beim Verlassen des Runlevels N ausgeführt.

Man könnte also zum Beispiel das Skript foo beim Systemstart ausführen lassen, indem man es nach /etc/init.d/ kopiert und die Verweise mit update-rc.d foo defaults 19 einrichtet. Das Argument »defaults« bezieht sich auf die Standard-Runlevel, welche 2 bis 5 sind. Das Argument »19« führt dazu, dass foo vor allen Skripte mit Nummer 20 oder höher aufgerufen wird.

zu finden: http://www.debian.org/doc/manuals/debian-faq/ch-customizing.de.html

Dank google kein Problem ;)
 
Kann man auch einfach in die /etc/init.d/rc (bzw. rc.local oder rc.boot) eintragen.
Code:
cd /ordner/wo/das/skript/liegt
./meinskript start
 
Dienst per Konsole startbar
Du stetzt einen eintrag in die Datei /etc/inittab
Das sieht so aus:
Code:
wm:5:once:wstart ID:Runlevel:once:befehl

Die ID ist Variabel und hat 2 Buchstaben, das Runlevel ist ja normal immer 5, once bewirkt, das der befehl nach erreichen des runlevels einmalig gestartet wird, und dann halt der befehl.

Das kannst du auch unter http://debiananwenderhandbuch.de/startstop.html nochmal nachlesen. Dort kann man auch außer once noch andere optionen nachlesen.

Mfg, sim4000.
 
...das Runlevel ist ja normal immer 5...
Nein ist es nicht. Das mag bei vielen Distros so sein, aber normal ist das deswegen trotzdem nicht. Bei Debian ist es z.B. per Default immer 2. Bei vielen anderen Distros ist es nur dann 5, wenn auch ein grafischer Login (Displaymanager) genutzt wird, sonst aber per Default 3.
Kannst ja z.B. mal testweise eine SuSE-Minimal-Installation machen, dann wirst du sehen, dass er dann im Runlevel 3 laeuft.
 
Ja. hast ja recht.

Ich zb habe mein sys im moment auf standart-runlevel 3.
Und starte im Textmodus. Und kde dann via startx.

Mfg, sim4000.
 
hab ich das richtig verstanden?

1. Alles was in /etc/init.d liegt ist sozusagen der AutostartOrdner

2. Wenn ich jetz z.B. nen TS-Server autostarten will (normal per Script: ./ts start) erstelle ich einfach ne neue Datei ts.sh in diesem Ordner:
Code:
#!/bin/bash
sh /root/ts/ts start
 
Hallo,

du kannst einfach das script nach init.d verlinken.

Gruß Lumpi
 
Code:
ln -s ts /etc/init.d
Jetz hab ich ja so ne Art Windows-Verknüpfung

Aber der übernimmt den Zusatz "start" nich...
Musste ja immer per
Code:
./ts start
ausführen...
 
Hallo
Schreib ein Startscript, da rein schreibst du deinen kompletten Befehl mit Parametern. (Shebang nicht vergessen)
Setz das X-Bit.
Verlink das Script.
Fertisch ;)

Gruß Wolfgang
 
Code:
#!/bin/bash
sh ts start
sh Script mit chmod 777 drauf...
Code:
ln ts.sh /etc/init.d/ts.sh
läuft nich, sry weder per symbolischen noch mit dem normalen Link

edit:
mir kommt grad die idee das TS evtl. von einem User ausgeführt werden muss...
 
Zuletzt bearbeitet:
Code:
#!/bin/bash
sh ts start
sh Script mit chmod 777 drauf...
Code:
ln ts.sh /etc/init.d/ts.sh
läuft nich, sry weder per symbolischen noch mit dem normalen Link

edit:
mir kommt grad die idee das TS evtl. von einem User ausgeführt werden muss...

Erstens:
Wenn du schon mit sh starten willst, dann benutze den vollen Pfad.
Path ist nämlich zu dem Zeitpunkt vermutlich nicht gesetzt.
Zweitens:
Warum 777?
Es genügt das X-Bit zu setzen.
755 reicht völlig, wenn es jeder starten und der User alles darf.
man chmod
Drittens:
Wenn du das Script mit einem angemeldeten User starten willst, muss es woanders gestartet werden. Z.B. in der ~/.bashrc des Users.
Was dein Script macht, weiss ich nicht und ist auch egal. Aber du kannst das sicher auch editieren.
Am Beginn einfach nach Parameter fragen, wenn nicht gesetzt einen default Wert setzen. Eventuell wird ja im Script auch die UID abgefragt.... ;)

Gruß Wolfgang
PS Ach ja, was verstehst du unter normalem Link?
 
Erstens:
Wenn du schon mit sh starten willst, dann benutze den vollen Pfad.
Path ist nämlich zu dem Zeitpunkt vermutlich nicht gesetzt.

PS Ach ja, was verstehst du unter normalem Link?

1. Das Script befindet sich in einem Ordner der eine "ts" Datei enthält. Das is wohl eine Art Startscript für einen Teamspeak Server und die startet man mit dem Parameter "start" also wenn ichs in ne Shell tippen würde
Code:
# sh ts start
Dafür hab ich dann die sh-Datei erstellt und diese (sh-Datei) in init.d verlinkt uns nich mit einem Symbolischen Link sondern nur mit
Code:
ln ts.sh /etc/init.d/ts.sh

Und das funktioniert nicht...
 
Vergiss das 'update-rc.d' nicht...

Gruss
d22
 

Ähnliche Themen

debootstrap installation und Rätsel

Dateisystem defekt, kein Start von Openfiler möglich. Error 22. Bitte um Hilfe

/ beim booten nur ro gemountet - warum?

[HowTo] Debian Installation mit Installer über SSH

Bios bootet kein AHCI?

Zurück
Oben