Czy podczas instalowania oprogramowania za dpkg -i packageA.deb
pomocą zależności packageA
będą pobierane i instalowane automatycznie? Czym różni się to od używania apt-get
lub aptitude
?
Czy podczas instalowania oprogramowania za dpkg -i packageA.deb
pomocą zależności packageA
będą pobierane i instalowane automatycznie? Czym różni się to od używania apt-get
lub aptitude
?
Odpowiedzi:
Nie, dpkg
tylko instaluje pakiet, więc dpkg -i packageName.deb
spowoduje to zainstalowanie tylko tego pakietu Deb i powiadomi o wszelkich zależnościach, które należy zainstalować, ale nie zainstaluje ich i nie skonfiguruje, packageName.deb
ponieważ cóż ... zależności są nie tam.
apt-get
to system zarządzania pakietami, który obsługuje instalację pakietów Deb w dystrybucjach Linuksa opartych na Debianie . System zarządzania pakietami to zestaw narzędzi, które pomogą Ci łatwo instalować, usuwać i zmieniać pakiety. To apt-get
jest jak sprytne dpkg
.
Lubię myśleć o osi czasu w ten sposób (poniżej mówię tylko z doświadczenia. Ma on na celu dać ci tylko wyobrażenie o tym wszystkim):
Wymyślili sposób na „przechowywanie” plików aplikacji w „pakiecie”, aby można je było łatwo zainstalować. Tak narodził się pakiet Deb ( .deb
plik rozszerzenia ).
.deb
Plik zawiera pliki potrzebne do uruchomienia aplikacji, a także (I jak to nazwać) „metadane”, która posiada inne informacje, takie jak nazwy w zależności od potrzeb aplikacji. Jeśli chcesz zobaczyć zawartość.deb
pliku, możesz użyć poleceniadpkg -c packageName.deb
, a jeśli chcesz zobaczyć te informacje o „metadanych”, użyj poleceniadpkg -I pacakgeName.deb
(a jeśli chcesz zobaczyć tylko zależności, zrób todpkg -I packageName.deb | grep Depends
).
Potrzebowali narzędzia do zainstalowania tych .deb
plików, więc wymyślili to dpkg
narzędzie. To narzędzie jednak po prostu zainstaluje .deb
plik, ale nie zainstaluje swoich zależności, ponieważ nie ma tych plików i nie ma dostępu do „repozytoriów”, z których można pobrać zależności.
apt-get
, co automatyzuje problemy w poprzednim punkcie. Pod maską apt-get
jest w zasadzie dpkg
(lubię myśleć o nim jako apt-get
o front-endie dpkg
), ale sprytny, który będzie szukał zależności i je instalował. Sprawdza nawet aktualnie zainstalowane zależności i określa te, które nie są używane przez żadne inne pakiety, i informuje, że możesz je usunąć.aptitude
potem przyszedł. Korzysta z biblioteki apt-get
zastosowań i faktycznie ma interaktywny UI (interfejs użytkownika). Jeśli chcesz zobaczyć ten interfejs, po prostu wpisz aptitude
terminal. To aptitude
. Wykorzystuje biblioteki, aby zapewnić więcej opcji i dodatków niż apt-get
. Na przykład aptitude
automatycznie usunie odpowiednie pakiety, podczas gdy apt-get
potrzebuje do tego osobnego polecenia. Ale w końcu robienie sudo aptitude install packageName.deb
powinno być co najmniej takie samo jak sudo apt-get install packageName.deb
. Mogą istnieć subtelne różnice tu i tam, o których nie wiem, ale oboje będą szukać zależności i robią wszystkie te rzeczy. Możesz przeczytać odpowiedź tutaj, aby uzyskać więcej informacji na temat różnic między aptitude
i apt-get
.
Ponadto aptitude
nie ma super krowich mocy.
EDYCJA: Najwyraźniej tak.
aptitude -v[v[v[v[v]]]] moo
.
aptitude
może nie być domyślnie zainstalowany. Aby go zainstalować, zrób sudo apt-get install aptitude
lub kliknij: aptitude .
Poniższe informacje nie odpowiadają bezpośrednio „ Jaka jest różnica między dpkg a aptitude / apt-get? ”, Ale przyczynia się do uzyskania większego obrazu.
Od Carlos Campderrós ' komentarzu poniżej :
gdebi
to kolejne narzędzie będące mieszanką między apt-get
i aptitude
. Kiedy użyjesz go do zainstalowania .deb
pakietu ( gdebi packageName.deb
), zidentyfikuje brakujące zależności, zainstaluje je za pomocą apt-get
, a następnie ostatecznie zainstaluje i skonfiguruje pakiet za pomocą dpkg
. Ma nawet prosty i czysty interfejs GUI, który zawiera informacje o .deb
pakiecie, plikach zawartych w pakiecie oraz o zależnościach, które należy zainstalować. Aby zobaczyć ten GUI, zrobiłbyś gdebi-gtk packageName.deb
. Możesz gdebi
spróbować, instalując go za pomocą sudo apt-get install gdebi
lub klikając: gdebi .
Nie chcę nikogo mylić, ale po prostu, aby dać ci inną część obrazu, istnieje inny popularny format pakietu Linux o nazwie RPM, a jego pliki mają .rpm
rozszerzenie. Ten format pakietu jest używany w dystrybucjach Linuksa opartych na RPM (takich jak Red Hat, CentOS i Fedora). Używają polecenia, rpm
aby zainstalować pakiet i yum
jest to front-end, jest to sprytny. Więc ich .rpm
pliki są naszymi .deb
plikami, ich rpm
narzędzie jest naszym dpkg
narzędziem, a ich yum
jest naszym apt-get
.
Od Paddy Landau „s komentarzu poniżej :
alien
to narzędzie, które konwertuje pakiety .rpm
i .deb
. Więc jeśli kiedykolwiek wpadniesz w sytuację, w której masz .rpm
pakiet i chcesz zainstalować na Ubuntu (lub innej dystrybucji opartej na Debianie), możesz użyć polecenia, alien rpm_packageName.rpm
aby go przekonwertować .deb
, a następnie zainstalować przy użyciu dpkg
. Możesz zrobić odwrotnie (przekonwertować .deb
na .rpm
) za pomocą alien -r packageName.deb
.
gdebi
( apt-get install gdebi-core
), która łączy apt-get
/ aptitude
z dpkg
. Wywołujesz go za pomocą, gdebi some_package.deb
a on przeanalizuje jego zależności, wezwie apt-get
do zainstalowania brakujących, a kiedy wszystkie zależności zostaną spełnione, a następnie zadzwoni, dpkg
aby w końcu zainstalować pakiet.
alien
konwertuje pakiety między .rpm
i .deb
. Jest to przydatne w przypadku pakietów dostępnych dla RPM, ale nie dla DEB (lub odwrotnie). Na przykład, alien packagename.rpm
aby uczynić go użytecznym dla Ubuntu.
aptitude
nie jest nakładką na apt-get
. Oba programy stanowią nakładki na libapt-pkg
bibliotekę.
Zarządzanie pakietami apt-get
odbywa się równolegle z /etc/apt/sources.list
plikiem.
apt-get install <package_name>
instaluje nowy pakiet na twoim komputerze.
apt-get build-dep <package_name>
To polecenie przeszukuje repozytoria i instaluje zależności kompilacji. Jeśli pakiet nie znajduje się w repozytoriach, zwróci błąd.
apt-get install <package1_name> <package2_name> <package3_name>
apt-get umożliwia instalację wielu pakietów. oddziel paczki spacją.
auto-apt run <command_string>
Po wywołaniu komenda auto-apt automatycznie instaluje pakiety w przypadku braku dostępu do pliku. Jeśli program spróbuje uzyskać dostęp do pliku, o którym wiadomo, że należy do odinstalowanego pakietu, auto-apt zainstaluje ten pakiet przy użyciu apt-get
. Ta funkcja wymaga apt i sudo do działania.
Odwiedź stronę instrukcji apt-get
aptitude
zapewnia funkcjonalność dselect
i apt-get
wiele dodatkowych funkcji, których nie ma w żadnym programie.
aptitude
ma własną powłokę, która jest aktywowana za pomocą klawiatury lub myszy i działa w oknie terminala
aptitude build-dep <package>
- Zainstaluj zależności kompilacji pakietów - co oznacza pakiety potrzebne do skompilowania (lub kompilacji ) pakietu źródłowego. Na przykład, wiele pakietów trzeba debhelper
albo autotools
być zbudowany, ale nie trzeba je uruchomić.
Odwiedź stronę z instrukcjami dotyczącymi umiejętności
jest narzędziem do instalowania, budowania, usuwania i zarządzania pakietami Debiana. połączyć
dpkg -i <package.deb>
instaluje pakiet Debian na twoim komputerze. Nie instaluje żadnych zależności, o ile mogę dowiedzieć się z plików pomocy.
Aby uzyskać szczegółowe informacje, wpisz dpkg --help
w oknie terminala.
przewodnik po zarządzaniu plikami można znaleźć tutaj
Myślę, że najważniejszą rzeczą, a także różnicą jest to, że powinieneś używać apt-get
narzędzia do instalowania pakietów. ( apt
lub też aptitude
jest w porządku).
Jest tak, ponieważ dpkg
ma na celu instalowanie pakietów bez instalowania pakietów zależnych. Z tego powodu samo zainstalowanie pakietu dpkg
może spowodować późniejszy problem, w wyniku którego rozwiązywanie zależności może doprowadzić do uszkodzenia systemu.
Do zainstalowania pakietów należy użyć wiersza polecenia apt-get
lub apt
(od 14.04) narzędzia. Te narzędzia są dpkg
dla Ciebie używane, a jednocześnie mają w sobie mechanizm rozwiązywania zależności.