Jakiś czas temu przeczytałem, że aptitude
jest to preferowane narzędzie do instalacji w systemach opartych na Debianie. Ale kiedy rozglądasz się, jak administrować systemem opartym na Debianie, rzadko wspomina się o umiejętności Wydaje się, apt-get
że większość ludzi woli - i to nawet dotyczy stron wiki Debiana!
Zastanawiam się więc, czy coś przeoczyłem. Którego narzędzia należy użyć?
aptitude
domyślnie.apt-get source package-name
zrobię to, ale nie widziałem żadnego odpowiednika umiejętnościaptitude search package-name
działa w umiejętności. Kolejna jestaptitude why package-name
również przydatna, ale nie wapt-get
. Uważam też, że wiersz poleceńaptitude
jest nieco oczyszczony w porównaniu doapt-get
. Ale jak zauważyłeś, nie ma,aptitude build-dep package-name
ale nieaptitude source package-name
.Odpowiedzi:
aptitude
iapt-get
działają tak samo dla wielu zadań, ale w najtrudniejszych przypadkach, takich jak ulepszenia dystrybucji (apt-get dist-upgrade
vs.aptitude full-upgrade
), mają one inne reguły, a reguły aptitude są prawie zawsze lepsze w praktyce tam, gdzie się nie zgadzają.Powodem widać więcej dokumentacji dla
apt-get
przejęciaaptitude
jest głównie bezwładności:aptitude
nie były zalecanej przód do APT dla wszystkich, że długo, tak wiele z istniejącej dokumentacji nie został zaktualizowany i jest mnóstwo ludzi, którzy rozpoznają w sobie zaletyaptitude
nadapt-get
ale używajapt-get
odruchowo.Niedawno doszedłem do punktu, w którym zwykle podążam
apt
za literą „ a”,i
a nie-
podczas pisania.Postscript Należy pamiętać, że zasady stosowane w
apt-get
iaptitude
poruszają się cele - jak Hubert zauważa w komentarzach, ścieżka aktualizacji zalecane z Debian Lenny teraz używaapt-get
, nieaptitude
. Odzwierciedla to fakt, żeapt-get
śledzi mniej informacji o bieżącym pakiecie niżaptitude
, i dlatego nie trzeba się martwić, że stan APT nie będzie „czysty”, aapt-get
reguły są mądrzejsze niż kiedyś. Nadal używam i polecamaptitude
ponadapt-get
, ale jest to bardziej szczegółowa rekomendacjaźródło
apt-get
ma tę zaletę, że jest bardziej wydajna pod względem pamięci. Jest to mało prawdopodobne dla większości użytkowników; Tak naprawdę nie wiedziałem o tym, dopóki nie próbowałem uaktualnić pakietów przy pełnej instalacji Debiana z 32 MB pamięci RAM.aptitude
skończyło się na wymiotowaniu w zamianie przez około godzinę na bieg; apt-get był znacznie szybszy.aptitude
do aktualizacji od Lenny'ego, mimo że była obsługiwana dla poprzednich aktualizacji, więc nie sądzę, że jest to tylko bezwładność ...apt-get
prawie zawsze zgłasza błędy (doświadczenie z serwera Ubuntu 12.10, 14.04), podczas gdyaptitude
faktycznie może coś zrobić. Nadal nie rozumiem, jak apt-get wciąż istnieje.aptitude
sprawia, że wygodnie jest pokazać, które programy w wyszukiwaniu masz już zainstalowane w systemie (za pomocągrep
):W rzeczywistości
aptitude
wyszukiwanie jest znacznie potężniejsze niż przepływaniegrep
, ponieważ obsługuje wyszukiwanie kontekstowe:np. znajdzie to wszystkie zainstalowane pakiety z „flash” w nazwie pakietu:
Odpowiednik „długiej formy” „krótkiej formy”
~i
:Pamiętaj, że wzorce wyszukiwania są domyślnie bezpłatne (niezakotwiczone). Aby je zakotwiczyć, musisz użyć wzorów kotwicy '
^
' (początek łańcucha) i / lub '$
' (koniec łańcucha).Aby znaleźć wszystkie pakiety, których nazwy zaczynają się od „ttf” lub „font”:
(Uwaga: jest to obejście błędu
aptitude
, ponieważ poprawne wyrażenie regularne'^(ttf|font)'
nie działa poprawnie - wyszukuje pakiety, których nazwy zaczynają się na „ttf” lub zawierają „font”.)Inne fajne
aptitude
funkcje:Pokaż wszystkie pakiety z „firmware” w nazwie, które mają w opisie TAKŻE „bezprzewodowy”:
lub długa forma:
(Uwaga: w skrócie argumenty rozdzielane spacjami są ANDed w cudzysłowach; jeśli są przekazywane jako osobne argumenty wiersza polecenia argv [], są ORedowane).
~U
pokazuje wszystkie pakiety, które można uaktualnić z ich bieżących wersji o nowe wersje:Pokaż pakiety polecające „gcc-multilib”
Wyjaśnij, dlaczego może być konieczne zainstalowanie „fuse-utils”
(Ten przykład pokazuje pewne szaleństwo wynikające z domyślnego ustawienia Squeeze (?) Instalowania wszystkich pakietów „Poleca”. Instalacja gnome-terminal kończy się instalowaniem ntfsprogs i fuse-utils, egad! Myślę, że większość ludzi chce tylko perspektywy terminala i nie wbudowana integracja NTFS, która jest opcjonalna, chyba że ją określono.)
Znajdź wszystkie pakiety, które zapewniają usługę „mail-transport-agent”:
Pokaż wszystkie zainstalowane nazwy pakietów, które nie są ani niezbędne, ani automatycznie instalowane według zależności:
Niestety, te rzeczy są raczej słabo udokumentowane i trudne do znalezienia, ale oto najlepsza referencja (od opiekuna „aptitude”).
źródło
apt-get
za pośrednictwemapt-cache search NAME
Według Debian GNU / Linux FAQ na temat zarządzania pakietami aptitude jest bardziej złożony niż apt-get i zależy od mniej złożonych narzędzi do zarządzania pakietami apt-get i dpkg.
Dlatego w przypadku prostszych potrzeb możesz korzystać z prostszych narzędzi, natomiast w przypadku bardziej złożonych potrzeb możesz liczyć na bardziej wyrafinowane narzędzie (wielkość).
Cytat z FAQ Debiana: „aptitude zapewnia funkcjonalność dselect i apt-get, a także wiele dodatkowych funkcji, których nie ma w żadnym programie”.
źródło
aptitude oznacza pakiety, które zostały zainstalowane z powodu zależności z tagiem auto. Jeśli teraz wyczyścisz lub usuniesz pakiet, aptitude automatycznie usunie automatycznie zainstalowane pakiety, które nie są już używane wraz z pakietem, który chcesz usunąć lub usunąć.
To jest główny powód, dla którego osobiście uważam, że predyspozycje są zawsze lepsze niż trafne.
źródło
apt-get
robi to również zapt-get autoremove <package-name>
. Zarównoapt-get
iaptitude
zaznacz automatycznie zainstalowane pakietyaptitude
czyść auto pakiety za każdym razem, gdy są używane. Chociażapt-get
musisz zacząć to jawnie.Nie ma odpowiedniego narzędzia, możesz mieszać i dopasowywać oba, w zależności od tego, które uznasz za najbardziej odpowiednie dla danego zadania. aptitude jest świetnym narzędziem do testowania / sid użytkowników, ale zwykle jest mniej niezawodne przy aktualizacji z jednej stabilnej do drugiej. Zobacz mój artykuł apt-get, aptitude ... wybierz odpowiedni menedżer pakietów dla siebie .
źródło