ПРИМЕЧАНИЕ. В этом ответе предполагается, что пользователь macOS настроен как администратор.
ВАЖНО: не используйте без sudo
крайней необходимости, как описано ниже. Конечным результатом должна стать установка Homebrew, которую больше не нужно использовать sudo
.
Сначала создайте временный каталог /usr/local
с помощью sudo
(введите пароль, если требуется):
sudo mkdir /usr/local/brewtmp1
Проверьте результаты ls -l /usr/local
:
total 0 drwxr-xr-x 2 root wheel 64 Jul 2 16:16 brewtmp1
Исправьте владение пользователя и группы временным каталогом:
sudo chown $USER:admin brewtmp1
Проверьте результаты еще ls -l /usr/local
раз:
total 0 drwxr-xr-x 2 brodybits admin 64 Jul 2 16:16 brewtmp1
Затем внутри временного каталога загрузите и распакуйте содержимое master
ветки Homebrew / brew на GitHub без использованияsudo
:
cd /usr/local/brewtmp1 curl -L https://github.com/Homebrew/brew/tarball/master | tar xz
Проверьте результаты в ls -l
течение /usr/local/brewtmp1
:
total 0 drwxr-xr-x 16 brodybits admin 512 Jul 2 14:46 Homebrew-brew-cbc3184
Проверьте результаты ls -l Homebrew-brew-*
:
total 48 -rw-r--r-- 1 brodybits admin 98 Jul 2 14:46 CHANGELOG.md -rw-r--r-- 1 brodybits admin 3161 Jul 2 14:46 CODE_OF_CONDUCT.md -rw-r--r-- 1 brodybits admin 720 Jul 2 14:46 CONTRIBUTING.md -rw-r--r-- 1 brodybits admin 1334 Jul 2 14:46 LICENSE.txt drwxr-xr-x 7 brodybits admin 224 Jul 2 14:46 Library -rw-r--r-- 1 brodybits admin 7374 Jul 2 14:46 README.md drwxr-xr-x 3 brodybits admin 96 Jul 2 14:46 bin drwxr-xr-x 5 brodybits admin 160 Jul 2 14:46 completions drwxr-xr-x 48 brodybits admin 1536 Jul 2 14:46 docs drwxr-xr-x 5 brodybits admin 160 Jul 2 14:46 manpages
Это должно показать содержимое Homebrew с правильными пользователем и группой.
Переименуйте Homebrew-brew-???????
в homebrew
(без использования sudo
) (должно быть нормально использовать другое имя с адаптацией к другим шагам ниже):
mv Homebrew-brew-??????? homebrew
и перепроверьте результаты ls -l
:
total 0 drwxr-xr-x 16 brodybits admin 512 Jul 2 14:46 homebrew
Переместите новый homebrew
каталог в нужное место, используя sudo
:
sudo mv /usr/local/brewtmp1/homebrew /usr/local
Перепроверьте результаты ls -l /usr/local
:
total 0 drwxr-xr-x 2 brodybits admin 64 Jul 2 16:20 brewtmp1 drwxr-xr-x 16 brodybits admin 512 Jul 2 14:46 homebrew
Добавьте следующую строку в файл профиля ( .profile
или, .bash_profile
при необходимости) (как указано в этом ответе на другой вопрос ):
export PATH=/usr/local/homebrew/bin:$PATH
Перезапустите оболочку, запустите новую оболочку или загрузите файл профиля. Проверьте, что which brew
показывает /usr/local/homebrew/bin/brew
. Проверьте, что brew --version
работает (хотя и не homebrew-core
установлен), например:
Homebrew >=1.4.0 (shallow or no git repository) Homebrew/homebrew-core N/A
Рекомендуется сделать brew doctor
на этом этапе, который будет включать homebrew-core
и проверять правильность установки. Может выводиться предупреждение о нестандартном префиксе Homebrew, но это должно быть проблемой для большинства пакетов. Затем brew --version
следует показать в homebrew-core
комплекте:
Homebrew >=1.4.0 (shallow or no git repository) Homebrew/homebrew-core (git revision 2f937; last commit 2018-07-02)
Попробуйте установить простую формулу, такую как autoconf
:
brew install autoconf
autoconf --version
теперь должен показать, что он установлен.
Чтобы отключить аналитику (благодаря этой статье необходимо сделать это после установки пакета):
brew analytics off
ls -l /usr/local/homebrew
теперь должно выглядеть так:
total 48 -rw-r--r-- 1 brodybits admin 98 Jul 2 16:43 CHANGELOG.md -rw-r--r-- 1 brodybits admin 3161 Jul 2 16:43 CODE_OF_CONDUCT.md -rw-r--r-- 1 brodybits admin 720 Jul 2 16:43 CONTRIBUTING.md drwxr-xr-x 3 brodybits admin 96 Jul 2 16:43 Cellar -rw-r--r-- 1 brodybits admin 1334 Jul 2 16:43 LICENSE.txt drwxr-xr-x 8 brodybits admin 256 Jul 2 16:43 Library -rw-r--r-- 1 brodybits admin 7374 Jul 2 16:43 README.md drwxr-xr-x 10 brodybits admin 320 Jul 2 16:43 bin drwxr-xr-x 5 brodybits admin 160 Jul 2 16:43 completions drwxr-xr-x 48 brodybits admin 1536 Jul 2 16:43 docs drwxr-xr-x 3 brodybits admin 96 Jul 2 16:43 etc drwxr-xr-x 5 brodybits admin 160 Jul 2 16:43 manpages drwxr-xr-x 4 brodybits admin 128 Jul 2 16:43 opt drwxr-xr-x 8 brodybits admin 256 Jul 2 16:43 share drwxr-xr-x 3 brodybits admin 96 Jul 2 16:42 var
Теперь рекомендуется добавить некоторые, возможно, недостающие каталоги и исправить некоторые разрешения на каталоги в соответствии с результатами сценария установки Homebrew (я хотел brew doctor
бы проверить и предложить позаботиться об этой части):
cd /usr/local/homebrew mkdir -p include Caskroom Cellar lib opt share var chmod g+w include Caskroom Cellar lib opt share var
И, наконец, очистка /usr/local/brewtmp1
(использование sudo
):
sudo rm -rf /usr/local/brewtmp1
Дополнительное чтение и другие ресурсы:
- этот ответ на другой вопрос
- Как установить Homebrew от OSX Daily (используя стандартный скрипт)
- 9 лучших пакетов Homebrew для Mac от OSX Daily