Jak usunąć pakiet i jego zależności z Pacman na Arch Linux

Jak usunąć pakiet i jego zależności z Pacman na Arch Linux

Podczas instalacji pakietów w Arch Linux z Pacman Package Manager, niektóre inne pakiety są również zainstalowane. Pakiety te nazywane są zależnościami pakietu, który próbowałeś zainstalować. Wszystko dobrze, że Pacman rozwiązuje wszystkie zależności i instaluje je dla Ciebie. Oszczędza to od ręcznego zainstalowania ich jeden po drugim, co oczywiście jest nudne i czasochłonne.Ale problem pojawia się, gdy próbujesz usunąć pakiet z systemu Arch Linux. Domyślnie Manager pakietu Pacman usunie tylko pakiet, który go powiesz, pozostawiając zależności tego zainstalowanego pakietu. Problemem jest to, że niepotrzebne pakiety zajmują dodatkowe miejsce na dysku twardym. Oczywiście nie ma to znaczenia, kiedy masz duży dysk twardy na lokalnym komputerze, ale jeśli jest to serwer, który wynajmowałeś online, będziesz mieć ograniczoną przestrzeń na dysku. Więc uratowanie kilku megabajtów na kilka setek megabajtów jest nadal tego warte.

W tym artykule pokażę, jak usunąć pakiety na Arch Linux wraz z ich zależnościami za pomocą Pacman Package Manager. Zacznijmy.

Znalezienie zależności określonego pakietu

Możesz użyć Pactree narzędzie do znalezienia pakietów pakietu XYZ zależy od.

Uwaga: nie potrzebujesz Pactree Aby usunąć wszystkie zależności wraz z opakowaniem. Ale uważam to za interesujące, ponieważ pomaga zrozumieć, w jaki sposób pakiety w systemie Arch Linux są od siebie zależne.

Na przykład możesz sprawdzić zależność pakietu FileZilla z Pactree następująco:

$ Pactree FileZilla

Jak widzisz, Pactree pokazuje ładnie sformatowane drzewo zależności FileZilla pakiet.

Możesz przejść -D n parametr do Pactree wydrukować tylko pewną głębokość drzewa. Tutaj N = 1, 2, 3,…

Gdy N= 1, drukowane jest drzewo zależności bezpośredniej.

Możesz uruchomić następujące polecenie, aby znaleźć bezpośrednie zależności FileZilla z Pactree:

$ Pactree -d 1 FileZilla

Jak widać, bezpośrednie zależności FileZilla znajduje się na liście.

Możesz wydrukować listę w formacie prostym (nie format drzewa) za pomocą następującego polecenia:

$ PACTREE -D 1 -U FILEZILLA

Jeśli chcesz, możesz wyeksportować listę do pliku, powiedzmy FileZilla.tekst Z następującym poleceniem:

$ Pactree -d 1 -u FileZilla> FileZilla.tekst

Usuwanie pakietu i wszystkich zależności za pomocą Pacmana

Możesz usunąć tylko konkretny pakiet, powiedzmy FileZilla Korzystanie z Pacmana z następującym poleceniem:

$ sudo pacman -r filezilla

Jak widać na zrzucie ekranu poniżej, to polecenie usunie pakiet, ale pozostawiłoby to wszystkie zależności FileZilla Zainstalowany pakiet. O tym wcześniej biorę.

Możesz usunąć wszystkie zależności FileZilla Również z następującym poleceniem Pacman:

$ sudo pacman -rcns filezilla

Jak widać na zrzucie ekranu poniżej, wszystkie bezpośrednie zależności również zostaną usunięte. Po prostu naciśnij y a następnie naciśnij Aby usunąć wszystkie te pakiety.

Jak widać, wszystkie pakiety są usuwane.

Usuwanie pakietów, które nie zależą od innych pakietów

Jeśli nie wiedziałeś, co ci wcześniej pokazałem, i usunąłem paczki z Sudo Pacman -R polecenie, wtedy twój system Arch Linux może mieć nadal zainstalowane wiele niepotrzebnych pakietów. Ale jeszcze nie żałuj. Istnieje sposób na usunięcie tych niechcianych pakietów i zapisanie przestrzeni dysku.

Możesz uruchomić następujące polecenie, aby znaleźć wszystkie niepotrzebne pakiety (pakiety, które nie zależą od innych pakietów):

$ PACMAN -QDTQ

Jak widać, na moim komputerze Arch Linux zainstalowane są cztery niepotrzebne pakiety.

Jeśli twój maszyna Arch Linux pokaż dłuższą listę, nie bój się, ponieważ nie musisz ich usuwać jeden po drugim.

Możesz usunąć wszystkie te niepotrzebne pakiety za pomocą następującego polecenia:

$ sudo pacman -r $ (pacman -qdtq)

Naciskać y a następnie naciśnij kontynuować.

Jak widać, wszystkie niepotrzebne pakiety są usuwane.

W ten sposób usuwasz pakiety wraz z jego zależnościami i usuwasz wszystkie niepotrzebne pakiety z Pacman Package Manager na Arch Linux. Dziękujemy za przeczytanie tego artykułu.