119

Я хочу изменить мою оболочку с оболочки bash по умолчанию на zsh в моих экземплярах Amazon EC2. Как мне это сделать? Спасибо!

4 ответа4

157

Попробуйте использовать команду chsh .

например

chsh -s /bin/zsh

Вы можете подтвердить местоположение zsh, запустив whereis zsh , или просто запустить

chsh -s $(which zsh)

Если вы хотите изменить оболочку для учетной записи пользователя, отличной от той, в которую вы вошли, вам нужно будет запустить ее как root, поэтому, чтобы изменить оболочку john, выполните:

sudo chsh -s $(which zsh) john

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

19

Откройте /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

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

4

В Ubuntu, внутри терминала GNOME, внесение изменений через chsh не даст ожидаемого эффекта ...

Чтобы преодолеть эту проблему, сделайте это:

  • Щелкните правой кнопкой мыши в терминале
  • Профили -> Настройки профиля
  • На вкладке "Заголовок и команда" установите флажок "Выполнить пользовательскую команду вместо моей оболочки" и укажите путь к исполняемому файлу zsh.
  • Перезапустите Терминал.

Мир.

PS Не имейте 10 репутации, чтобы отправлять изображения, так что все текстовые инструкции. :)

3

Я пришел сюда, чтобы просто добавить дополнительную информацию. Если у вас возникли проблемы при установке zsh в Amazon Linux AMI от Amazon, например, при запуске:

sudo chsh $(which zsh) : // chsh command not found

Затем вы должны установить util-linux-user:

sudo yum install util-linux-user

(по умолчанию в Amazon Linux AMI есть только lchsh, но я не могу понять, как он работает).

Затем выполните следующую команду, она должна работать:

sudo chsh -s $(which zsh) $(whoami)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .