no shell error

i cannot login as a user then it shows a error. su: no shell

i created a new user also. same error . cannot login user
i changed shell also

please help me urgently

pls paste /etc/passwd

no need to post /etc/passwd if you're not comfortable.
however, what is the commandline you exactly used to create the users. type out the syntax

  • the useradd command has a flag "-s" that allows you to explicitly define what will be the new user's shell ;
    (eg.)
# useradd -s /bin/ksh newguy
  • make sure the path chosen (eg. /bin/sh) leads to the real thing, and give this a try ...

good luck, and success !

I think your shell is not have in /etc/shell

The error states that the shell you defined via the user account isnt there. So, looking at the path you've set it too, e.g. the last : on the below example.

sms-svc:x:6:10:SMS Service User:/export/home/sms-svc:/bin/csh

ls /bin/csh
-r-xr-xr-x 2 root bin 159240 Jan 3 2006 /bin/csh

If the path of the shell you defined is there, then check the /etc/shells is present. Mine wasnt, so I created a file called shells and filled it with shell goodness.

SBK

Not always, but some times this will be checked against if you're hit with some ftp issues