apt vs. apt-get: wat is het verschil op Linux?

Linux-terminal op een laptop op een rode achtergrond.
fatmawati achmad zaenuri/Shutterstock

Waarom hebben op Debian gebaseerde Linux-distributies? apt net zoals apt-get? Deed apt vervangen apt-get of hebben ze een ander doel? We leggen de relatie tussen deze twee commando’s uit.

Het Debian pakketbeheersysteem

Een grote inspanning bij het maken van een Linux-distributie is het ontwerpen en maken van een pakketbeheersysteem. Uw gebruikers moeten een manier hebben om softwarepakketten te installeren en te verwijderen. Dat vereist software om de pakketbestanden uit uw softwarerepository op te halen en correct te installeren op de computers van de gebruikers.

Hoe software-installatie- en pakketbeheerders werken op Linux

VERWANTHoe software-installatie- en pakketbeheerders werken op Linux

Dit is geen geringe onderneming. Zelfs als we de software-engineering opzij zetten, kost het hosten van de softwarerepository’s tijd, moeite en kosten. Dat is een van de redenen waarom zoveel “nieuwe” Linux-distributies afgeleiden zijn van een bestaande Linux-distributie.

Dit leidt tot families of genealogieën van Linux-distributies, zoals de op Debian gebaseerde distributies, de op Red Hat gebaseerde distributies, de op Arch gebaseerde distributies, enzovoort.

De Debian-familie van distributies – inclusief Ubuntu en alle van Ubuntu afgeleide distributies – gebruikt de Debian Package Manager. Dit maakt gebruik van pakketbestanden met de bestandsextensie “.deb”, DEB-bestanden genoemd. DEB-bestanden zijn gecomprimeerde bestanden die andere archiefbestanden bevatten. De archiefbestanden bevatten de uitvoerbare bestanden van de toepassing, man-pagina’s, bibliotheken, enzovoort.

Hoe een DEB-bestand in Linux te installeren

VERWANTHoe een DEB-bestand in Linux te installeren

De software installeren vanaf een DEB-bestand betekent dat u al deze componentbestanden uitpakt en op de juiste locaties op uw computer plaatst. Het vereist ook interactie met het besturingssysteem en de desktopomgeving, zodat de applicatie wordt weergegeven in zoekopdrachten naar applicaties en het pictogram kan worden toegevoegd aan docks of systeemmenu’s.

De apt-get en apt commando’s doen dat allebei. Maar waarom hebben we twee commando’s voor hetzelfde?

De commandostructuur

Het pakket dat de installatie echt uitvoert, heet dpkg. Het is eigenlijk een familie van commando’s, waaronder: dpkg-split, dpkg-triggeren dpkg-divert. Deze worden, indien en zoals vereist, aangeroepen door de tools in de Advanced Package Tool-suite, of APT. APT is een andere verzameling tools, waaronder: apt-get, apt-cacheen apt.

De dpkg commando wordt beschouwd als een commando op een laag niveau. Afgezien van de eenvoudigste interacties, wordt het erg ingewikkeld met een groot aantal opties. De apt-get commando fungeert als een front-end voor de dpkg reeks commando’s. Dit vereenvoudigt de zaken aanzienlijk. apt-get is ontworpen als een gebruikersgerichte opdracht en niet als een achtergrondopdracht op een laag niveau. Toch, ondanks zijn menselijke rol, een ander commando genaamd apt-cache werd gebruikt om informatie aan de gebruiker te tonen.

De apt commando biedt een andere manier om te “praten” met dpkg via een toegankelijker en gebruiksvriendelijker opdrachtregelprogramma. Het biedt een subset van de kenmerken van apt-getmaar het is een grote subset en biedt alle veelgebruikte functies en bevat ook functionaliteit van apt-cache.

Linux Mint heeft hier een speciale vermelding nodig. De Linux Mint-beheerders hebben hun eigen versie van aptwat een Python-wrapper is voor apt-get. Dat is niet de apt we hebben het hier over. We verwijzen naar de mainstream Debian aptdie werd uitgebracht in 2014, en kreeg aandacht en tractie in het gebruikersvers toen het in 2016 werd opgenomen in Ubuntu 16.04.

De verschillen tussen apt en apt-get

Dus, dpkg is de achtergrondtoepassing op laag niveau. De apt-get command is een uitgebreide maar vereenvoudigde interface om dpkgen apt is een gebruiksvriendelijkere, maar enigszins uitgeklede versie van apt-get.

Afhankelijkheden oplossen tijdens het compileren van software op Ubuntu

VERWANTAfhankelijkheden oplossen tijdens het compileren van software op Ubuntu

Maar apt-get en apt bieden meer dan alleen een gemakkelijke interface om dpkg. Ze doen dingen die dpkg doet niet. Ze halen bestanden op uit repositories en zullen proberen te helpen met ontbrekende afhankelijkheden en conflicten.

Op zijn beurt, de apt commando doet sommige dingen apt-get niet. Het biedt meer informatie van het type dat de gemiddelde gebruiker wil zien tijdens een installatie en onderdrukt enkele van de meer obscure informatie die: apt-get toont. apt geeft superieure visuele feedback en gebruikt kleuraccenten en voortgangsbalken in het terminalvenster.

