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 '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. Aug 21 '20 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.

  • Thanks, that solved my problem! Aug 21 '20 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 '20 at 2:46
  • If my answer "solved my problem", please Accept it, by clicking on the checkmark.
    – waltinator
    Aug 21 '20 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.