What's the point of the shell choice in single user mode?

John Murphy freebsd001 at freeode.co.uk
Sat Dec 1 06:26:33 PST 2007


On Sat, 1 Dec 2007 13:46:12 +0000
Daniel Bye <freebsd-questions at slightlystrange.org> wrote:

> On Sat, Dec 01, 2007 at 02:15:26PM +0100, Erik Trulsson wrote:
> > On Sat, Dec 01, 2007 at 04:44:27AM +0000, John Murphy wrote:
> > > I've just successfully done the world and kernel upgrade from 7 beta2
> > > to beta3. I've always had a mergemaster phobia, but it didn't seem too
> > > bad this time. I thought I'd broken it after choosing /bin/tcsh as my
> > > shell in single user mode. It grumbled about termcap (I think) and
> > > then gave me a "simple shell" with a % prompt.
> > > 
> > > fsck and mount were unknown commands and even though I could change
> > > directory to /usr or /home they were (apparently) empty! Scary!
> > > I now realise it was because they were not mounted of course.
> > > 
> > > I'll know to always accept the suggested /bin/sh in future, but I was
> > > wondering if the only reason a choice of a different shell is offered
> > > is to scare the unwary.
> > 
> > On possible scenario is that /bin/sh has - somehow - been corrupted, deleted
> > or otherwise made unusable.  In that situation it is very nice to be able to
> > choose some other shell so you can at least try to fix the problem.
> 
> And some individuals even seem to prefer [t]csh over sh! I know, what's
> that all about? ;-P (runs to a safe distance to watch the fireworks...)
> 
> John - you would have had the same experience had you selected sh -
> only the root file system is mounted if you come up into single user,
> which is why the installworld instructions tell you to mount all your
> other local file systems. As for fsck and mount being unknown, I suspect
> that's due to a very conservative initial PATH under tcsh, but as I
> don't use it, I don't know for sure. And the termcap grumble is 
> because /etc/termcap is actually a symlink to /usr/share/misc/termcap,
> which on your system is evidently not on your / fs.

Ah, that explains it. /usr is indeed elsewhere ad4s2f in fact.
[t]csh always gets my vote. (The government still seems to win though) :)

-- 
Thanks, John.


More information about the freebsd-questions mailing list