Is it possible to default to mksh or any other shell, while automatically falling to sh when that shell port isn't available on my system, without needing to go into single user mode? The
This usually isn't an issue, but it becomes a major issue on system upgrades. When that happens, mksh, zsh or other shell becomes unavailable, and it requires rebooting into single user mode to fix this. It would be more convenient to fall back to something that's in the base system to fix this, when it occurs.
sh lacks, and I have to keep configuration updates for csh when I'm using root. CSH has convenient functions, but its configuration is so different than sh. I ended up leaving in csh for root.
Come to think of it, the /rescue/ directory could come in handy, but it would use the same shell as my system. I'm used to using the rescue directory from single user mode, but it seems to work in multiuser mode too. Then, I would only need this shell fallback functionality for the root account, since to fix a system, I would use root. Currently, I'll have to maintain cshsrc configuration, which is extra upkeep from the traditional FreeBSD Bourne shells.
Or, I could go back to using CSH for all of my interactive user shells, as I've once done. Another option, is to use a shell which comes with root as the default, then manually switching to mksh or other shell, each time.
chsh
(chpass(1)) command only offers one shell setting here.This usually isn't an issue, but it becomes a major issue on system upgrades. When that happens, mksh, zsh or other shell becomes unavailable, and it requires rebooting into single user mode to fix this. It would be more convenient to fall back to something that's in the base system to fix this, when it occurs.
sh lacks, and I have to keep configuration updates for csh when I'm using root. CSH has convenient functions, but its configuration is so different than sh. I ended up leaving in csh for root.
Come to think of it, the /rescue/ directory could come in handy, but it would use the same shell as my system. I'm used to using the rescue directory from single user mode, but it seems to work in multiuser mode too. Then, I would only need this shell fallback functionality for the root account, since to fix a system, I would use root. Currently, I'll have to maintain cshsrc configuration, which is extra upkeep from the traditional FreeBSD Bourne shells.
Or, I could go back to using CSH for all of my interactive user shells, as I've once done. Another option, is to use a shell which comes with root as the default, then manually switching to mksh or other shell, each time.