Несколько лет назад вы могли избежать brew
проблем brew
с правами администратора, просто подав их, но они убрали эту функцию. Так что в Homebrew 1.1.6 я использовал правку, /usr/local/Homebrew/Library/Homebrew/brew.sh
чтобы убрать проверку root (ту, которая говорила, что она «чрезвычайно опасна»), чтобы я мог работать brew
от имени root.
Более новая версия Homebrew по-прежнему работает с этим, но продолжает возвращать brew.sh
файл обратно каждый раз после запуска brew
, даже если я chmod 500
это сделаю . Я мог бы написать сценарий, чтобы изменить его, затем запустить brew
автоматически, но я не уверен, что это всегда будет работать, и не хочу рисковать. Кто-нибудь нашел другой способ запустить Homebrew от имени root?
sudo
запускает его как root, и он выдает мне ту же «чрезвычайно опасную» ошибку. Я хочу работать с правами root, поскольку в противном случае возникают проблемы с установкой определенных пакетов, особенно если что-то было установлено не через Homebrew (например, через pip
). Я ходил по этому пути много раз. Кроме того, он не работает должным образом для нескольких пользователей без странных обходных путей, если я не установлю все как root.
root
же рискованна. Даже построение пакета без менеджера пакетов, вы бы построить пакет как пользователь без привилегий (самостоятельно) , а затем установить пакет , как root
с sudo
. Менеджеры пакетов, такие как Fink и MacPorts, создают свои собственные непривилегированные пользователи, а затем устанавливают как root
. Доморощенный не имеет такого механизма.
brew.sh
файл возвращается после изменения и запуска brew
команды. Так что я могу бегать sudo brew whatever
и brew whatever
в тандеме просто отлично. brew --version
Таким образом, мой вывод: к Homebrew 1.2.1-98-g803f9cbf7b-dirty Homebrew/homebrew-core (git revision d3d6; last commit 2017-05-28)
вашему сведению, я изменил свой brew.sh
файл, чтобы закомментировать все строки в check-run-command-as-root
функции, и return
вместо этого поместил один оператор в верхней части функции.
brew
от имени root? Кроме того,sudo
не достаточно для ваших целей?