Jak użyć yum do przeinstalowania wszystkich zależności danego pakietu?


15

Mam więc pakiet, który jestem całkiem pewien, że usunąłem część jednej z jego zależności podczas usuwania czegoś (jak w rm). Długa historia. Zasadniczo chcę, aby yum ponownie zainstalować pakiet i wszystkie jego zależności, aby ponownie zainstalować pliki, które usunąłem. W świecie Gentoo po prostu robisz to tak: „emerge -e”. Wydaje się, że yum powinien być w stanie zrobić coś podobnego.

Wydaje mi się, że mógłbym skompletować skrypt, aby wyświetlić listę dep, a następnie przeanalizować je i ponownie zainstalować wszystkie.

Odpowiedzi:


23

Tak, nie ma łatwego sposobu na zrobienie tego ... jednak możesz zrobić kilka rzeczy:

rpm -Va

... spowoduje to sprawdzenie wszystkich zainstalowanych pakietów, a następnie możesz ponownie zainstalować wszystko, co nie zostanie zweryfikowane. Również:

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

... zrobi to, o co prosiłeś, chociaż to duży młot.


całkiem przydatne w przypadku zepsutych instalacji, takich jak to, co ostatnio dostałem po fedup.
dashy


-3

Również

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

lub

rpm -qa | xargs yum reinstall

(w zależności od szkód już wyrządzonych na maszynie awk lub xargs mogą nie działać)


3
To powoduje ponowną instalację wszystkich pakietów - nie tylko zależności poszczególnych pakietów.
Anthony Geoghegan
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.