2015-10-09 7 views
0

Рекомендовано, что я размещаю его здесь, потому что рыбозавод активен при переполнении.Устранение неполадок оболочки пользователя, не являющегося администратором, для рыбалки в OS X

Я изо всех сил стараюсь установить рыбный снаряд на OS X El Capitan.

Моя структура пользователя настроена так, что у меня есть учетная запись администратора и стандартная учетная запись. Стандартная учетная запись является той, которую я использую, и просто имеет учетную запись администратора по соображениям безопасности. Тем не менее, я не могу установить рыбу на стандартную учетную запись. Он установлен совершенно на моей учетной записи администратора, но когда я изменить оболочку от Баша на рыбу, я получаю следующее сообщение об ошибке в iTerm2:

A session ended very soon after starting. Check that the command in profile "my_admin_username" is correct.

В оболочке, я также получаю следующее сообщение об ошибке:

login: /usr/local/bin/fish: Permission denied 

Теперь это имеет смысл, поскольку я могу использовать рыбу только в том случае, если su ing, но до сих пор я не увенчался успехом, чтобы правильно настроить рыбу, чтобы работать со всеми моими учетными записями.

Для чего для этого пользователя разрешений для /usr/local/bin/fish установлены на 755/-rwxr-xr-x.

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

Любая помощь очень ценится.

+2

Предполагаю, что вы добавили полный путь к 'fish' в'/etc/shells'? И перешли в «Системные настройки -> Учетные записи» и установили там оболочку входа? –

+0

Настройка оболочки - это не программирование, и это не по теме. –

+0

@MarkSetchell да.Полный путь к рыбам находится в/etc/shells, а оболочка входа установлена ​​и является тем, что дает проблему. – badfilms

ответ

2

Это в конечном итоге закончилось тем, что спустилось к разрешениям.

Поскольку Homebrew настроен для учетных записей администратора по умолчанию, пивоваренные оболочки, такие как рыба и zsh, становятся недоступными для стандартных учетных записей без настройки. Однако простое изменение разрешений на путь недостаточно, поскольку Homebrew устанавливает символические ссылки. Поэтому изменение разрешений /usr/local/bin/fish не влияет.

Что мне удалось сделать, это следовать символическим ссылкам, чтобы найти исполняемые файлы, расположенные в папке Cellar, на которой заваривается Homebrew, и изменил соответствующие папки/приложения, чтобы быть доступными.

В этом процессе я последовал за this guide, чтобы настроить новую группу пользователей, а затем настроить Homebrew для работы через учетные записи, которые я выбираю для группы.

Для того, чтобы я мог получить все, чтобы работать, мне нужно было добавить больше, чем просто g+w разрешений. Фактически, только после того, как я добавил +x, я смог получить fishили Homebrew для работы на моей стандартной учетной записи. В конце концов, разрешения были ~ 775 для каталогов оболочки (под которыми я имею в виду фактические ссылки, например /usr/local/Cellar/fish и его подкаталоги).

1

Возможно, вам нужно добавить путь/usr/local/bin/fish в/etc/shells. Плагины входа должны присутствовать в этом списке в качестве меры безопасности.

+0

Он уже находится в/etc/shells - у меня есть устранены очевидные вещи, такие как это уже. – badfilms

+0

У меня полная потеря здесь @ridiculous_fish :( – badfilms