Should "su -" set SHELL?
    David Elliott 
    dce at mips.COM
       
    Fri Oct 28 00:24:19 AEST 1988
    
    
  
In SVR3 (and SVR3.1), if you run su with the - option, it clears out
the environment and executes the shell (found in the password file) of
the new user, but, unlike login, and unlike you might expect, does not
set the environment variable SHELL to this value.
This means that programs that use the value of SHELL to execute
subshells use /bin/sh, no matter what shell is being used
interactively.
When I first heard of this problem, I changed su to set SHELL just as
login would.
The problem is that this broke sysadm.  The admin login shell (via
/usr/admin/.profile) looks to see if SHELL is set to /bin/rsh to
tell it if the process was invoked via su or login, and uses this
information to figure out how it should get any arguments.
So, now we're back to where we started; su - doesn't work like
login, and could be considered to be broken.
Anyone have any opinion on this?
-- 
David Elliott		dce at mips.com  or  {ames,prls,pyramid,decwrl}!mips!dce
    
    
More information about the Comp.bugs.sys5
mailing list