Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 5 Mar 2009 04:15:05 +0000
From:      Frank Shute <frank@shute.org.uk>
To:        freebsd-questions@freebsd.org
Subject:   Re: /bin/sh does not read profile
Message-ID:  <20090305041505.GA35138@melon.esperance-linux.co.uk>
In-Reply-To: <20090304150803.GA30617@marge.bs.l>
References:  <20090304150803.GA30617@marge.bs.l>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Mar 04, 2009 at 04:08:03PM +0100, Bertram Scharpf wrote:
>
> Hi,
> 
> from "man sh":
> 
>    Invocation
>      [...]  When first starting, the shell inspects
>      argument 0, and if it begins with a dash (`-'), the shell is also consid-
>      ered a login shell.  This is normally done automatically by the system
>      when the user first logs in.  A login shell first reads commands from the
>      files /etc/profile and then .profile in a user's home directory, if they
>      exist.  [...]
> 
> I use Slim (X login manager) which calls
> 
>   exec /bin/sh - ~/.xinitrc

Usually ~/.xinitrc is parsed by the X server when it starts (startx is
just a Bourne shell script) and you exec the last command (the window
manager) in your ~/.xinitrc

I've never before seen the syntax you've used and I think it comes
from a misunderstanding of the manpage for sh and/or it's a bashism or
a typo.

E.g:

/bin/sh -c somecommand     (login shell - arg 0 starts with a dash)

/bin/sh somecommand	   (not a login shell)

> 
> I first wondered why none of my commands in "/etc/profile" and
> "~/.profile" got executed.  Finally, I modified
> "/usr/src/bin/sh/main.c" to trace what files are read, recompiled
> the "sh" command and: the only file that is executed is "~/.shrc".
> 
> I just cannot believe that FreeBSD has such a severe bug. What is
> going wrong here?
> 
> Thanks in advance,
> 
> Bertram
> 

Regards,

-- 

 Frank 


 Contact info: http://www.shute.org.uk/misc/contact.html 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090305041505.GA35138>