Czy istnieje prosty sposób na sporządzenie listy zależności, z którymi będzie instalowany nowo zainstalowany pakiet RPM yum
?
Przykład: jeśli to zrobisz yum install ruby
, zainstaluje także niektóre rubygemy.
Ale kiedy odinstalowuję ruby
pakiet, chcę również pozbyć się zainstalowanych zależności.
Więc moim pierwszym pomysłem było sporządzenie listy tych nowych pakietów, a następnie zrobienie ich rpm -e
na tych, gdy odinstalowałem ruby
.
Pytanie
Jak zrobić taką listę w sposób zautomatyzowany?
Czy jest łatwiejszy sposób na zarządzanie plikami tekstowymi z nazwami pakietów RPM?
Odpowiedzi:
yum
zachowuje własną historię, dzięki czemu można dowiedzieć się, kiedy pakiet został zainstalowany lub zaktualizowany przy użyciu jego historii.Na przykład
yum history packages-info ruby
da ci wszystkie transakcje z rubinem, przy czym najstarsza jest zwykle ta, w której pakiet został zainstalowany.Otrzymasz identyfikator transakcji, który możesz następnie wyszukać i znaleźć zależności, które zostały zainstalowane, np
yum history info <ID>
. Za pomocą .Jeśli pakiet został właśnie zainstalowany i nie został jeszcze zaktualizowany, możesz wycofać transakcję, np
yum history undo 102
. Nie będzie to działać, jeśli którykolwiek z pakietów został zaktualizowany od czasu instalacji, ponieważ pasuje do nazwy, wersji i wydania.A jeśli tak naprawdę właśnie zainstalowałeś pakiety, możesz pominąć wszystko inne i uruchomić,
yum history undo last
aby cofnąć ostatnią transakcję.źródło
Możesz je usunąć za pomocą
yum autoremove
.źródło
yum autoremove
usunie wszystkie pakiety, które były wymagane dla już niedostępnych pakietów. Jeśli chcesz je zachowaćyum autoremove
, ustaw je ręcznie jako pierwsze.