Невозможно сделать ZSH оболочкой по умолчанию

Это также может помочь вам.

http://www.linux-laptop.net/

84
задан 5 May 2012 в 07:42

5 ответов

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

chsh -s $(which zsh)

без sudo.

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

132
ответ дан 25 May 2018 в 11:52
  • 1
    У меня такая же проблема, и ответ ее не решает – Aswin Murugesh 21 July 2013 в 21:11
  • 2
    @AswinMurugesh Проверьте мой ответ – Shailesh Kalamkar 11 August 2015 в 08:30
  • 3
    вы также можете запустить sudo chsh -s / bin / zsh userName – Dr Gorb 30 September 2015 в 13:49
  • 4
    Примечание. Мне пришлось перезагрузить систему, прежде чем это вступит в силу. – KevinO 12 October 2015 в 03:38
  • 5
    Нет, это не сработало. – Haha TTpro 25 February 2018 в 08:33

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

Открыть / 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

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

30
ответ дан 25 May 2018 в 11:52
  • 1
    Вы должны быть очень осторожны с этим подходом - обычно это не самая лучшая идея - сбрасывать с помощью /etc/passwd – Thomas Ward♦ 7 January 2016 в 17:13
  • 2
    Несмотря на то, что я не использовал этот метод, он помог мне проверить эффект chsh -s `which zsh` – jchook 30 September 2017 в 03:43

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

3
ответ дан 25 May 2018 в 11:52
  • 1
    На моем Ubuntu VPS это / bin / zsh – Wilhelm Erasmus 9 December 2015 в 16:39
  • 2
    На моем Ubuntu я вижу это как в /bin/zsh, так и /usr/bin/zsh – blue_chip 10 April 2017 в 17:34
  • 3
    На шахте (14.04, с zsh от основного репо) есть два zsh, и они являются двухслойными символическими ссылками: / usr / bin / zsh - & gt; / etc / alternatives / zsh-usrbin - & gt; / bin / zsh5 и / bin / zsh - & gt; / etc / alternatives / zsh - & gt; / Бен / zsh5 – wjandrea 21 October 2017 в 03:36

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

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

sudo nano ~/.bashrc

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

exec zsh

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

1
ответ дан 25 May 2018 в 11:52
  • 1
    и он также нарушит все ваши неинтерактивные задания (например, scp). – Jakuje 11 March 2016 в 20:45

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

chsh: PAM: Authentication failure

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

webmaster:x:1001:1001:webmaster,,,:/var/www/webmaster:/usr/bin/zsh
0
ответ дан 25 May 2018 в 11:52
  • 1
    Я считаю, что он должен запросить пароль. Я получил ту же ошибку при моей предыдущей установке монетного двора. Текущий работал нормально, хотя – Wilhelm Erasmus 9 December 2015 в 16:40
  • 2
    У кого-то еще была та же проблема, и оказалось, что они выполнили chsh -s zsh, что сделало их запись passwd неправильной. – wjandrea 21 October 2017 в 03:46

Другие вопросы по тегам:

Похожие вопросы: