Как установить оболочку в Mac OS X?

Я знаю, что могу установить «Shells open with» в настройках терминала, но мне любопытно, есть ли какой-либо общесистемный способ настройки (аналогично обновлению /etc /passwd в некоторых Unix).

14 голосов | спросил nall 29 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 29 Sep 2009 04:06:59 +0400 2009, 04:06:59

4 ответа


20

Используйте утилиту chsh, например:

chsh -s bash

Apple изменила код chsh на Mac OS X по сравнению с chsh, который вы увидите в Linux, например. Вы можете прочитать их на странице chsh Mac OS X Man .

ответил John T 29 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 29 Sep 2009 04:09:08 +0400 2009, 04:09:08
15

Обратите внимание, что вам разрешено изменять только оболочку, указанную в /etc/shells. Это нормально, но это означает, что если вы хотите установить Bash 4 (из Homebrew, MacPorts или компилировать свой собственный), вам нужно добавить строку в /etc/shells. (Я столкнулся с этим несколько недель назад и понял, что это может помочь другим узнать ...)

Изменить : Тим Смит указывает, что вы можете обойти ---- +: = 2 =: + ----, если вы запустите /etc/shells как root через ---- +: = 4 = + ----. Например. chsh будет работать, даже если sudo не указан в sudo chsh -s /usr/local/bin/my_shell $USER. Я предпочитаю редактировать my_shell, но в конце это одно использование /etc/shells в любом случае, поскольку вы не можете редактировать /etc/shells как обычный пользователь. Так что, возможно, шесть из одного, полдюжины других.

ответил Telemachus 29 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 29 Sep 2009 04:17:17 +0400 2009, 04:17:17
10

Для этого используйте графический интерфейс Mac OS X:

  1. Откройте «Системные настройки».
  2. Откройте «Учетные записи» /«Пользователи и amp; Групп "и откройте панель предпочтений, если это применимо.
  3. На пользователя, который вы хотите изменить оболочку, control + щелкните или щелкните правой кнопкой мыши на пользователе и выберите «Дополнительные параметры ...»
  4. Там, где говорится «Входная оболочка»: измените это на оболочку, которую вы хотите использовать.

Следует отметить, что в этом месте вы можете изменить свой домашний каталог, UUID, идентификатор пользователя, идентификатор группы и короткое имя, если вам неудобно работать с терминалом. Существует аналогичный вопрос , расположенный здесь , как хорошо.

ответил Chealion 29 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 29 Sep 2009 04:41:03 +0400 2009, 04:41:03
4

Используя вышеприведенные ответы, я получил сообщение об ошибке:

$ chsh -s zsh
Changing shell for myuser.
Password for myuser:
chsh: zsh: non-standard shell

Чтобы обойти это:

sudo chsh -s zsh $(whoami)

whoami в подоболочке - это изменить оболочку для вашего пользователя, а не корень.

Еще одна вещь, если вы используете доморощенный. Когда вы запускаете команды как root (используя sudo), zsh указывает на /bin /zsh, который поставляется с OSX и может быть устаревшим. Чтобы использовать обновленную версию, установленную с помощью доморощенного, используйте следующее:

sudo chsh -s $(which zsh) $(whoami)
ответил phil pirozhkov 6 PM000000110000004431 2016, 23:35:44

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132