Grunnleggende om Debian Package Management: APT og Repositories [Linux 101]
Et grunnlag for Debians pakkehåndteringssystem er DEB-pakkeformatet, som inneholder informasjon om hvor pakken skal installeres og hvilken annen programvare den trenger for å fungere. Men dette er bare halvparten av historien ... den andre halvdelen er Advanced Packaging Tool, eller APT. Det er faktisk et sett med verktøy som fungerer med dpkg, installasjonsprogrammet for DEB-pakker, for å holde systemet oppdatert.
APT Repositories
Den enkle måten du kan oppdatere systemet på, avhenger først av lagre av filer i et APT-lesbart format. Disse lagrene er ikke mer enn kataloger som inneholder følgende to filer:
- Packages.gz : Dette er en liste over alle installerbare binære pakker i depotet. Hvis du har noen pakker (kanskje enda noen du har pakket deg med Debreate) i en katalog, kan du generere denne filen automatisk med kommandoen "dpkg-scanpackages" . Merk at den resulterende filen er Gzipped.
- Sources.gz : Dette er en liste over alle installerbare og byggbare kildefiler i Debian-format. Kommandoen "dpkg-scansources" kan generere denne filen. Merk at kildepakker kan bygges automatisk.
Når noen pakker lever i et lager med en Packages.gz eller Sources.gz indeksfil, må en bruker bare konfigurere filen " /etc/apt/sources.list " for å lese disse indeksene og bygge en liste over pakkene som er tilgjengelige i alle repositories. Konfigurere " sources.list " er like enkelt som å legge til linjer til det i følgende format:
[pakke type] [pakke plassering] [distribusjonsnavn] [komponentnavn]
Hver av de ovennevnte elementene skal skilles med en enkelt plass. Betydningen av hver av disse er som følger:
- " Pakktype ": Linjen skal begynne med enten "deb" (for å installere binære pakker fra depotet) eller "deb-src" (for å installere kildepakker fra depotet).
- " Pakkeplassering ": Dette bør være en URI der verftet er plassert.
- " Distribusjonsnavn ": "Distribusjonen" av et Debian-basert OS er ekvivalent med en utgivelse. For eksempel bruker Ubuntus nyeste utgave distribusjonsnavnet "quantal", mens repositorier for det siste fra Linux Mint krever "nadia".
- " Komponentnavn ": Dette avhenger også av distribusjonen, men de fleste vil skille pakker i komponenter. For Ubuntu er disse "hoved" (gratis og støttet programvare), "begrenset" (ikke-fri men støttet programvare), univers (gratis, ikke-støttet programvare) og "multiverse" (ikke-gratis, ikke-støttet programvare). Det er noen ganger andre komponenter, som "partner" i Ubuntu for programvare utviklet av Canonicals partnere. Merk at mer enn en komponent kan bli oppført på en enkelt linje i " sources.list ".
Når en linje (eller linjer) som ovenfor er lagt til i " sources.list " -filen (enten med en tekstredigerer eller gjennom et verktøy som Programvaresenteret), oppdateres pakken lister:
- Gå til hver av " pakkelokalene " i " sources.list " -filen;
- Drill ned i " distribusjonen " for de stedene;
- Gå inn i hver av de " komponentene " som er oppgitt, og;
- Last ned enten Packages.gz (hvis "deb" er valgt for pakketypen) eller Sources.gz (hvis linjen starter med deb-src ).
APT Tools
Kommandoen for å utføre oppdateringen som er referert ovenfor bør se kjent ut:
sudo apt-get oppdatering
"Apt-get" -programmet er en del av APT-samlingen av verktøy for å utføre handlinger på pakken. De mest avgjørende kommandoene du må huske, er variasjoner på " apt-get " (denne er den viktigste. Lær hvordan du bruker den. Alvorlig.) Og " apt-cache " (Mange av "apt-get" kommandoer jeg kjører, er umiddelbart foran "apt-cache"). Noen av de vanlige underkommandoene du trenger for disse er (du bør kjøre alle disse som root ved hjelp av sudo ):
- apt-get-oppdatering : Oppdatering av pakkelister, som beskrevet ovenfor
- apt-get-oppgradering : Installering av den nyeste pakken med programvare som det er en nyere versjon oppført i indeksfilen
- apt-get install [pakke navn] : Dette vil laste ned og installere den angitte pakken, samt installere annen nødvendig programvare for den pakken
- apt-get remove [pakke navn] : Ved å bruke "fjern" sub-kommandoen avinstalleres en pakke, men beholder eventuelle konfigurasjonsfiler det kan ha opprettet. Hvis du vil bli kvitt dem også, bruk " apt-get purge ".
- apt-cache search [søkeord] : Denne kommandoen vil vise pakker hvis navn eller beskrivelse inneholder det angitte søkeordet.
- apt-cache show [pakke navn] : Denne kommandoen vil vise informasjon om den angitte pakken.
Noen videre lesing er tilgjengelig på Ubuntu-emballasje og repositorier for de som vil bli litt mer involvert, og kanskje til og med bidra med å pakke og vedlikeholde favorittprogrammet ditt.