Ответ 1
sudo chown -R `whoami`:admin /usr/local/bin
Для некоторых пакетов вам также может понадобиться сделать это /usr/local/share
.
sudo chown -R `whoami`:admin /usr/local/share
При установке tig
, HomeBrew
отображает следующие проблемы при установке зависимости:
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/a2x
/usr/local/bin is not writable.
You can try again using:
brew link asciidoc
sudo chown -R `whoami`:admin /usr/local/bin
Для некоторых пакетов вам также может понадобиться сделать это /usr/local/share
.
sudo chown -R `whoami`:admin /usr/local/share
Вместо того, чтобы запускать какую-либо конкретную команду, я бы рекомендовал запустить brew doctor
и серьезно относиться ко всем предупреждениям. Могут возникнуть другие проблемы, которые вы застряли, и в этом вопросе не может быть зафиксировано.
Кроме того, поскольку brew обновляется со временем, определенные команды могут оставаться или не оставаться действительными. brew doctor
, тем не менее, обеспечит своевременное устранение неполадок.
Другие ответы правильны, насколько они подходят, но они не отвечают, почему эта проблема может возникнуть, и как решить эту причину.
В этой проблеме могут быть две причины:
brew doctor
предлагает, если вы запустите его.Если у вас несколько учетных записей пользователей, и вы хотите, чтобы более одного из них могли использовать brew, вам нужно выполнить несколько шагов, иначе вам постоянно придется изменять право собственности на файловую структуру Homebrew каждый время, когда вы переключаете пользователей, и это не отличная идея.
Подробные инструкции можно найти онлайн, но быстрый ответ таков:
Создать группу с именем brew:
sudo chgrp -R brew /usr/local
sudo chmod -R g+w /usr/local
sudo chgrp -R brew /Library/Caches/Homebrew
sudo chmod -R g+w /Library/Caches/Homebrew
Если вы не пытаетесь использовать более одного пользователя с Homebrew, то решение, предоставленное другими ответами, основанное на предложениях brew doctor
, возможно, достаточно:
sudo chown -R $(whoami) /usr/local
sudo chown -R $(whoami) /Library/Caches/Homebrew
После этих шагов brew doctor
должен сообщить об успешном завершении любым пользователем в группе brew, предположив, что вы вышли из системы и снова вошли, чтобы применить новые членства в группах (если вы прошли многопользовательский маршрут). Если вы только что скорректировали ситуацию для одного пользователя homebrew, то выходить из системы и обратно не должны быть необходимы, поскольку ни одно из членов вашей группы не изменилось.
Я нашел для своей конкретной настройки следующие команды:
brew doctor
И тогда это показало мне, где были мои ошибки, а затем эта немного другая команда из комментария выше.
sudo chown -R $(whoami) /usr/local/opt
Для меня решение заключалось в запуске brew update
.
Итак, сделайте это первым.
Это может быть обычной практикой для людей, знакомых с доморощенным, но я не из тех людей.
Изменить: я обнаружил, что мне нужно обновить, запустив brew doctor
, как было предложено @kinnth ответом на этот же вопрос.
Общий рабочий процесс устранения неполадок может выглядеть следующим образом:
1. запустите brew update
2. Если это не поможет запустить brew doctor
и следовать его указаниям
3. Если это не помогает проверить переполнение стека
Я нашел следующее для пользователей Sophos Anti-Virus:
fooobar.com/questions/24744/...
https://community.sophos.com/products/free-antivirus-tools-for-desktops/f/17/t/10029
Короче говоря, Sophos меняет разрешения определенных/usr/локальных каталогов. Sophos исправил это, и исправление включено в версию 9.4.1.
Это связано с тем, что текущему пользователю не разрешено писать в этом пути. Таким образом, для изменения r/w (чтение/запись) разрешений вы можете использовать 1. терминал или 2. Графическое окно "Получить информацию".
1. Использование терминала
Google, как использовать команды chmod/chown (изменить режим/изменить владельца) с терминала
2. Использование графического "Получить информацию"
Вы можете щелкнуть правой кнопкой мыши по папке/файлу, для которого вы хотите изменить права доступа, затем откройте Получить информацию, которая покажет вам окно, как внизу, внизу которого вы можете легко изменить r/w разрешения:
Не забудьте изменить разрешение на "только чтение" после вашей временной работы, если возможно
Если вы перейдете в папку в finder, щелкните правой кнопкой мыши и выберите "Получить информацию", вы можете перейти в раздел "Общий доступ и разрешения" для папки и разрешить "Чтение и запись" на "все"
Это то, что я делаю, чтобы сделать символические ссылки с этой ошибкой. Кроме того, brew представляется reset разрешениям в папке также, как будто вы ничего не изменили