sonnenblen.de - Das unabhängige Sun User Forum
Betriebssysteme => Solaris => Thema gestartet von: claus am 09. September 2004, 23:14:58
-
Hallo,
womit ich mich den halben Nachmittag auseinandergesetzt habe:
Wir verwenden hier rsync (gepatched ;)) für file transfers. Um den daemon nicht selber starten zu müssen, habe ich da ein wenig in meinem schlauen "Solaris 8 Administrators Guide" nachgelesen und herausgefunden, dass man einfach nur Einträge in zwei Files machen muss, damit die daemons "unter" dem inetd laufen.
die Einträge sind:
<< /etc/services >>
rsync xxxx/tcp #RSYNC daemon
publishd yyyy/tcp #publish daemon
<< /etc/inet/inetd.conf >>
rsync stream tcp wait publish /usr/bin/rsync rsyncd --daemon --port xxxx .
publishd stream tcp nowait publish /opt/tsod/publish/publishd.pl publishd.pl
nach dem "pkill -HUP inetd" gab es keine Fehlermeldung in /var/adm/messages, allerdings sehe ich die beiden daemons auch nicht als Prozesse, aber
netstat -a | egrep 'publishd|rsync'
zeigt sie mir doch ... ist das normal bei inetd, dass die daemons, die darüber gestartet werden, "unsichtbar" laufen?
Einen angenehmen Abend wünsche ich,
Claus
-
die daemons werden erst gestartet, wenn inetd feststellt, daß jemand am entsprechenden Port "klopft".
HTH
chaos
-
die daemons werden erst gestartet, wenn inetd feststellt, daß jemand am entsprechenden Port "klopft".
HTH
chaos
Ahsooo ... dazu noch zwei Fragen:
1. Wo kann ich das nachlesen (brauche u.U. offizielle Quelle)?
2. Kann ich die daemons auch permanent laufen lassen?
Claus
-
Ahsooo ... dazu noch zwei Fragen:
1. Wo kann ich das nachlesen (brauche u.U. offizielle Quelle)?
In der Manpage ( http://www.freebsd.org/cgi/man.cgi?query=inetd&apropos=0&sektion=0&manpath=SunOS+5.9&format=html )
:
inetd listens for service requests on the TCP or UDP ports associated
with each of the services listed in the configuration file. When a
request arrives, inetd executes the server program associated with the
service.
2. Kann ich die daemons auch permanent laufen lassen?
Natürlich. Man schreibe für jeden daemon ein eigenes init-Skript und link es entsprechend in den sysv-init-Verzeichnissen.
Nähere Infos bei irgendjemanden, der sys-v-init mehr mag als ich
ciao
chaos, lang lebe BSD-like-init
-
Hallo
Ich versthe dich nicht ganz, du willst inetd benutzen damit du die daemons nicht selber starten brauchst und fragst dann wie man die daemons einzeln startet ???
Was genau willst du denn nun machen?
Mfg. Erisch
-
Hallo
Ich versthe dich nicht ganz, du willst inetd benutzen damit du die daemons nicht selber starten brauchst und fragst dann wie man die daemons einzeln startet ???
Was genau willst du denn nun machen?
Mfg. Erisch
Nicht ganz ... ich habe initd benutzt, weil es eben in dem schlauen Buch so erklärt war, den Absatz (siehe oben andere Antwort) habe ich komplett überlesen.
Allerdings hätte ich die beiden daemons schon lieber einzeln gestartet, denn rsync scheint Probleme damit zu haben, wenn es nicht separat im daemon-mode gestartet wird (oder der Grund für das nicht-funktionieren liegt woanders und es ginge doch?)
Die Entscheidung liegt nicht bei mir, ich suchte zuerst nach einer funktionierenden und schnellen Lösung, aber vielleicht funktioniert die gar nicht so richtig und vielleicht darf ich das gar nicht so einrichten.
Verwirrend? Ja, aber das liegt nicht unbedingt an mir :>
Claus
-
das Problem war jetzt relativ einfach zu lösen:
man sollte halt nicht für inetd spezifizieren, dass es beim Eintreffen von Daten auf einem Port rsync wieder mit diesem Port aufrufen sollte, da sich das dann ja blockiert.
Des Rätsels Lösung war einfach die Zeile in /etc/inet/inetd.conf zu ändern (die Port-Spezifizierung für rsync zu entfernen).
Jetzt funktioniert es und für die start scripts habe ich auch bei docs.sun.com was interessantes gefunden, zwar kein Beispiel script dabei, aber immerhin.
Falls es jemanden interessiert:
http://docs.sun.com/db/doc/805-7228/6j6q7uepd?q=Run+Control+Scripts&a=view
Danke für die Hinweise,
Claus