GNU/Linux >> Znalost Linux >  >> Debian

Debian – Skutečný rozdíl mezi „apt-get“ a „aptitude“? (co takhle „wajig“?)?

Vím, že oba apt-get a aptitude jsou rozhraní pro správu balíčků příkazového řádku na Linuxu odvozeném od Debianu s různými možnostmi, ale stále jsem poněkud zmaten. Nepoužívají pod kapotou stejný systém APT?

Proč Debian udržuje tyto paralelní nástroje? (Bonusová otázka:co je to proboha wajig?)

Přijatá odpověď:

Nejviditelnější rozdíl je v tom, že aptitude poskytuje rozhraní nabídky terminálu (podobně jako Synaptic v terminálu), zatímco apt-get ne.

Když vezmeme v úvahu pouze rozhraní příkazového řádku každého z nich, jsou si docela podobná a z velké části opravdu nezáleží na tom, které z nich používáte. Nejnovější verze obou budou sledovat, které balíčky byly nainstalovány ručně a které byly nainstalovány jako závislosti (a tedy způsobilé k automatickému odstranění). Ve skutečnosti se domnívám, že ještě nedávno byly tyto dva nástroje aktualizovány tak, aby ve skutečnosti sdílely stejnou databázi ručně vs automaticky instalovaných balíčků, takže případy, kdy něco nainstalujete pomocí apt-get a pak to chce aptitude odinstalovat, jsou většinou záležitostí minulost.

Existuje několik drobných rozdílů:

  • aptitude automaticky odstraní vhodné balíčky, zatímco apt-get k tomu vyžaduje samostatný příkaz
  • Příkazy pro upgrade vs. dist-upgrade byly v aptitude přejmenovány na pravděpodobně přesnější názvy safe-upgrade a úplný upgrade , respektive.
  • aptitude ve skutečnosti vykonává funkce nejen apt-get, ale také některých jeho doprovodných nástrojů, jako jsou apt-cache a apt-mark.
  • aptitude má mírně odlišnou syntaxi dotazu pro vyhledávání (ve srovnání s apt-cache)
  • aptitude má proč a proč-ne příkazy, které vám sdělí, které ručně nainstalované balíčky brání akci, kterou byste mohli chtít provést.
  • Pokud akce (instalace, odstranění, aktualizace balíčků), které chcete provést, způsobí konflikty, aptitude může navrhnout několik možných řešení. apt-get jen řekne „Je mi líto, Dave, to ti nemůžu dovolit.“

Existují další malé rozdíly, ale to jsou ty nejdůležitější, které mě napadají.

Stručně řečeno, aptitude správněji patří do kategorie se Synaptic a dalšími frontendy správce balíčků vyšší úrovně. Náhodou má také rozhraní příkazového řádku, které se podobá apt-get.

Bonusové kolo:Co je to wajig?

Pamatujete si, jak jsem zmínil ty „doprovodné“ nástroje jako apt-cache a apt-mark? No, je jich spousta, a pokud je používáte hodně, možná si nepamatujete, které poskytují jaké příkazy. wajig je jedním z řešení tohoto problému. Je to v podstatě dispečer, obal kolem všech těchto nástrojů. V případě potřeby také použije sudo. Když řeknete wajig install foo , wajig říká „Ok, install poskytuje apt-get a vyžaduje administrátorská práva,“ a spustí sudo apt-get install foo . Když řeknete wajig search foo wajig říká:„Dobře, search poskytuje apt-cache a nevyžaduje oprávnění správce,“ a spouští apt-cache search foo . Pokud místo apt-get, apt-mark, apt-cache a dalších použijete wajig, nikdy nebudete mít tento problém:

$ apt-get search foo
E: Invalid operation search

Pokud chcete vědět, co wajig dělá v zákulisí, jaké nástroje používá k implementaci konkrétního příkazu, má --simulate a --teaching režimy.

Související:Linux – Jak nainstalovat anbox na čistý systém debian?

Dva příkazy wajig, které často používám, jsou wajig listfiles foo a wajig whichpkg /usr/bin/foo .


Debian
  1. Jaký je rozdíl mezi InnoDB a MyISAM?

  2. Rozdíl mezi [[ $a ==Z* ]] a [ $a ==Z* ]?

  3. Jaký je rozdíl mezi Sudo Su – a Sudo Su –?

  1. Rozdíl mezi Lubuntu a Lxde?

  2. Jaký je rozdíl mezi ls a l?

  3. Jaký je rozdíl mezi apt-get a aptitude?

  1. Centos – Rozdíl mezi vypnutím v 18:00 a vypnutím v 18:00?

  2. Rozdíl mezi Nss a Pam?

  3. Jaký je rozdíl mezi unlink a rm?