Como usar o yum para reinstalar todas as dependências de um determinado pacote?


15

Portanto, tenho um pacote que tenho certeza de que removi parte de uma de suas dependências ao remover algo (como na rm). Longa história. Basicamente, o que eu quero fazer é que o yum reinstale o pacote e todas as suas dependências para que ele reinstale os arquivos que removi. No mundo do gentoo, você simplesmente faz assim "emerge -e". Parece que você deve ser capaz de fazer algo semelhante.

Acho que eu poderia montar um script para listar os deps e depois analisá-los e reinstalar todos eles.

Respostas:


23

Sim, não há uma maneira fácil de fazer isso ... no entanto, você pode fazer algumas coisas:

rpm -Va

... isso fará uma verificação em todos os pacotes que você instalou e poderá reinstalar qualquer coisa que não seja verificada. Além disso:

yum reinstall $(repoquery --requires --recursive --resolve <pkg>)

... isso fará o que você pediu, embora seja um grande martelo.


bastante útil em instalações quebradas, como o que recebi recentemente após o farto.
dashesy


-3

Além disso

yum reinstall $(yum list installed | awk '{print $1}')

ou

rpm -qa | xargs yum reinstall

(dependendo dos danos já causados ​​no awk da máquina ou o xargs pode não funcionar)


3
Isso reinstala todos os pacotes - não apenas as dependências de um pacote individual.
Anthony Geoghegan
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.