To zależy od tego, jak bardzo ufasz modułowi do śledzenia zależności. Chociaż prawie zawsze są poprawne, są chwile, w których chciałbyś pozostać zależnością, szczególnie gdy jesteś programistą lub zaawansowanym użytkownikiem instalującym oprogramowanie, którego nie ma w repozytorium.
Jeśli zawsze instalujesz oprogramowanie przez apt-get, bez wyjątku, i ufasz, że wszystkie zależności są poprawne (którymi zwykle są), możesz użyć apt-get autoremove
i zyskać niewielką ilość miejsca na dysku i zmniejszyć narażenie na potencjalne luki w zabezpieczeniach, mając usuwa pakiety, które nie mają już pakietów, które ich potrzebują.
Ale jeśli instalujesz oprogramowanie ręcznie, tworzysz oprogramowanie lub nie chcesz radzić sobie z możliwym błędem zależności, to nie używanie autorove do usuwania potencjalnie nieużywanych pakietów jest prawdopodobnie bezpieczniejszym wyborem. Niezależnie od tego, czy korzystasz apt-get autoremove
od czasu do czasu, czy nie, zawsze usuniesz oprogramowanie, którego używaszapt-get remove Package
Na przykład, jeśli zainstaluję AwesomePackage
, może to zależeć AwesomeLibrary
, a zatem AwesomeLibrary
zostanie automatycznie zainstalowane jako zależność . Kiedy AwesomePackage
usunę za pomocą autoraove, dopóki żaden inny pakiet AwesomeLibrary
nie będzie zależny, zostanie również odinstalowany. Ale jeśli SuperPackage
też wymaga AwesomeLibrary
, lub gdybym sam zainstalował się AwesomeLibrary
jawnie, zamiast automatycznie wprowadzać go jako zależność ( apt-get install AwesomeLibrary
), autorove nie pozbyłby się go.
Powodem, dla którego nie jest to domyślne, jest to, że AwesomeLibrary
nieużywanie w systemie jest bardzo drobnym problemem. Prawie nigdy nie spowoduje problemów, a większość zależności nie zajmuje dużo miejsca. Istnieją wyjątki, ale czasy, w których usunięcie zależności spowoduje problemy, będą większe niż czasy, w których rozwiąże lub zapobiegnie problemowi.
apt-get remove libreoffice
apt-get autoremovelibreoffice
? Czy to jest poprawne?apt-get autoremove
to osobne polecenieapt-get remove Package
, przepraszam za początkowe dezinformacje.There are exceptions, but the times when removing a dependancy will cause problems outnumber the times when it will solve or prevent a problem
. Co miałeś dokładnie na myśli?Można znaleźć opis Usuń , autoremove , czystki , czystym i Autoclean , jak i składni w manpages dla apt-get:
man apt-get
.Jeśli nadal nie jesteś pewien po przeczytaniu go (byłem) najlepszym sposobem na wyjaśnienie tego jest wypróbowanie go.
Poniżej znajduje się przykład pełnego drzewa zależności dla vima :
Możesz to uzyskać za pomocą:
Możesz również uzyskać listę bezpośrednich zależności za pomocą
apt-cache depends
( więcej informacji zawiera sekcja Deklarowanie relacji między pakietami ):Wygląda więc na to, że vim zależy od wielu pakietów, spróbujmy go zainstalować
apt-get install
i zobaczmy, co się stanie:Aby vim działał, potrzebujemy pakietów vim-common i vim-runtime i
apt-get
zajmiemy się tym. Możemy to zweryfikować za pomocądpkg -s pkg...
(zobaczman dpkg
więcej informacji o statusach):Tak jak sprawdziliśmy, od czego zależy vim , możemy również sprawdzić, jakie inne rzeczy zależą od tych samych pakietów, z których korzysta vim
apt-cache rdepends
. Powinniśmy zobaczyć vim wśród (prawdopodobnie) innych rzeczy:Kontynuujmy instalację. Po zainstalowaniu vima możemy poczuć różnicę między remove a autorove . Spróbujmy najpierw usunąć :
apt-get remove
by następnie usunąć vim , ale nie jego zależności pozostawiając je za sobą . Spróbujmy teraz usunąć jedną z zależności vima :Spowoduje to usunięcie zależności vim-runtime, a także pakietu od niego zależnego , mianowicie vim . Z ciekawości zobaczmy, co by się stało, gdybyśmy usunęli zależność niższą w drzewie zależności vima :
Usunąłby vima i wiele gadżetów!
Kontynuujmy
apt-get remove vim
wtedy. Gdy to zrobimy, powinniśmy mieć trochę resztek. Jeśli teraz spróbujemy napisać , możemy zobaczyć:Są to dwa pakiety, które zostały
apt-get remove
po sobie, chociaż nic więcej ich nie potrzebowało.Eksperymentowane z apt-get 0.9.7.9.
źródło
Zgodnie z tym: http://ubuntuforums.org/showthread.php?t=996053 autorove usunie wszystkie pakiety, których inne programy nie potrzebują. Zrobiłbyś „apt-get autorove”, a nie „apt-get autorove libreoffice”. Również usunięcie niepotrzebnych pakietów nie tylko zwalnia trochę miejsca na dysku, ale zmniejsza „powierzchnię ataku” twojego systemu.
źródło
remove
usunie określony program, aleautoremove
obejmie zależności, które w innym przypadku nie będą już używane.Ponadto, jeśli chcesz zwolnić miejsce na dysku, przydatne i bezpieczne polecenie to ...
To usuwa pamięć podręczną aptitude w / var / cache / apt / archives
źródło
apt-get remove libreoffice
, przyjmuję, że po prostu usunie libreoffice. Czy to prawda? Jednak jeśli uruchomię polecenieapt-get autoremove libreoffice
, to nie tylko usunie libreoffice, ale także jego zależności?neverball
ineverball
zależy od pakietu o nazwielibisfun
. Jeśliapt-get remove neverball
to zrobię, usunie tylkoneverball
pakiet. Gdybymapt-get autoremove neverball
wtedy będzie usunąćneverball
, alibisfun
jeślilibisfun
nie jest zależna od innych aplikacji.