Введение / Зачем это нужно
Homebrew — это менеджер пакетов для macOS, который позволяет легко устанавливать и обновлять тысячи утилит и приложений из командной строки. Регулярное обновление Homebrew критически важно по двум причинам:
- Безопасность: Обновления часто содержат патчи для уязвимостей как в самом Homebrew, так и в устанавливаемых через него программах.
- Стабильность и новые функции: Новые версии пакетов исправляют баги и добавляют функциональность. Устаревшие формулы могут перестать работать с новыми версиями macOS или других зависимостей.
Это руководство покажет, как безопасно и корректно обновить Homebrew и все ваши установленные пакеты.
Требования / Подготовка
Перед началом убедитесь, что:
- У вас установлена совместимая версия macOS (10.14 Mojave или новее).
- У вас есть доступ к интернету.
- У вас есть права администратора (может потребоваться для установки некоторых пакетов, но не для самого обновления Homebrew).
- В системе уже установлен Homebrew. Если нет — сначала выполните стандартную установку.
Пошаговая инструкция
Шаг 1: Проверьте текущую версию Homebrew
Откройте Терминал (Terminal) и выполните команду:
brew --version
Вы увидите что-то подобное:
Homebrew 4.2.0
Homebrew/homebrew-core (git revision 123456; last commit 2026-02-15)
Это подтвердит, что Homebrew работает, и вы увидите его версию. Если команда не найдена, Homebrew не установлен или не добавлен в PATH.
Шаг 2: Обновите сам Homebrew
Это самый важный первый шаг. Он обновит сам менеджер пакетов и его "рецепты" (формулы) для всех пакетов.
brew update
Что делает эта команда:
git pullв каталоге Homebrew (/usr/local/Homebrewили/opt/homebrew).- Обновляет "корову" (core) — основной репозиторий с формулами
homebrew-core. - Обновляет репозиторий
homebrew-caskдля GUI-приложений (если он у вас включён).
Ожидаемый вывод: Updated 1 tap (homebrew/core). Если вывод показывает Already up-to-date., значит, вы уже используете самую свежую версию.
Шаг 3: Обновите все установленные пакеты (формулы)
После обновления рецептов Homebrew узнает, что для ваших установленных пакетов есть новые версии. Обновите их все одной командой:
brew upgrade
Что делает эта команда:
- Для каждого установленного пакета (
formula) проверяет, есть ли в обновлённом рецепте более новая версия. - Если есть — скачивает и устанавливает новую версию.
- Важно: Homebrew по умолчанию не удаляет старые версии пакетов после обновления. Это делает команда
brew cleanup.
Вы увидите список пакетов, которые будут обновлены, и их старые/новые версии. Подтвердите действие, если запросит (обычно не запрашивает для upgrade).
Шаг 4: Очистите старые версии пакетов (обязательно!)
После brew upgrade на диске остаются файлы старых версий пакетов. Они занимают место и могут вызывать конфликты. Удалите их:
brew cleanup
Что делает эта команда:
- Удаляет старые версии всех установленных через Homebrew пакетов.
- Удаляет старые загрузочные файлы (
downloads) из кэша Homebrew. - Можно очистить конкретный пакет:
brew cleanup <package_name>.
Вывод: Список удалённых файлов и объём освобождённого места (например, Removed: 1.2G of cached downloads).
Шаг 5: Проверьте целостность системы (финальная диагностика)
Завершите процесс запуском встроенной диагностики:
brew doctor
Идеальный результат: Your system is ready to brew.
Если есть проблемы, Homebrew подробно их опишет и часто предложит решение. Например:
Warning: You have Xcode...— просто информирует.Error: /usr/local is not writable.— критическая ошибка, требующая исправления прав доступа.
Проверка результата
Вы можете убедиться, что всё обновлено, двумя способами:
- Повторный
brew upgrade: Если после завершения всех шагов вы снова запуститеbrew upgradeи получитеAlready up-to-dated.или пустой вывод — значит, всё обновлено до последних версий. - Просмотр списка устаревших пакетов: Команда
brew outdatedпокажет только те пакеты, для которых есть новая версия. После успешного обновления этот список должен быть пустым.
Возможные проблемы
Проблема: Ошибка прав доступа при brew update или brew upgrade
Симптом: Error: /usr/local/... is not writable.Причина: Неправильные права на каталог Homebrew (часто после ручных изменений или установки через sudo).
Решение: Не используйте sudo с Homebrew! Вместо этого исправьте права:
sudo chown -R $(whoami) /usr/local/*
# Или для Apple Silicon:
sudo chown -R $(whoami) /opt/homebrew/*
Затем повторите brew update.
Проблема: brew update завис или выдает ошибки сети
Симптом: Команда долго висит или падает с fatal: unable to access 'https://github.com/Homebrew/...': Could not resolve host: github.com.
Причина: Проблемы с сетевым подключением, блокировка GitHub, нерабочий DNS.
Решение:
- Проверьте интернет (
ping 8.8.8.8). - Попробуйте
brew update --forceдля принудительного обновления. - Временно отключите VPN или антивирус.
- Если проблема на стороне GitHub, придется подождать.
Проблема: Конфликты формул или brew doctor выдает много предупреждений
Симптом: После upgrade некоторые команды пакетов перестают работать, или brew doctor показывает десятки предупреждений.
Причина: Чаще всего это следствие ручного вмешательства в файлы Homebrew (/usr/local/bin, /usr/local/lib) или конфликтующих пакетов.
Решение: Внимательно прочитайте вывод brew doctor. Часто помогает:
brew cleanup(удаление конфликтующих старых версий).- Переустановка проблемного пакета:
brew reinstall <package_name>. - Если проблема серьёзная, поищите конкретный текст ошибки в Issues Homebrew.