Re: shells present on an LSB system
> Hi again,
>
> Another couple of question related to how we go about testing the FHS
> aspects of the LSB (i'm proposing to develop the tests using one
> of the TET shell APIs).
>
> 5. Does the LSB mandate presence of any particular shell interpreter
> as /bin/sh or is it unspecified as to whether this be bash, ksh etc?
>
> I think the answer according to the FHS is that it could be
> bash or pdksh. Can it be another shell interpreter besides these two?
>
> 6. Does the LSB mandate that /bin/sh is a POSIX.2 conforming shell?
>
> 7. Does the LSB mandate presence of a Korn shell interpreter? Is there
> a fixed pathname for this? I'd suggest that /bin/ksh be present but this
> does not appear to be specified.
>
I think the right thing is to specify something like this:
/bin/sh MUST be present; SHALL be POSIX.2 conforming
Shells specifically approved include: bash, ksh, ash?
/bin/csh IF present, MUST be compatible (bugs excepted) with
the BSD C-shell. tcsh is specifically allowed.
/bin/ksh IF present, MUST match the Korn Shell specification
pdksh and ksh93 are specifically allowed.
/bin/bash IF present, MUST be the Bourne Again Shell from the
Free Software Foundation or a fully compatible
program.
/bin/tcsh IF present, MUST be tcsh 6 or later from Cornell
University or a fully compatible program.
/bin/zsh IF present, MUST be zsh ..?.. or a fully compatible
program.
/bin/ash IF present, MUST be ash from BSD ...?... or a fully
compatible program.
Any more shell names that should be reserved?
As a general rule, shells should live in /bin or have symlinks from
/bin.
-hpa
Reply to: