• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

autostart von scripten

BiZNiZ

Member
moin ...
... hoffe erst einmal, ich bin hier richtig ...

Mein Problem:
Ich will ein script beim Bootvorgang automatisch starten lassen.
Erforderlich ist es in den Runleveln 3 und 5 ...

Das script kann ich manuell starten mit
Code:
./policyd-weight start
Also muss ich wohl irgendwie diesen Aufruf beim Systemstart integrieren ...

Leider blicke ich nicht so ganz durch bei der Anpassung der /etc/init.d/skeleton an meine Bedürfnisse ...

Aber wenn ich den Werdegang so richtig verstehe, muss ich erst ein Script erstellen (basierend auf der skeleton), dieses dann "symlinken" in rc.3 und rc.5 ...

Nur wie ?
Durch die drölftausend HowTo's bin ich nicht so ganz durchgestiegen ...

Hoffe, jemand hat einen Lösungsansatz für mich ...
 

TheNeo75

Newbie
mit symlink ist gemeint dass dort symbolisch eine datei verlinkt wird, diese bleibt am ursprungsort und nur ein link zu der originaldatei wird eingefügt.

zb:
Code:
 ln -s originaldatei  zielort



den runleveleditor findest du in:
yast -> system -> runlevel-editor
 
OP
B

BiZNiZ

Member
irgendwas mache ich wohl noch falsch ...

Also:

Das script liegt in /etc/init.d
Unter YaST im Runlevel-Editor habe ich es aktiviert und entsprechende "Häkchen" bei Runlevel 3 und 5 gesetzt ...

Anschließend gespeichert und rebootet ...

danach per ps ax | grep policy nachgesehen ... NIX ...

nochmals YaST aufgerufen und geprüft ...
Script ist eingetragen und aktiviert, aber nicht gestartet ...
Manuell starten lässt es sich über YaST allerdings und läuft dann auch ohne Probleme ...

Nur wenn es sich manuell starten lässt, warum wird es dann beim Booten nicht gestartet ?

Idee ?
 
OP
B

BiZNiZ

Member
tja, das Problem besteht weiterhin ...

Das script kann normal gestartet werden und läuft dann als SPAMFILTER im Hintergrund ...

Nur muss ich es immer von Hand anwerfen ... sehr ärgerlich nach einem Reboot des Servers ...

In YaST ist es wie gesagt drin, aber gestartet wird es nicht ...
Klicke ich dann allerdings in YaST auf starten, läuft es sofort ...

ich will eigentlich nur erreichen, dass dieses script als letztes gestartet wird, sobald der Rechner seinen Runlevel 3 oder 5 erreicht hat ...

Aber so recht finde ich nicht den haken raus, warum er es nicht macht ...
 
OP
B

BiZNiZ

Member
... genau dafür bin ich wohl zu blöde ...

das einzige, was das runlevel-script machen soll, ist, ein script zu starten ...

wenn ich mir jetzt beispielsweise mal das postfix-script ansehe, weiss ich nicht einmal ansatzweise, was ich dort ersetzen muss, damit ich erreiche, dass das script /usr/local/bin/policyd_weight in den runleveln 3 und 5 gestartet wird und idealer Weise auch noch die Möglichkeiten "STOP|START|RESTART erhält ...

Ich werde da leider nicht so ganz schlau draus ...
 

admine

Ultimate Guru
Hm ... also grob sollte es so aussehen:

Code:
#! /bin/sh
#
# init.d/policyd_weight
#
### BEGIN INIT INFO
# Provides:       policyd_weight
# Required-Start: $network $remote_fs $syslog
# Required-Stop:
# Default-Start:  3 5
# Default-Stop:
# Description:    SPAMFILTER 
### END INIT INFO

# Status shell functions
. /etc/rc.status

case "$1" in
    start)
           <hier muss das Script gestartet werden>
           rc_status -v
           ;;
    stop)
           <hier wird das Script gestoppt>
           rc_status -v
           ;;
    restart)
          $0 stop	  
          $0 start
          rc_status -v
          ;;
    status)
          <Status-Abfrage über prozess-ID oder änlich>
          rc_status -v
          ;;
    *)
	 echo "Usage: $0 {start|stop|status|restart}"
	exit 1
	;;
esac

Evt. hilft dir das weiter :roll:
 
OP
B

BiZNiZ

Member
jo ...
jetzt mit dem grundgerüst habe ich's gepeilt ...

Danke ...

hab's auch gleich ausprobiert ...

also fix mal das script angepasst (hab's pw genannt), gem. der wiki-seite eingebunden und nach /sbin kopiert ...

ergebnis: rcpw start startet policyd-weight und rcpw stop stoppt es ...

PERFEKT ...

also das script mit insserv pw integriert und noch mal im Runlevel-Editor nachgesehen ...

Stand drin, war aber nicht aktiviert ... also hab ich das noch getan und mir wurde angezeigt, das es in Runlevel 3 und 5 aufgerufen wird ...

REBOOT ...

UND : ENDE ...

Bootet nicht mehr ... bleibt im Runlevel 3 bei amavis hängen ...

Also start via FAILSAFE ... fast perfekt ...
startet, aber policyd-weight läuft nicht ...
kann mir rcpw start aber sofort aktiviert werden ...

also erstmal wieder mit insserv -r pw entsorgt und auch im runlevel-editor wieder deaktiviert ...

REBOOT ...

UND : ENDE ...
Hängt noch immer bei amavis ...

NUR failsafe läuft einwandfrei durch ...

An updates ist in den letzten Tagen nix gefahren wurden ...
Hab ich irgendwas übersehn ? Vergessen ?
 
OP
B

BiZNiZ

Member
... würde ich für den Thread-Titel mal meinen ...

Das script ist jetzt endlich eingebunden ...
Und es wird auch korrekt gestartet ...

Der Rest folgt in einem anderen thread, den ich JETZT öffnen werde ...
 
Oben