Basically I want to change from bash to zsh so I ran the command

chsh -s /bin/zsh

It then asks me for my password to change the shell but when I enter it it says

chsh: no changes made

How do I proceed from here?

  • 2
    That means you're already using zsh as your default shell. Did you logout and login again? Why is this tagged powershell? Are you on Windows? – muru Aug 20 at 5:01
  • I still have bash as the default shell since it pops the message to update my account to use zsh, the tag was my bad sorry. – Ingo Banghard Aug 21 at 2:19

Since changing your shell requires updating /etc/passwd, it must be done by root. Use

sudo chsh -s /bin/zsh $USER

Also make sure /bin/zsh is listed in /etc/shells.

Just in case, login (with the old, working shell) in a text terminal (Ctrl-Alt-F2) while you chsh and logout/login via the GUI, in case you need to fix something.

| improve this answer | |
  • Thanks, that solved my problem! – Ingo Banghard Aug 21 at 2:25
  • @Ingo what did? Waltinator: the chsh command should be setuid root, and allows you to change your own shell. Root access is only needed to change somebody else's shell. – muru Aug 21 at 2:46
  • If my answer "solved my problem", please Accept it, by clicking on the checkmark. – waltinator Aug 21 at 2:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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