Frage zum starten von programmen ( SlimServer & Courier Imap )

SpecialAgent

BSD Trainee
Hallo,

um ein, aus den ports installiertes, programm zu starten verwende ich meiste die rc files in
Code:
/usr/local/etc/rc.d
und dann mit dem parameter start. Das klappt auch soweit bis auf zwei ports die ich installiert habe.

Der erste war der courier-imap. Wenn ich den mit
Code:
/usr/local/etc/rc.d courier-imap-imapd.sh start
gestartet habe, gibt er keine Meldung aus ( keine auf der Konsole und keine in den log dateien )... gar keine rückmeldung. Eine Überprüfung fand heraus das der server nicht lief ( mit dem ps kommando ).
Unter
Code:
/var/run
war auch kein pid file zu sehen. Ich hab nen tutorial im netz gefunden, musste was rumhacken und er läuft jetzt... aber irgendwie bin ich mir nicht sicher ob das alles seine richtigkeit hat. Übrigens, die anderen courier rc files funktionieren auch nicht.

Nunja.... jetzt habe ich mir gerade den neusten SlimServer installiert. Und er macht genau das gleiche.

Code:
/usr/local/etc/rc.d/slimserver start
gibt keine meldung, kein prozess, kein pid file, kein log eintrag. Nix... stop, status und restart genauso. Das Programm wurde einwandfrei kompiliert und installiert. Bekam auch die meldung das das rc script installiert worden ist.

Ich frage mich jetzt was kaputt ist, FreeBSD 6.1? Die Ports? Ich? Die Welt?

Würde mich sehr über eine kleine Diskussion und Hilfestellung freuen.

Danke.
 
Du hast:
slimserver_enable="YES"
courier_imap_imapd_*="YES"

in deiner rc.conf?
 
Hey,

danke für die schnelle Antwort. Nein habe ich noch nicht, da ich es erst ausprobieren möchte und meinen server im moment nicht neustarten will.

Gruss.
 
Hah, danke!

Und ich hab immer geglaubt das sei nur fürs starten des BS gedacht!

Danke das du mir das Brett vorm Kopf was abgeschlagen hast!

K, Thread geschlossen! ;-)
 
Soo... Thread wieder geöffnet! ;-)

Also irgendwie find ich diese rc.d Lösung genial, und auf der anderen Seite sehr verwirrend und nicht konsistent:

Also ich hab nen anderen Server installiert

Code:
/usr/ports/audio/mt-daapd/

Dieser hat auch ein rc startscript in
Code:
/usr/local/etc/rc.d/mt-daapd.sh
hinzugefügt, dass wie folgt aussieht:

Code:
#!/bin/sh
# $FreeBSD: ports/audio/mt-daapd/files/mt-daapd.sh,v 1.1 2004/07/19 09:18:51 edwin Exp $

MT_DAAPD=/usr/local/sbin/mt-daapd
MT_DAAPD_CONF=/usr/local/etc/mt-daapd.conf


case "$1" in
        start)
                if [ -r "${MT_DAAPD_CONF}" ]; then
                        ${MT_DAAPD} -c ${MT_DAAPD_CONF} 
                        echo -n ' mt-daapd'
                fi
                ;;
        stop)
                killall -TERM mt-daapd
                ;;
        *)
                echo ""
                echo "Usage: `basename $0` { start | stop }"
                echo ""
                exit 64
                ;;
esac

in /etc/rc.conf hab ich dann

Code:
mtdaapd_enable="YES"

eingefügt.

Nun möchte ich den service gerne mit

Code:
/usr/local/etc/rc.d/mt-daapd.sh start

starten.

Aber nix. Keine Meldung. Keine Rückmeldung. Kein Log Eintrag. Nix.

Ich könnts natürlich per Hand starten, aber das is ja nunmal nich der Sinn der sache.

Ich verstehts nich!

Danke für eure Hilfe erstmal!
 
Das Skript ist einfach nicht rc.d konform. Vom Skript her würde ich sagen, das die Datei /usr/local/etc/mt-daapd.conf nicht existiert, wenn du keine Meldung bekommst.
 
Ja, das Skript ist noch aus dem alten RC System so wie es aussieht.

Anmerkung zum oberen: Zum testen empfiehlt sich übrigens (wenn das Skript das neue RC System verwendet) "/usr/local/etc/rc.d/<foobar> onestart". Das übergeht den <foobar>_enable="YES" Test, arbeitet aber alle anderen Tests normal ab. Und durch das fehelnde enbale in der rc.conf wird man nicht in einer Zeitschleife gefangen, sollte der Port die Kiste abschiessen :)
 
Zurück
Oben