up vote 2 down vote favorite
share [g+] share [fb]

I tried to change my user's shell, but used "sudo chsh", and changed the root shell to "bash" instead of "/bin/bash". Now when I try to change it I get "chsh: PAM authentication failed" and it seems like other things aren't working, either.

~$ sudo su
Cannot execute bash: No such file or directory

This happens with recovery mode, too. What do I do to change it to something usable?

link|improve this question

53% accept rate
feedback

2 Answers

up vote 8 down vote accepted

If you are able to login using your regular user, just change the root users shell directly:

sudo gedit /etc/passwd

Find the line for you root user, usually the first one, and change the last part from

...:bash

to

...:/bin/bash

And you should be good to go.

(NB: Replace gedit with whatever editor you fancy.)

link|improve this answer
1  
That worked. Thanks! – endolith Nov 21 '09 at 17:02
feedback

Use the Ubuntu install disk to boot the live session.

Mount the root ('/') partition on the harddisk (make sure it's writable).

edit '[HD mount point]/etc/passwd' (eg /media/sda1/etc/passwd),

root should be the first line, just correct the login shell which will be the last entry on the line.

Unmount harddisk. Remove CD. Reboot

link|improve this answer
This is "if you can't log in as your regular user" – Broam May 25 '10 at 13:38
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.