Subject: Re: root shell?
To: None <jon@colossus.cs.wits.ac.za, port-mac68k@NetBSD.ORG>
From: Ben Cottrell <benco@pendor.mckusick.com>
List: port-mac68k
Date: 08/01/1997 00:17:09
> does root shell have to be csh? i hate it. i'd far prefer bash or tcsh, but
> when i tried using tcsh, cron and other programs that act as root made a
> big fuss and stopped working properly :-(
The answer to your question as asked is that you need to add all shells
you're going to use to /etc/shells, and then they'll be recognized as
valid by the various utilities.
However, there are a few reasons why csh is a *better* shell for root to
have than tcsh, depending on your aesthetic unix-sense :-) Let's say your
system is completely trashed--you have a replacement disk, but you need to
restore your backup tapes onto it. So you're running off your backup root
partition and you don't have a /usr, /usr/local/, or swap.
* csh has a lower memory profile than tcsh, and works better with
no swap.
* csh doesn't need to access the termcap, so it works better if
/usr isn't mounted.
* csh is statically linked, and tcsh probably isn't.
* if a user's shell doesn't exist, getty doesn't default to /bin/sh,
it just won't let the user log in. So if root's shell is tcsh
(in /usr/local/bin), root won't be able to log in.
The same arguments go for sh vs. bash.
> is bash fully comaptible with sh or csh? would *that* be an acceptable
> replacement? does anyone have bash compiled for netbsd? :-)
bash is a superset of sh, just like tcsh is a superset of csh. And yeah,
bash is easy to compile under NetBSD :-)
Hope this clears things up!
~Ben