Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: PATCH: new shells completion type



On Wed, Jun 22, 2005 at 03:07:21PM +0100, Stephane Chazelas wrote:
> On Wed, Jun 22, 2005 at 11:11:58PM +1000, Doug Kearns wrote:

<snip>
 
> One sometimes wants to set a command that is not in /etc/shells
> as the login shell on purpose (like /bin/false) to disable FTP
> access. That could be "nologin", a script, whatever...

OK, thanks. It looks like the useradd man page makes no mention of
/etc/shells. Is it mostly, or was it originally, just for chsh? Which
commands actually make use of /etc/shells?

<snip>
 
> As far as screen is concerned, that doesn't need to be a shell,
> one might prefer to use "mc" or "elinks" or "emacs" for instance.
 
Yes, I'll leave that as is...

> > +else
> > +  shells=( ${(M)commands:#*/((|[abckz]|tc|ba)sh|false)} )
> > +fi
> 
> What about dash (debian ash), rc, es...

The Debian system I have access to adds:

/usr/bin/es
/usr/bin/rc
/bin/sash
/usr/bin/esh
/bin/dash

and, possibly overkill, but sendmail/conf.c lists:

static char     *DefaultUserShells[] =
{
        "/bin/sh",              /* standard shell */
# ifdef MPE
        "/SYS/PUB/CI",
# else /* MPE */
        "/usr/bin/sh",
        "/bin/csh",             /* C shell */
        "/usr/bin/csh",
# endif /* MPE */
# ifdef __hpux
#  ifdef V4FS
        "/usr/bin/rsh",         /* restricted Bourne shell */
        "/usr/bin/ksh",         /* Korn shell */
        "/usr/bin/rksh",        /* restricted Korn shell */
        "/usr/bin/pam",
        "/usr/bin/keysh",       /* key shell (extended Korn shell) */
        "/usr/bin/posix/sh",
#  else /* V4FS */
        "/bin/rsh",             /* restricted Bourne shell */
        "/bin/ksh",             /* Korn shell */
        "/bin/rksh",            /* restricted Korn shell */
        "/bin/pam",
        "/usr/bin/keysh",       /* key shell (extended Korn shell) */
        "/bin/posix/sh",
        "/sbin/sh",
#  endif /* V4FS */
# endif /* __hpux */
# if defined(_AIX3) || defined(_AIX4)
        "/bin/ksh",             /* Korn shell */
        "/usr/bin/ksh",
        "/bin/tsh",             /* trusted shell */
        "/usr/bin/tsh",
        "/bin/bsh",             /* Bourne shell */
        "/usr/bin/bsh",
# endif /* defined(_AIX3) || defined(_AIX4) */
# if defined(__svr4__) || defined(__svr5__)
        "/bin/ksh",             /* Korn shell */
        "/usr/bin/ksh",
# endif /* defined(__svr4__) || defined(__svr5__) */
# ifdef sgi
        "/sbin/sh",             /* SGI's shells really live in /sbin */
        "/usr/bin/sh",
        "/sbin/bsh",            /* classic Bourne shell */
        "/bin/bsh",
        "/usr/bin/bsh",
        "/sbin/csh",            /* standard csh */
        "/bin/csh",
        "/usr/bin/csh",
        "/sbin/jsh",            /* classic Bourne shell w/ job control*/
        "/bin/jsh",
        "/usr/bin/jsh",
        "/bin/ksh",             /* Korn shell */
        "/sbin/ksh",
        "/usr/bin/ksh",
        "/sbin/tcsh",           /* Extended csh */
        "/bin/tcsh",
        "/usr/bin/tcsh",
# endif /* sgi */
        NULL
};


Any others?

Regards,
Doug



Messages sorted by: Reverse Date, Date, Thread, Author