Re: 4.11-RC1: Setting bash as user default shell
John Baldwin <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.quality-assurance |
|---|---|
| Message-ID | <[email protected]> |
On Thursday 30 December 2004 02:11 pm, Randy Pratt wrote: > On Thu, 30 Dec 2004 17:53:40 +0200 > > Peter Pentchev <[email protected]> wrote: > > On Thu, Dec 30, 2004 at 10:48:48AM -0500, Randy Pratt wrote: > > > I did a fresh install of 4.11-RC1 on an older box: > > > > > > FreeBSD dell.weeble.com 4.11-RC1 FreeBSD 4.11-RC1 #0: Fri Dec 17 > > > 16:47:15 GMT 2004 > > > [email protected]:/usr/obj/usr/src/sys/GENERIC i386 > > > > > > I was not able to set bash as the user's default shell during > > > installation even though bash had been installed. The message said > > > that it was not a valid user shell. I decided to leave it as > > > /bin/sh to complete the installation. I tried adding a new user > > > after installation and setting the shell to > > > /usr/local/bin/bash and a pop-up said: > > > > Is bash (or rather, /usr/local/bin/bash) listed in your /etc/shells file? > > If not, have you by any chance had the root filesystem mounted read-only > > during the bash port/package installation? > > The root filesystem is read/write as freshly installed. > > However, you are correct in that /etc/shells contains > "/usr/local/bin/bash2" on 4.11-RC1 and it is "/usr/local/bin/bash" > on 4.11-STABLE. Perhaps both should be added to /etc/shells or > revert back to the old behavior. The way it is violates POLA in > my view. > > > Just adding /usr/local/bin/bash to /etc/shells should be enough to > > allow you to use either chsh or sysinstall to set it as a user/root > > shell. > > Yes, that will work or specifying /usr/local/bin/bash2 in chsh will also > work. However, during installation, modifying /etc/shells is not > an option. > > The problem is that none of this is documented and is going to > cause new users grief and confuse present users. > > Thanks for your quick response and identification of the problem. > I'll file a PR so it doesn't get lost in the shuffle. > > Thanks! > > Randy This is a problem with the bash port as the bash port is what adds lines to /etc/shells. Actually, you probably chose the bash2 port and that is installed as /usr/local/bin/bash2. If you install the 'bash' port which contains bash 3.0, then that will install /usr/local/bin/bash and add it to your /etc/shells file. Looking at the scripts used to build the CDs, it seems that the bash2 port is included on the first CD but not the 'bash' port. Perhaps trying e-mailing re@ and asking them to use the shells/bash port rather than shells/bash2? -- John Baldwin <[email protected]> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-qa To unsubscribe, send any mail to "[email protected]"