anúncios

terça-feira, 31 de março de 2026

Resolvendo erro 404 ao instalar pacotes no Ubuntu

Recentemente, ao tentar instalar o libsqlite3-dev no Ubuntu 24.10 (Oracular), deparei com o seguinte erro:

Err:1 http://security.ubuntu.com/ubuntu oracular-updates/main amd64 libsqlite3-dev amd64 3.46.1-1ubuntu0.2
404 Not Found [IP: 2a06:bc80:0:1000::17 80]
Error: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

Por que isso acontece?

O Ubuntu segue um ciclo de lançamento semestral. A cada 6 meses, uma nova versão é lançada, e as versões anteriores são movidas para o repositório old-releases.ubuntu.com.

O Ubuntu 24.10 (codinome "Oracular") foi lançado em outubro de 2024. No entanto, os mirrors e repositórios de segurança podem não ter todas as versões de pacotes imediatamente disponíveis, especialmente durante o período de transição.

Por que o apt update não resolve?

Em alguns casos, mesmo após executar apt update, o erro persiste porque:

  1. O pacote foi movido antes da sincronização
  2. O repositório de segurança pode ter movido o pacote para old-releases antes do apt-get update refletir essa mudança

  3. Sincronização incompleta
  4. Nem todos os mirrors estão sincronizados com o repositório principal

  5. Ciclo de vida curto
  6. Versões não-LTS têm suporte de apenas 9 meses, então os repositórios são migrados mais rapidamente

A Solução

A solução é simples: alterar o sources.list.d/ubuntu.sources para usar old-releases.ubuntu.com em vez de archive.ubuntu.com.

Procedimentos

  1. Faça backup do ubuntu.sources:
  2. sudo cp /etc/apt/sources.list.d/ubuntu.sources /etc/apt/sources.list.d/ubuntu.sources.backup
  3. Edite o arquivo (substitua todas as ocorrências):
  4. sudo sed -i 's/archive.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list.d/ubuntu.sources
    sudo sed -i 's/security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list.d/ubuntu.sources

    Ou edite manualmente se o arquivo estiver em outro local como /etc/apt/sources.list.d/ubuntu.sources:

    deb http://old-releases.ubuntu.com/ubuntu oracular main restricted universe multiverse
    deb http://old-releases.ubuntu.com/ubuntu oracular-updates main restricted universe multiverse
    deb http://old-releases.ubuntu.com/ubuntu oracular-security main restricted universe multiverse
  5. Atualize e instale:
  6. sudo apt update
    sudo apt install libsqlite3-dev

É Comum em Versões Não-LTS?

Sim, é relativamente comum, especialmente em versões de curto suporte (non-LTS).

ciclo de Vida do Ubuntu

Versão Codnome Tipo Lançamento Fim de Suporte Status
Ubuntu 24.04 Noble Numbat LTS Abril 2024 Abril 2029 ✅ Suportado
Ubuntu 24.10 Oracular Oriole Non-LTS Outubro 2024 Julho 2025 ✅ Suportado
Ubuntu 23.10 Mantic Minotaur Non-LTS Outubro 2023 Julho 2024 ❌ End of Life
Ubuntu 22.04 Jammy Jellyfish LTS Abril 2022 Abril 2027 ✅ Suportado
Ubuntu 22.10 Kinetic Kudu Non-LTS Outubro 2022 Julho 2023 ❌ End of Life
Ubuntu 21.10 Impish Indri Non-LTS Outubro 2021 Julho 2022 ❌ End of Life
Ubuntu 20.04 Focal Fossa LTS Abril 2020 Abril 2025 ❌ End of Life

Por que é mais comum em non-LTS?

  1. Ciclo mais curto:
  2. Os pacotes são migrados para old-releases mais rapidamente

  3. Menos prioridade:
  4. Mantimentos de repositórios podem priorizar versões LTS

  5. Volume de usuários:
  6. Menos pessoas usam versões non-LTS, então bugs podem demorar mais para serem reportados

  7. Transição de versão:
  8. O período entre o lançamento e a sincronização completa dos mirrors pode gerar inconsistências

Histórico de problemas similares:

  • Ubuntu 23.10 (Mantic)
  • diversos pacotes tiveram problemas semelhantes

  • Ubuntu 22.10 (Kinetic)
  • mesmo problema

  • Ubuntu 21.10 (Impish)
  • mesmo cenário

Considerações finais

Se você encontrar erro 404 ao instalar pacotes em versões não-LTS do Ubuntu, não se preocupe, é um problema comum e facilmente resolvido. A solução de usar old-releases.ubuntu.com é temporária e não deve causar problemas a longo prazo, já que essas versões têm suporte limitado de qualquer forma.

Para ambientes de produção, sempre recomendo usar versões LTS (como 22.04 ou 24.04) para evitar surpresas como essa.

Feito!

Nenhum comentário:

Postar um comentário