Jak usunąć zależności odinstalowanego pakietu?

48

Chcę zainstalować pakiet (DigiKam), ale ma wiele zależności. Jeśli zdecyduję, że nie potrzebuję tego oprogramowania i odinstaluję go, czy nieistotne zależności zostaną teraz usunięte?

Jeśli nie, jak mogę to zrobić ręcznie?

jfoucher
źródło

Odpowiedzi:

80

Możesz użyć polecenia apt-get autoremove. Usunie pakiety, które są instalowane jako automatyczne zależności, ale nie są już zależne.

apt-getma flagę, --auto-removektórej można użyć do automatycznego usunięcia automatycznie zainstalowanych pakietów podczas usuwania ręcznie zainstalowanego pakietu:

apt-get remove --auto-remove packagename

Niektóre inne narzędzia również mogą to zrobić, na przykład aptitudeautomatycznie zasugerują usunięcie pakietów, które zostały osierocone.

Automatycznie zainstalowane śledzenie pakietów jest wbudowane w apt, więc śledzenie powinno działać bez względu na to, jakiego narzędzia użyjesz do zainstalowania pakietów.

Ressu
źródło
Odpowiedź brzmiałaby: NIE dzieje się to automatycznie po usunięciu pakietu „nadrzędnego”, prawda?
jfoucher
Zależy to od metody użytej do usunięcia pakietu nadrzędnego. Na przykład aptitude sugeruje usunięcie tych pakietów podczas odinstalowywania pakietu nadrzędnego. Jednak nie wszystkie narzędzia to robią.
Ressu,
Możesz usunąć pakiet i wszystkie jego już nie potrzebne już zależności w jednym kroku sudo apt-get remove --auto-remove package.
Marius Gedminas
różnica między autorove a --auto-remove jest nieco niejasna. Czy mogę je połączyć?
John, dlaczego
@ johnywhy flaga ma być parametrem dla polecenia remove, podczas gdy polecenie auto-remove jest samodzielnym. Wątpię, czy dasz radę je połączyć, ale w tej chwili nie mogę tego sprawdzić.
Ressu,
10
aptitude purge digikam
deborphan
aptitude purge $(deborphan)

deborphanwyświetla pakiety, które nie są używane lub nie są zależne. Możesz więc bezpiecznie je odinstalować. Zwykle używam purgejako opcji, aptitudeponieważ usuwa również pliki konfiguracyjne i inne rzeczy.

qbi
źródło
Podczas korzystania z deborphanu często konieczne jest uruchamianie go kilka razy z rzędu, a przynajmniej tak było z moim doświadczeniem. Wydawało się, że wciąż znajduje nowe rzeczy.
mfisch
Tak, zgadza się. Ktoś napisał poprawkę do deborphan. Ale to nigdy nie trafiło do Debiana. Algorytm był lepszy i musiałeś go uruchomić tylko raz. Może zapytam autora, czy chce dodać go ponownie do repozytoriów Debian / Ubuntu.
qbi
Może nie mogę go użyć, ale deborphan zwykle chce usunąć wiele aplikacji, których faktycznie używam, a także niektóre ważne pakiety systemowe.
Rafał Cieślak,
1
aptitude purge <pkgname>jest bardzo przydatny w przypadku całkowitego zniszczenia pakietów, których dezinstalacja zakończyła się niepowodzeniem / częściowo zakończyła się powodzeniem. Ich status może być wymieniony dpkg -L <pkgname>jako, deinstallale użycie aptitudespowoduje ich całkowite usunięcie z bazy danych aptitude, a pliki przeciągające się, które nie zostały usunięte przez nieudaną instalację, również wydają się usunięte.
KomodoDave,
5

Dozorca komputera w menu systemowym również może to zrobić.

Javier Rivera
źródło
4

Używam ulepszenia ubuntu , ma bardzo skuteczne narzędzie do czyszczenia aplikacji, które nigdy nie usunęło więcej niż powinno.

Victor9098
źródło
3
sudo apt-get remove --auto-remove 

Uruchom tylko to.

Zainstaluj BleachBit z Software Center. Gdy wyczyścisz system przy użyciu go, BleachBit automatycznie uruchomi to polecenie, aby wyczyścić pamięć podręczną apt.

Ciekawy uczeń
źródło
0

Miałem ten sam problem. Oto co zrobiłem:

sudo apt-get check

To polecenie poda nazwę zależności. Np. Mój system miał chromium-browser-l10n.

Następnie wprowadź następujące polecenie

sudo apt-get remove --auto-remove chromium-browser-l10n

To całkowicie usunie zależności z twojego systemu

Jefferson X Masonic
źródło