Nie rozumiem, dlaczego w minimalnej instalacji są dwa różne programy do zainstalowania oprogramowania. Czy oni nie robią tego samego? Czy jest duża różnica? Wszędzie czytałem, żeby użyć aptitude zamiast apt-get, ale wciąż nie znam różnicy
linux
debian
installation
Thomaschaaf
źródło
źródło
aptitude
wiedzą, że nawet najnowszeapt
nie są w stanie:aptitude search '~i linux'
wyszukiwać pakietów zlinux
zainstalowaną nazwą lub opisem;aptitude search '~o'
wyświetla listę przestarzałych pakietów (zainstalowane pakiety, które nie są już udostępniane przez żadne repozytorium);aptitude search '!~M ~i'
pokazuje pakiety, które nie są oznaczone jako zainstalowane automatycznie;aptitude search '~i lib.*-dev'
pokazy zainstalowano bibliotek rozwoju i można zastąpićsearch
zmarkauto
lubunmarkauto
oznaczyć te pakiety jako zainstalowane automatycznie lub ręcznie.źródło
Oficjalne narzędzie, które jest obecnie używane w instalatorze Debiana
i zalecane w uwagach do wydania,toaptitude
.Aptitude oferuje interfejs przekleństw (gdy jest uruchamiany bez żadnego parametru) oraz interfejs wiersza poleceń, który może zrobić prawie wszystko, co
apt-cache
/apt-get
robi. Ma także lepszy mechanizm rozpoznawania zależności, który umożliwia przeglądanie wielu rozwiązań. Nawet podczas korzystania z wersji wiersza poleceń możesz wchodzić w interakcje z proponowanym rozwiązaniem i udzielać dodatkowych zamówień lub wskazówek (takich jak instalowanie lub usuwanie pakietu zalecanego przez inny).Ale aptitude opiera się na bibliotece libapt (nie jest to bezpośrednie opakowanie dpkg) i jako takie zależy od
apt
pakietu, więc nie możesz zainstalować aptitude bez apt-get (który również znajduje się w pakiecie apt).Aby dowiedzieć się więcej na temat interakcji apt / dpkg / aptitude, możesz sprawdzić schemat wykonany przez Daniela Burrowsa (głównego autora aptitude). Kolejny schemat przedstawia informacje przechowywane przez różne narzędzia do zarządzania pakietami: Mapa plików stanu apt i dpkg .
Możesz także przeczytać mój artykuł apt-get, aptitude,… wybrać odpowiedni menedżer pakietów dla siebie
źródło
aptitude
pamięta, które pakiety celowo zainstalowałeś i które zostały automatycznie zainstalowane w celu spełnienia zależności. Po usunięciu pakietu aptitude usunie te automatycznie zainstalowane pakiety, aby utrzymać porządek w systemie.apt-get
nie jest taki mądry.aptitude
szybko stanie się niezbędnym narzędziem, gdy użyjesz różnych repozytoriów z różnymi wersjami pakietu. Wyobraź sobie, że pracujesz z backports.org lub nieoficjalnymi repozytoriami, takimi jak debian-multimedia.org . Następnieaptitude
pokaże (na dole strony szczegółów określonego pakietu) dostępny numer wersji i pozwoli ci go wybrać.Jeśli wpadniesz w sytuację, w której programy powodują konflikty z powodu takiego użycia nieoficjalnych repozytoriów, zobaczysz na górze ekran „Broken: ...” . Możesz wpisać l ~ b (limit / flag / broken) i po prostu uzyskać listę pakietów, które są ze sobą w konflikcie. Znacznie ułatwia ręczne rozwiązanie konfliktu.
Ponadto możesz użyć „
l
”, aby ograniczyć listę pakietów. Wyobraź sobie, że szukasz pakietów zaczynających się od „ openoffice ”, a następnie naciśnij „l
” i wpisz „^openoffice
” (jest to wyrażenie regularne), a zobaczysz tylko te pakiety. Wybierz z menu „płaską listę pakietów”, a szybko osiągniesz swój cel.Kompletny podręcznik jest bardzo duży, oferując o wiele więcej filtrów i możliwości. Nawet jeśli ich nie znasz,
aptitude
jest to przydatny zamiennikapt-get
i możesz go używać z typowymi parametrami, takimi jak:źródło
apt-get autoremove
teraz usuwa pakiety, które zostały zainstalowane jako zależności pakietu, który został usunięty.apt
i może to zrobić mieszankę rzeczy, któreapt-get
iapt-cache
czynili. Na przykładapt search foo
wyświetli listę pakietów, które zawierająfoo
nazwę lub opis.apt install foo
zainstaluje pakiet o nazwiefoo
jeśli jest dostępny iapt policy foo
wyświetli aktualnie zainstalowaną wersję oraz wszystkie dostępne wersje pakietufoo
.aptitude
Jeszcze może zrobić więcej niżapt
tylko zwykłyapt
jest często dużo szybciej.Oprócz zapewnienia ładnego interfejsu użytkownika konsoli, gdy uruchamiasz
aptitude
bez argumentów, łączy różneapt-*
polecenia (idselect
) w jednym narzędziu.Aby wyszukać pakiet i zainstalować go za pomocą apt-get:
.. ale z aptitude to to samo polecenie:
aptitude
ma kilka dodatkowych funkcji, takich jakaptitude changelog somepkg
i wstrzymywanie pakietów (aby zatrzymać ich aktualizację) - nic, czego nie można osiągnąć za pomocą innych poleceń / metod, jest po prostu bardziej jednolity i przyjemny w użyciu.źródło
jak wiesz, kiedy instalujesz pakiet, jeśli potrzebuje on innych pakietów (zależności), zostaną one również pobrane i zainstalowane. aptitude śledzi, w momencie instalacji, pakiety, które są dołączone do zainstalowanego, więc kiedy usuniesz ten drugi, aptitude poprosi cię o usunięcie innych (teraz nieużywanych) zależności „osieroconych”. apt-get zachowa je w systemie cicho, jeśli usuniesz pakiet „główny”.
wygląda na to, że najnowsze wersje apt-get mają podobną funkcjonalność: http://www.psychocats.net/ubuntu/aptitude
źródło
aptitude
lubapt
w rzeczywistości nie przechowuje listy pakietów, które zostały zainstalowane jako zależności dla danego pakietu. Po prostu śledzi, czy pakiet został zainstalowany ręcznie czy automatycznie. A jeśli pakiet został oznaczony jako zainstalowany automatycznie i żaden inny pakiet go nie uzależnia ani nie zaleca, zostanie usunięty za pomocąapt autoremove
lubaptitude dist-upgrade
.Największą różnicą jest to, że aptitude jest zaprojektowane tak, aby było interaktywne, a narzędzia apt lepiej nadają się do pracy skryptowej. Możesz użyć tego drugiego, tj. Narzędzi apt, interaktywnie w porządku, z dużo większym wysiłkiem, aby uzyskać te same wyniki, które zapewnia aptitude. Jeśli z jakiegoś powodu musiałeś zdecydować się na jedno lub drugie narzędzie, musisz zdecydować, ile wysiłku chcesz włożyć w zarządzanie pakietami.
źródło
Jedną z poważnych zalet umiejętności jest umiejętność obliczania zależności. Po pierwsze, może poradzić sobie ze skomplikowanymi zależnościami bez interwencji użytkownika, co często kończy się niepowodzeniem. Ale jeśli nie podoba ci się rozwiązanie, które ci przedstawił (i oceni własne rozwiązanie, aby wykazać, jak dobrze myśli, że jest), możesz poprosić go o odejście i zaproponowanie innego rozwiązania, aby rozwiązać konflikt.
To naprawdę robi niesamowite zarządzanie pakietami.
źródło
Największą różnicą jest: wpisz „aptitude” bez żadnych parametrów.
Daje ci interfejs tekstowy, możesz użyć klawiatury do wyszukiwania / nawigacji itp., Zobacz informacje o zależnościach, odwrotnych zależnościach, wszystkich dostępnych wersjach pakietu, i możesz wykonywać na nich dowolne operacje menedżera pakietów z tego ekranu.
Możesz nacisnąć „g”, aby przejrzeć zmiany, w razie potrzeby zmodyfikować uzupełnienia i usunięcia pakietów oraz zastosować wszystkie oczekujące operacje.
Świetny wizualny sposób zarządzania pakietami przez połączenie ssh lub zwykły stary terminal.
źródło