apt vs. apt-get: Jaka jest różnica w Linuksie?
Opublikowany: 2022-06-16 Dlaczego dystrybucje Linuksa oparte na Debianie mają apt
i apt-get
? Czy apt
zastąpił apt-get
, czy mają inne cele? Wyjaśniamy związek między tymi dwoma poleceniami.
System zarządzania pakietami Debiana
Głównym wysiłkiem w tworzeniu dystrybucji Linuksa jest zaprojektowanie i stworzenie systemu zarządzania pakietami. Twoi użytkownicy muszą mieć możliwość instalowania i odinstalowywania pakietów oprogramowania. Wymaga to oprogramowania, aby pobrać pliki pakietów z repozytorium oprogramowania i poprawnie zainstalować je na komputerach użytkowników.
To nie jest małe przedsięwzięcie. Nawet odkładając na bok inżynierię oprogramowania, hosting repozytoriów oprogramowania wymaga czasu, wysiłku i kosztów. To jeden z powodów, dla których tak wiele „nowych” dystrybucji Linuksa jest pochodnymi istniejącej dystrybucji Linuksa.
Prowadzi to do rodzin lub genealogii dystrybucji Linuksa, takich jak dystrybucje oparte na Debianie, dystrybucje oparte na Red Hat, dystrybucje oparte na Arch i tak dalej.
Rodzina dystrybucji Debiana — w tym Ubuntu i wszystkie dystrybucje wywodzące się z Ubuntu — korzysta z Menedżera pakietów Debiana. Wykorzystuje to pliki pakietów z rozszerzeniem pliku „.deb”, zwane plikami DEB. Pliki DEB to skompresowane pliki zawierające inne pliki archiwum. Pliki archiwum zawierają pliki wykonywalne aplikacji, strony podręcznika, biblioteki i tak dalej.
Zainstalowanie oprogramowania z pliku DEB oznacza rozpakowanie wszystkich tych plików składowych i umieszczenie ich we właściwych lokalizacjach na komputerze. Wymaga również interakcji z systemem operacyjnym i środowiskiem graficznym, aby aplikacja pojawiała się w wyszukiwaniu aplikacji, a jej ikonę można było dodać do doków lub menu systemowych.
Robią to zarówno polecenia apt-get
, jak i apt
. Ale dlaczego mamy dwa polecenia dla tego samego?
Łańcuch dowodzenia
Pakiet, który naprawdę wykonuje instalację, nazywa się dpkg
. W rzeczywistości jest to rodzina poleceń, w tym dpkg-split
, dpkg-trigger
i dpkg-divert
. Są one wywoływane, jeśli i zgodnie z wymaganiami, przez narzędzia z pakietu Advanced Package Tool lub APT. APT to kolejna kolekcja narzędzi, w tym apt-get
, apt-cache
i apt
.
Polecenie dpkg
jest uważane za polecenie niskiego poziomu. Poza najprostszymi interakcjami, staje się to bardzo skomplikowane z wieloma opcjami. Polecenie apt-get
działa jako interfejs do zestawu poleceń dpkg
. To znacznie upraszcza sprawę. apt-get
został zaprojektowany jako polecenie skierowane do użytkownika, a nie niskopoziomowe polecenie w tle. Mimo to, pomimo swojej roli skierowanej do człowieka, do wyświetlania informacji użytkownikowi użyto innego polecenia o nazwie apt-cache
.
Polecenie apt
zapewnia inny sposób „rozmawiania” z dpkg
za pomocą bardziej dostępnego i przyjaznego dla użytkownika narzędzia wiersza poleceń. Zapewnia podzbiór funkcji apt-get
, ale jest to duży podzbiór i zapewnia wszystkie powszechnie używane funkcje, a także zawiera funkcje z apt-cache
.
Linux Mint wymaga tutaj specjalnej wzmianki. Opiekunowie Linux Mint opracowali własną wersję apt
, która jest opakowaniem Pythona dla apt-get
. To nie jest apt
, o którym tutaj mówimy. Odnosimy się do głównego nurtu Debiana apt
, który został wydany w 2014 roku i zyskał uwagę i zainteresowanie w świecie użytkownika, gdy został włączony do Ubuntu 16.04 w 2016 roku.
Różnice między apt i apt-get
Tak więc dpkg
jest niskopoziomową aplikacją działającą w tle. Polecenie apt-get
jest w pełni funkcjonalnym, ale uproszczonym interfejsem do dpkg
, a apt
jest bardziej przyjazną dla użytkownika, ale nieco okrojoną wersją apt-get
.
Ale apt-get
i apt
zapewniają więcej niż prosty interfejs do dpkg
. Robią rzeczy, których dpkg
nie robi. Będą pobierać pliki z repozytoriów i spróbują pomóc w przypadku brakujących zależności i konfliktów.
Z kolei polecenie apt
wykonuje pewne rzeczy, których nie robi apt-get
. Dostarcza więcej informacji o typie, jaki przeciętny użytkownik chce widzieć podczas instalacji, i ukrywa niektóre z bardziej niejasnych informacji, które wyświetla apt-get
. apt
zapewnia doskonałą wizualną informację zwrotną i wykorzystuje podświetlenie kolorów oraz paski postępu w oknie terminala.
Istnieje kilka typowych poleceń między apt
i apt-get
. Wszystkie te polecenia mogą być poprzedzone przez apt
lub apt-get
i będą zachowywać się tak samo:
- install nazwa_pakietu : Zainstaluj pakiet.
- remove nazwa_pakietu : Usuń (odinstaluj) pakiet.
- purge nazwapakietu : Usuń pakiet i jego pliki konfiguracyjne.
- aktualizacja nazwa pakietu : Zaktualizuj informacje o repozytorium.
- upgrade : Zaktualizuj wszystkie pakiety.
- autoremove : Usuń biblioteki i inne pakiety, które nie są już potrzebne.
Opcja apt full-upgrade
zastępuje opcję apt-get dist-upgrade
.
Oto nowe polecenia dla apt
:
- apt search : Wyszukaj nazwę pakietu w repozytoriach. To to samo, co
apt-cache search
- apt show : Pokaż informacje o pakiecie. To to samo co
apt-cache show
. - apt list option : Pokazuje listy zainstalowanych lub możliwych do uaktualnienia pakietów.
- apt edit-sources : bezpośrednio edytuje listę repozytoriów, w których
apt
wyszukuje pakiety.
Instalowanie aplikacji
Możesz użyć apt search
, aby sprawdzić, czy pakiet istnieje w repozytoriach lub sprawdzić, czy masz właściwą nazwę dla pakietu. Powiedzmy, że chcesz zainstalować Scribusa, ale nie znasz nazwy pakietu. Możesz spróbować poszukać scribus-desktop
.
trafne wyszukiwanie scribus-desktop
To wyszukiwanie niczego nie znalazło. Spróbujemy ponownie, podając krótszą, bardziej ogólną wskazówkę dotyczącą wyszukiwania.
trafne wyszukiwanie scribus
Zwraca to kilka trafień i widzimy, że istnieje jeden o nazwie „scribus” i że z pewnością wygląda na podstawowy pakiet aplikacji Scribus do publikowania na komputerze. Polecenie apt show
da nam więcej szczegółów.
trafny pokaz scribus
Dostajemy zrzut informacji o pakiecie, w tym co będzie instalowane oraz opis oprogramowania.
Sugeruje również inne pakiety, które mogą być wymagane, w zależności od naszych potrzeb.
Aby zainstalować pakiet musimy użyć sudo
.
sudo apt install scribusa
Pliki są pobierane z repozytoriów. Aktualnie pobierany plik jest podświetlony na brązowo.
Po pobraniu plików są one instalowane. Postęp instalacji jest pokazany jako procent wyświetlany cyframi i jako pasek postępu.
Inne polecenia
Polecenia apt list
i apt edit-sources
to opcje w apt
, które nie istnieją w apt-get
.
Polecenia apt list
można użyć z opcjami --installed
lub --upgradeable
, aby zobaczyć, które pakiety na komputerze są zainstalowane i które można zaktualizować.
Aby zobaczyć listę aplikacji zainstalowanych na Twoim komputerze, użyj:
trafna lista --zainstalowana
Przewijając dane wyjściowe, możemy zobaczyć dwa wpisy dla naszej nowo zainstalowanej aplikacji Scribusa.
Aby sprawdzić, czy którakolwiek z zainstalowanych aplikacji może zostać uaktualniona, użyj opcji --upgradeable
.
trafna lista -- z możliwością aktualizacji
Polecenie apt
umożliwia również edycję informacji przechowywanych na temat repozytoriów, które apt
wyszukuje w poszukiwaniu pakietów. Rób to tylko wtedy, gdy wiesz, co robisz.
sudo apt edit-sources
To polecenie otwiera domyślny edytor i ładuje plik zawierający informacje o repozytorium.
Czy powinienem używać apt czy apt-get?
Polecenie apt-get
nie jest często aktualizowane i to dobrze. Musi zachować kompatybilność wsteczną. Kompatybilność wsteczna nie jest problemem dla apt
. Jest uważany i traktowany jako polecenie skierowane do użytkownika.
Do codziennego użytku użyj apt
.
Jeśli piszesz coś związanego z instalacją pakietu, użyj apt-get
. Daje to największą szansę na przenośność i kompatybilność w twoich skryptach.
POWIĄZANE: Przewodnik dla początkujących do skryptów powłoki: podstawy