This one time, at band camp, Björn Heide said: > Hi, > > as I am also beaten by #424772 I tried to find out what's going wrong: > > It is the way su determines which shell to run. > > su uses 1) shell specified with -s > 2) if -p is given: $SHELL > 3) shell from /etc/passwd > 4) /bin/sh > > what happens in the "initscript run by init" case is: > - $SHELL is not set > - /etc/passwd gives: clamav:x:109:114::/var/lib/clamav:/bin/false > and /bin/false is used. > > in the "initscript run by root" case $SHELL is set by login or some PAM > mechanism and then used by su (because -p). > > I modified /etc/init.d/clamav-[daemon|freshclam] a bit: > > -daemon: > - su "$User" -p -c ". /lib/lsb/init-functions && start_daemon -p > $THEPIDFILE $DAEMON" > + su "$User" -p -s /bin/sh -c ". /lib/lsb/init-functions && start_daemon > -p $THEPIDFILE $DAEMON" > > -freshclam: > - su clamav -p -c ". /lib/lsb/init-functions && start_daemon $DAEMON -d > --quiet" > + su clamav -p -s /bin/sh -c ". /lib/lsb/init-functions && start_daemon > $DAEMON -d --quiet" > > and clamav starts again at system boot.
Nicely debugged. Thanks, and patch committed to local svn. Expect an upload soon. -- ----------------------------------------------------------------- | ,''`. Stephen Gran | | : :' : [EMAIL PROTECTED] | | `. `' Debian user, admin, and developer | | `- http://www.debian.org | -----------------------------------------------------------------
signature.asc
Description: Digital signature