[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

su and init scripts



When using su to change the user you do not get that user's login shell,
but the one listed in the environment variable SHELL. I have no idea why
this is done, but I don't think it's very intuitive. Anyway, there's a
problem with this behaviour when a shell does not behave as sh would.
For instance I have set up my system to use sash as root's shell (and if
you ever managed to destroy ld.so or libc you know why) and sash does
not know the '-c' option.  So what happens is that /etc/init./postgresql
stops with a shell prompt during boot resp. shutdown procedure because
it tries to execute a command with 'su postgres -c ...'.

What shall we do? First of all I'd like to have the time to patch sash
to be able to handle at least '-c', but I'm afraid I'm lacking time
right now. If the su behaviour is correct I think every package should
make sure SHELL is set to an acceptable value before calling su.

Comments anyone?

Michael

--
Dr. Michael Meskes, Projekt-Manager    | topystem Systemhaus GmbH
meskes@topsystem.de                    | Europark A2, Adenauerstr. 20
meskes@debian.org                      | 52146 Wuerselen
Go SF49ers! Use Debian GNU/Linux!      | Tel: (+49) 2405/4670-44


--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org . 
Trouble?  e-mail to templin@bucknell.edu .


Reply to: