MacOS – Why can’t I use zsh

catalinamacosterminalzsh

So I upgraded to Catalina. Actually it's more like a fresh install, I only copied across the few files I wanted to keep.

The shell is now helpfully telling me:

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.

The information on that page helpfully shows GUI instructions which do not work. Specifically, it says "Control-click your user name in the list of users on the left, then choose Advanced Options.", but Control-click does nothing. So I reported that on the page.

When I use the suggested command instead:

hostname:~ username$ chsh -s /bin/zsh
Changing shell for username.
Password for username: 
chsh: Operation was denied because the current credentials do not have the appropriate privileges.  Operation was denied because the current credentials do not have the appropriate privileges.
chsh: no changes made

This is different to "Can't use zsh shell in Catalina" because I get an error message that they don't.

It's also different to "chsh: Operation was denied because the current credentials do not have the appropriate privileges" because it seems that in their case, they were using iTerm. I'm using the default Terminal.app.

I have tried it with sudo just for laughs, but of course it does this, which makes perfect sense:

hostname:~ username$ sudo chsh -s /bin/zsh
Password: 
Changing shell for root.

So what's the deal here? How am I supposed to do it?

Update:

Well this is interesting. Two password prompts, and then a different error message about the parameter being invalid.

hostname:~ username$ sudo chsh -s /bin/zsh username
Password: 
Changing shell for username.
Password for username: 
chsh: One of the parameters provided was invalid.  One of the parameters provided was invalid.
chsh: no changes made

This error is new to me, but apparently it's new to Google as well, so I'm officially a trailblazer!

Update: Happy New Year!

Back in the office again.

Through poking at commands we had determined that Centrify was in use. Centrify comes with an adupdate tool which is supposed to be used to change user information. With the help of IT, we tried it, though, and were still denied, but now it's more like an error.

$ adupdate modify user -s /bin/zsh username
An error occurred while trying to modify a user while in Auto Zone.
The options (-d, -g, -i, -u, -s, -l, -m, -o, -X, -z) cannot be used during this operation.
Please consult the manual pages for more information.

First impressions: What is Auto Zone and how do I get out of it?

Best Answer

@bmike has already offered the easiest solution, but I wanted to go back to the GUI instructions not working.

I found that Apple’s instructions here can be confusing. Control-Clicking will not do anything unless you first “unlock” the Users & Groups pane, as shown below in the blue box:

screenshot of Users and Groups system preference pane.

Once you have it unlocked, be sure you are clicking in the white-area on the left to access “Advanced Options…” as shown above with the blue arrow.

Then you should be able to access the options, including shell, from the Advanced pane.