Downgrading packages (Português)
Antes de fazer o downgrade de um ou mais pacotes, considere o porquê de você desejar fazê-lo. Se é por causa de um erro, pesquise no rastreador de erros por tarefas existentes. Se não houver, adicione uma nova tarefa; é melhor corrigir erros, ou pelo menos avisar outros usuários sobre possíveis problemas.
- Fazer downgrade de um pacote pode exigir que se faça downgrade de suas dependências também. Quando o número dos pacotes para se fazer downgrade é grande demais, considere usar um snapshot. Veja Arch Linux Archive (Português)#Como restaurar todos os pacotes para uma data específica.
- Tenha cuidado com alterações a arquivos de configuração e scritps. Por agora, pacman pode tratar disso, desde que nós não ignoremos as travas de segurança.
- Se o downgrade involve uma alteração de soname, toda a dependência pode precisar de downgrade ou recompilação também.
Contents
Retorne para uma versão anterior do pacote
Usando o cache do pacman
Se um pacote foi instalado em um estágio anterior, e o cache do pacman não foi limpado, instale uma versão anterior do /var/cache/pacman/pkg/
.
Esse processo vai remover o pacote atual e instalar a versão anterior. Alteração nas dependências será tratada, mas o pacman não tratará de conflitos de versão. Se uma biblioteca ou outro pacote precisar de um downgrade com os pacotes, por favor esteja ciente de que você mesmo terá que fazer downgrade deste pacote também.
# pacman -U /var/cache/pacman/pkg/pacote-versão_antiga.pkg.tar.xz
Uma vez o pacote seja revertido, adicione-o temporariamente para a seção IgnorePkg do pacman.conf
, até a dificuldade com o pacote atualizado ser resolvida.
Fazendo downgrade do kernel
Se você não consegue iniciar o sistema após uma atualização do kernel, então você pode fazer o downgrade do kernel usando um CD live. Use uma mídia de instalação do Arch Linux razoavelmente recente. Uma vez que ela tenha iniciado, monte a partição na qual seu sistema está instalado para /mnt
e se você tiver /boot
ou /var
em partições separadas, monte-as lá também (p.ex. mount /dev/sdc3 /mnt/boot
). Então, faça um chroot no sistema:
# arch-chroot /mnt /bin/bash
Aqui você pode ir em /var/cache/pacman/pkg
e fazer o downgrade dos pacotes. Faça o downgrade de pelo menos linux, linux-headers e de quaisquer módulos. Por exemplo:
# pacman -U linux-3.5.6-1-x86_64.pkg.tar.xz linux-headers-3.5.6-1-x86_64.pkg.tar.xz virtualbox-host-modules-4.2.0-5-x86_64.pkg.tar.xz
Saia do chroot (com exit
), reinicie e agora deve funcionar.
Arch Linux Archive
O Arch Linux Archive é um snapshot diário dos repositórios oficiais.
O ALA pode ser usado para instalar uma versão anterior de um pacote ou restaurar o sistema para uma data anterior.
Recompilar o pacote
Se o pacote está indisponível, localize o PKGBUILD correto e recompile-o com makepkg.
Para pacotes dos repositórios oficiais, obtenha o PKGBUILD com ABS e altere a versão do software. Alternativamente, localize o pacote no site de pacotes, clique "View Changes" e navegue na versão desejada. Os arquivos estão disponíveis por meio de uma snapshot de .tar.gz
e via uma visão de "árvore".
veja também Arch Build System (Português)#Faça checkout de uma versão anterior de um pacote.
Pacotes antigos do AUR podem ser compilados fazendo checkout de um commit antigo no repositório Git do pacote do AUR. Para PKGBUILDs do AUR pré-2015, veja Arch User Repository (Português)#Repositórios Git para pacotes AUR3.
Automação
downgraderAUR é uma ferramenta que funciona com libalpm, oferece suporte ao log do pacman e a fazer downgrade de pacotes usando o Arch Linux Archive, cache local e ARM.
O pacote downgradeAUR é um script Bash para faer downgrade de um (ou múltiplos) pacotes, usando o cache do pacman ou o Arch Rollback Machine. Veja man downgrade
para detalhes.
agetpkg-gitAUR lista/obtém/instala rapidamente pacotes do Arch Linux Archive.
Retornar do [testing]
Veja Repositórios oficiais#Desabilitando repositórios de teste.