Er zijn enkele veelvoorkomende commando’s tussen: apt en apt-get. Al deze commando’s kunnen worden voorafgegaan door: apt of apt-get en zal hetzelfde gedragen:

  • installeren verpakkingsnaam: Installeer een pakket.
  • verwijderen verpakkingsnaam: Een pakket verwijderen (verwijderen).
  • zuiveren verpakkingsnaam: een pakket en zijn configuratiebestanden verwijderen.
  • bijwerken verpakkingsnaam: de gegevens van de repository bijwerken.
  • upgrade: Werk alle pakketten bij.
  • automatisch verwijderen: Verwijder bibliotheken en andere pakketten die niet langer nodig zijn.

De apt full-upgrade optie vervangt de apt-get dist-upgrade optie.

Dit zijn nieuwe commando’s voor apt:

  • geschikt zoeken: Zoek naar een pakketnaam in de repository’s. Dit is hetzelfde als apt-cache search
  • apt tonen: Toon informatie over een pakket. Dit is hetzelfde als apt-cache show.
  • geschikte lijst optie: Toont lijsten met geïnstalleerde of upgradebare pakketten.
  • apt edit-sources: Bewerkt rechtstreeks de lijst met opslagplaatsen die apt zoekt in voor pakketten.

Een applicatie installeren

Je kunt gebruiken apt search om te zien of een pakket bestaat in de repositories of om te controleren of je de juiste naam voor het pakket hebt. Stel dat u Scribus wilt installeren maar de pakketnaam niet weet. Je zou kunnen proberen te zoeken naar scribus-desktop.

apt search scribus-desktop

Zoeken in de repositories naar een pakket met de naam scribus-desktop

Die zoektocht leverde niets op. We proberen het opnieuw met een kortere, meer generieke zoeksleutel.

apt search scribus

Zoeken in de repositories naar een pakket met de naam scribus

Dit levert verschillende hits op, en we kunnen zien dat er een is genaamd “scribus”, en dat het er zeker naar uitziet dat dit het kernpakket is voor de Scribus desktop publishing-applicatie. De apt show commando zal ons meer details geven.

apt show scribus

apt show gebruiken om meer te weten te komen over het scribus-pakket

We krijgen een stortvloed aan informatie over het pakket, inclusief wat er zal worden geïnstalleerd en een beschrijving van de software.

Informatie over het scribus pakket

Het suggereert ook andere pakketten die nodig kunnen zijn, afhankelijk van onze behoeften.

Om het pakket te installeren moeten we gebruiken sudo.

sudo apt install scribus

Het scribus-pakket installeren

De bestanden worden opgehaald uit de repositories. Het bestand dat momenteel wordt opgehaald, is bruin gemarkeerd.

Ophalen van bestanden als onderdeel van de installatie van een pakket

Wanneer de bestanden zijn opgehaald, worden ze geïnstalleerd. De voortgang van de installatie wordt weergegeven als een percentage weergegeven in cijfers en als een voortgangsbalk.

De installatie van het pakket met een percentage en voortgangsbalk

Andere opdrachten

De apt list en apt edit-sources commando’s zijn opties in apt die niet bestaan ​​in apt-get.

De apt list commando kan worden gebruikt met de --installed of --upgradeable opties om te zien welke pakketten op uw computer zijn geïnstalleerd en welke kunnen worden geüpgraded.

Om de lijst met op uw computer geïnstalleerde toepassingen te zien, gebruikt u:

apt list --installed

Gebruik apt om geïnstalleerde applicaties weer te geven

Als we door de uitvoer scrollen, kunnen we twee vermeldingen zien voor onze nieuw geïnstalleerde Scribus-toepassing.

Een lijst van de geïnstalleerde applicaties

Om te zien of een van de geïnstalleerde applicaties kan worden geüpgraded, gebruikt u de --upgradeable optie.

apt list --upgradeable

Een lijst van de applicaties die kunnen worden geüpgraded

De apt commando biedt u ook een manier om de informatie die is opgeslagen over de repositories te bewerken apt zoekt naar pakketten. Doe dit alleen als je weet wat je doet.

sudo apt edit-sources

Bewerk de repository-informatie met apt

Deze opdracht opent uw standaardeditor en laadt het bestand met de repository-informatie.

Repository-gegevensbestand geopend in de nano-editor

Moet ik apt of apt-get gebruiken?

De apt-get commando wordt niet vaak bijgewerkt, en dat is maar goed ook. Het moet achterwaartse compatibiliteit behouden. Achterwaartse compatibiliteit is niet zo’n probleem voor apt. Het wordt beschouwd en behandeld als een gebruikersgericht commando.

Gebruik voor dagelijks gebruik apt.

Als je iets scripts maakt dat te maken heeft met pakketinstallatie, gebruik dan apt-get. Dat geeft je de grootste kans op overdraagbaarheid en compatibiliteit in je scripts.

Nieuwste artikelen

Gerelateerde artikelen