Mensagens de erro
O Homebrew falha com “curl: (28)” no Mac
O Homebrew faz downloads com curl. O código de saída 28 do curl indica que o tempo esgotou. A documentação do curl diz: “O período de tempo limite especificado foi atingido.”
Sintomas
brew installpara comcurl: (28), seguido de uma mensagem informando que o tempo esgotou.- O Homebrew informa que não conseguiu baixar um recurso.
- Os downloads falham em uma rede lenta, VPN ou rede corporativa.
Possíveis causas
- Conexão lenta ou com perdas. Bottles grandes podem exceder o tempo limite em um Wi-Fi fraco ou acesso pessoal.
- Um proxy que o curl não usa. O Homebrew usa
http_proxy,https_proxyeall_proxy. - Um firewall que descarta tráfego. Uma rede que descarta conexões com o host de download causa esgotamento de tempo.
- Um caminho IPv6 quebrado. O host de download tem um endereço IPv6, mas o IPv6 não funciona.
Como verificar
Deixe o Homebrew verificar seu sistema.
brew doctorTeste o host de download com curl, usando apenas IPv4.
curl -4 -I https://ghcr.io/v2/Mostre as variáveis de proxy.
env | grep -i proxyMeça a conexão.
networkQuality
Como corrigir
Permita que o Homebrew tente mais vezes. O padrão é 3 novas tentativas.
export HOMEBREW_CURL_RETRIES=5Se a rede exigir um proxy, configure-o no mesmo shell.
export https_proxy=http://proxy.example.com:8080Se sua empresa tiver um espelho, configure
HOMEBREW_BOTTLE_DOMAINeHOMEBREW_API_DOMAIN.Execute o comando novamente em uma rede mais rápida, se puder.
Com o Kilobat
Verifique se a rede tem limite de dados, usa VPN ou é lenta.
kilobat conditionsO diagnóstico de conexão do Kilobat testa o host camada por camada: rede, proxy, DNS, regras, IPv4, IPv6, TLS e servidor. Ele indica a camada que falhou.
kilobat why https://ghcr.io/v2/Mantenha o Mac ativo durante a instalação.
kilobat awake -- brew upgradeEssas verificações do Kilobat são gratuitas. Agentes de IA as executam pelo MCP com
diagnose_connectionediagnose_network. Consulte Descubra por que um site ou API não conecta.
Perguntas
O que é o erro 28 do curl?
É CURLE_OPERATION_TIMEDOUT. A página de manual do curl lista o código de saída 28 como tempo limite de operação esgotado.
O erro 28 do curl prova que um servidor de download está fora do ar?
Não. A operação excedeu o tempo limite. Uma conexão lenta, proxy ou firewall também podem causar isso.
Fontes
- curl: códigos de erro da libcurl
- curl(1), EXIT CODES, página de manual instalada com o macOS 27.2
- Documentação do Homebrew: página de manual, variáveis de ambiente
- brew(1), HOMEBREW_CURL_RETRIES, página de manual instalada com o Homebrew
Verificado em 29 de outubro de 2026.