[linux-l] Benutzerwechsel im Shellscript

Steffen Dettmer steffen at dett.de
Mi Apr 11 20:47:43 CEST 2007


* Volker Grabsch wrote on Fri, Apr 06, 2007 at 13:52 +0200:
> > Wieso gehoert das Logfile 'root' wenn der Prozess als $USER laeuft?
> 
> Der Apache läuft als "www-data" (oder "wwwrun", je nach Distri), und
> trotzdem gehört sein Logfile root.
> 
> Aber das könnte auch einfach daran liegen, dass sie syslog nutzen. :-)

Beim Apache hatte ich mir das (vor Jahren) mal angeguckt. Es wird nicht
syslog benutzt, aber das File gehört (z.B.) wwwrun. Erstmal dachte ich,
klar, das File wird vor dem root-priv-drop geöffnet und der
Filedescriptor ist noch da - das funktioniert ja. Aber nicht immer, z.B.
nicht bei NFS :(

Beim Apache bleibt ein Kontrollprozess root.

Für meine Deamons (die nicht mit syslog auskommen) hab ich dann ein
chown <zieluser> <logfile> gemacht. Das geht, weil da noch root und
danach keine Probleme. Die Einzelheiten weiss ich nicht mehr aus'm Kopf,
aber das chown fand ich so komisch, das hab ich mir gemerkt. Die Idee
dazu stammt aus einem Daemon, wo ich nachschaute, warum es bei denen
geht und bei mir nicht :) War squid oder apache glaube ich.

> > Ein init script wird schon per Definition von niemand anderem als 'root'
> > ausgefuehrt, von daher ist das Problem keines.

Optimist ;)

oki,

Steffen

-- 
Dieses Schreiben wurde maschinell erstellt,
es trägt daher weder Unterschrift noch Siegel.





Mehr Informationen über die Mailingliste linux-l