root /etc/csh

Polytropon freebsd at
Mon Nov 10 21:38:58 PST 2008

On Mon, 10 Nov 2008 16:13:54 -0800, Jim Pazarena <fquest at> wrote:
> Glen Barber wrote:
> > On Mon, Nov 10, 2008 at 4:46 PM, Pieter Donche <Pieter.Donche at> wrote:
> >> FreeBSD 7.0 comes with the user root with start up shell /bin/csh
> >> As normal user I use bash (/usr/local/bin/bash installed)
> >> I would prefer to have bash also when working as root (su).
> > 
> > It is never recommended to change root's default shell to something
> > outside of the base install.
> > 
> > The main reason is, for example, if you update your non-base shell
> > (via ports), and it breaks, you can no longer log in as root.  If you
> > decide you still want to have a non-base shell for your root user,
> > keep root's shell default, and enable your toor user.
> isn't the "main reason" because other shells may reside on a filesystem
> which isn't necessarily mounted in maintenance/single user mode? Or, libraries
> for the same?

At least, it's a valid reason. When in trouble, the system just
mounts / as ro where /bin/sh (the system's standard scripting
shell) and /bin/csh (its standard dialog shell) are available.
Bash may be on another partition that's not mounted yet, so no
maintenance access would be possible.

To change the shell, it's not a good idea to fiddle around with
/etc/passwd. The use of the chsh (change shell) command is advised.

In my opinion, you could add "bash" as the last line of your ~/.login
file which will be executed by csh, so bash starts up right after
login, but NB this may cause problems when using sudo.

>From Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...

More information about the freebsd-questions mailing list