Я установил ZSH на мою виртуальную машину, где я скомпилировал ее из исходного кода. Расположение ZSH - это /usr/local/bin/zsh
когда я запускаю chsh -s /usr/local/bin/zsh
его вывод chsh: /usr/local/bin/zsh is an invalid shell
. Я тоже попробовал это с sudo. Как я могу изменить это?
36
chsh
», а не «chsh
не работает для меня».Ответы:
Добавьте zsh к
/etc/shells
:Теперь вы можете использовать chsh для установки zsh в качестве оболочки:
Смотрите эту документацию: Изменение вашей оболочки входа
источник
Вам нужно добавить
/usr/local/bin/zsh
в/etc/shells
.источник
Во-первых, проверьте,
zsh
указан ли в качестве допустимой оболочкиЕсли
zsh
его нет в списке, установите его. Например, если вы используетеapt
Сделайте шаг 1 снова и увидите путь
zsh
. В моем случае оба/usr/bin/zsh
и/usr/zsh
указаны. Как отметил в комментарии @ Stéphane Chazelas, если вы хотите скомпилировать и установить оболочку с нуля, обязательно добавьте путь в/etc/shells
.Изменить оболочку, используя
С man-страницы :
Выйдите из системы и войдите снова.
источник
/etc/shells
. Суть в том, что если вы компилируете и устанавливаете оболочку вручную, вам также необходимо добавить путь к/etc/shells
себе вручную.