[rc.local] starten van daemon & opties voor executie

Pagina: 1
Acties:

  • Mujo
  • Registratie: November 2000
  • Laatst online: 23-08-2021

Mujo

Nee hè?

Topicstarter
Ik zit met een probleempje in de rc.local van RedHat 8.
Ik wil een aantal daemons op laten starten tijdens boot.
Nou lukt dit voor de firewall en Apache (zie onder).
Echter, ik heb ook een mudje (soort van spelletje voor de
niet-kenners) draaien maar die wil op de een of andere
manier niet in de rc.local opstarten.

Handmatig start ik die mud op door naar de dir te gaan:
cd /mudje/bin
en daar te typen:
/startmudos & (& zodat het in background blijft draaien als
ik het terminalvenster afsluit).
Als ik deze regel in rc.local opneem:

/mudje/bin/startmudos
dan begint deze daemon te zeuren over een mudos.cfg
die hij niet kan vinden. Deze staat gewoon in dezelfde dir.
Eigenlijk doet startmudos niets anders dan de driver starten
met de bijvehorende config file, dus:

./driver mudos.cfg
werkt ook gewoon.

Zoals je hieronder ziet lukt het me niet om
iets te starten MET een *.cfg erbij.
Ook heb ik verschillende dingetjes geprobeert met
nohup, sighup, &, en > dev/null enzovoorts.
Eigenlijk weet ik niet goed wat alles betekent,
uitgezonder nohup en sighup die ik heb opgezocht op
het web.

Het opstarten van de daemon duurt vrij lang, circa 8 seconden.
Geen idee of dit uitmaakt.
Iemand een oplossing en een korte uitleg wat bereikt kan
worden met nohup, sighup, & en > dev/null ?


code:
1
2
3
4
5
6
7
8
9
10
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
/etc/rc.d/rc.firewall start eth0 eth1 
/usr/local/apache/bin/apachectl start 
nohup ./mudje/bin/driver mudos.cfg > dev/null &

Gelieve niet te roken in mijn kantoorkamer!
Ik ben meer verslaafd aan sex, dan jij aan roken, maar je ziet mij toch ook niet neuken op kantoor?


  • InNuedo
  • Registratie: Maart 2000
  • Laatst online: 22-04 15:02
ik denk dat je ipv.
code:
1
nohup ./mudje/bin/driver mudos.cfg > dev/null &

code:
1
2
cd /mudje/bin/
nohup ./driver mudos.cfg > dev/null &

moet doen.

Waarschijnlijk kijkt het proggie nl. in de directory waaruit het wordt opgestart voor de cfg file. En je start het nu op vanuit een andere dir dan de dir waar de executable in staat, dus kan hij de config file niet vinden.

[ Voor 44% gewijzigd door InNuedo op 18-03-2003 01:59 ]


  • Mujo
  • Registratie: November 2000
  • Laatst online: 23-08-2021

Mujo

Nee hè?

Topicstarter
*schopje*

Ondertussen alles afgeGoogled naar rc.local en voorbeelscripts maar kan nergens
een voorbeeldje vinden waarin een driver gestart wordt MET een *.cfg file.
Iemand een voorbeeld?

Ik heb dus geprobeert om het bovenstaande van InNuendo te voorkomen door
cd /mudje/bin te doen alvorens ik de driver opstart, dus dan start ik toch de driver
op vanuit dezelfde dir als waar dat extra configfiletje in staat? :?

Gelieve niet te roken in mijn kantoorkamer!
Ik ben meer verslaafd aan sex, dan jij aan roken, maar je ziet mij toch ook niet neuken op kantoor?


  • pinball
  • Registratie: Oktober 1999
  • Niet online

pinball

Electric Monk

1. weet je zeker dat je die mud als root wil starten? Als het niet perse hoeft zou ik een user 'mud' aanmaken en het daaronder runnen (su mud -c /mudje/bin/startmudos )
2. als je 'normaal' inlogt heb je waarschijnlijk een ander path als ten tijde van rc.local (testen? 'echo $PATH > /root/rclocalpath' in rc.local zetten en rebooten, en dat vergelijken met de uitvoer van 'echo $PATH' als je ingelogd bent)
3. nohup /mudje/bin/driver /mudje/bin/mudos.cfg > dev/null & misschien?
(dus volledig pad voor driver en .cfg, geen punten ervoor)

Whenever you find that you are on the side of the majority, it is time to reform.


  • Wilke
  • Registratie: December 2000
  • Laatst online: 22:03
Ja, en als het dan niet werkt, kan dat eigenlijk alleen komend doordat het als een bepaalde user zou moeten draaien (en dus niet als root). Er is verder geen enkel verschil tussen 'cd /een/dir; nohup ./mudos' intypen in een shell, of datzelfde in een (opstart-)script plaatsen.

Commandline parameters worden uiteraard ook in een script gewoon doorgegeven (dat is het hele idee van scripts), dus als je er 'blaat.cfg' achter tikt wordt dat zeker meegegeven.

Zonder meer informatie kunnen we je hier niet verder mee helpen...logt dat ding ook niets ofzo?