5

У меня есть учетная запись администратора на моем OS X Lion 10.7.2. Через эту учетную запись я установил несколько приложений, но не могу запустить их без sudo. Например, я установил git и не могу просто запустить git из терминала, когда получаю

-bash: git: команда не найдена

Вместо этого мне нужно запустить sudo git .

У меня есть похожие проблемы с другими приложениями. Еще один, который не работает, - MacFusion.app, который пытается использовать /Applications/Macfusion.app/Contents/PlugIns/sshfs.mfplugin/Contents/Resources/sshfs-static . Я попытался запустить sshfs-static с терминала, но мне снова пришлось сделать sudo, чтобы это заработало.

Какие-либо предложения?

2 ответа2

10

/usr/local не используется в стандартной установке OS X и обычно принадлежит вашему пользователю, так как вы создадите его и заполните его. Популярный менеджер пакетов Homebrew установит права доступа и будет использовать их без необходимости получения прав root.

Если он принадлежит пользователю root и у вас отсутствуют права на выполнение / чтение для вашего пользователя, то команды в /usr/local/bin (или /usr/local/git/bin) будут работать только при вызове с помощью sudo .

Чтобы это исправить, снова перейдите в /usr/local :

sudo chown -R $(whoami) /usr/local

Что касается того, почему это произошло, я могу только догадываться, что git-osx-installer сбросил права доступа /usr/local к чему-то более строгому. Некоторые сообщения об ошибках упоминают об этом.

0

Помимо принятого ответа, который предполагает:

Чтобы это исправить, снова перейдите в /usr /local:

sudo chown -R $(whoami) /usr/local

Мне пришлось запустить следующие две строки в терминале, чтобы Git работал без sudo:

echo "PATH=/usr/local/git/bin:\$PATH" >> ~/.bash_profile
source ~/.bash_profile

Источник: Установка git на OSX 10.8 без Xcode

Надеюсь это поможет.

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