Как сделать ZSH оболочкой по умолчанию?

Я пытаюсь установить ZSH в качестве моей оболочки по умолчанию, однако она продолжает возвращаться к bash.

Я пробовал этот код:

sudo chsh -s $(which zsh)

Я тоже пробовал:

sudo chsh -s /bin/zsh 

Также попробовал эти команды без sudo. Есть какие-нибудь идеи о том, что еще мне нужно сделать. При запуске ZSH из bash он загружается и работает нормально, но я бы хотел установить его в качестве оболочки по умолчанию.

Просто используя chsh:

chsh -s $(which zsh)

без sudo должно сработать. Если вы используете sudo это изменит оболочку не для вашего рабочего пользователя, а для корень

Окончательно, выйдите из своего компьютера и снова войдите в систему.

Диагностика:

Я нашел это на суперпользователь форум

Открыть /etc/passwd:

sudo vi /etc/passwd

Найдите строку с вашим именем пользователя:

username:x:1634231:100:Your Name:/home/username:/bin/bash

и замените bash на zsh:

username:x:1634231:100:Your Name:/home/username:/bin/zsh

Выйдите из системы и снова войдите в систему, чтобы изменения вступили в силу.

Вы также можете сделать это:

откройте свой файл bashrc в вашем любимом редакторе

sudo nano ~/.bashrc

затем добавьте строку под верхней частью файла

exec zsh

Он будет выполнять команду каждый раз, когда вы загружаете терминал и запускаете свою оболочку zsh.

У меня была проблема с разрешениями на изменение оболочки под текущим пользователем, но next мне помогает (вы должны установить правильную папку 'zsh' для вашего компьютера):

sudo chsh -s /bin/zsh <myUserName>

Если zsh не является /bin /zsh, то chsh не будет работать. В Ubuntu это / usr / bin /zsh. так что делайте chsh -s /usr/bin/zsh или chsh -s `which zsh` должно сработать. Также необходимо повторно войти в сеанс рабочего стола.

Помимо chsh (или редактирования /etc/passwd, который делает то же самое), вам может потребоваться отредактировать настройки в вашем эмуляторе терминала (Gnome terminal, Konsole, xfce4-terminal и т.д.). В вашем профиле, вероятно, будет оболочка входа в систему, которая будет запущена, когда вы откроете новую вкладку вместо оболочки в /etc/passwd.
В Конкероре это Settings | Edit Current Profile | Command.

Странно, но "принятый" ответ не сработал для меня, когда я получил

chsh: PAM: Authentication failure

Чтобы решить эту проблему, отредактируйте свой файл /etc/passwd и убедитесь, что он указывает на местоположение zsh. (Вы можете найти это, выполнив команду "which zsh") В моем случае мой пользователь под названием "веб-мастер" выглядел так:

webmaster:x:1001:1001:webmaster,,,:/var/www/webmaster:/usr/bin/zsh

быстрый ответ, который сработал для меня: выход из системы, а затем повторный вход в сеанс рабочего стола исправили это для меня.