Grundlæggende om Debian Package Management: APT og Repositories [Linux 101]
Et af grundene til Debian-pakkehåndteringssystemet er DEB-pakkeformatet, som indeholder information om, hvor pakken skal installeres og hvilken anden software den skal fungere. Men det er kun halvdelen af historien ... den anden halvdel er Advanced Packaging Tool, eller APT. Det er faktisk et sæt værktøjer, der arbejder med dpkg, installationsprogrammet til DEB-pakker, for nemt at holde dit system opdateret.
APT Repositories
Den lethed, som du kan opdatere dit system først afhænger af arkiver af filer i et APT-læsbart format. Disse lagre er ikke mere end mapper, der indeholder følgende to filer:
- Packages.gz : Dette er en liste over alle de installerbare binære pakker i depotet. Hvis du har nogle pakker (måske endda nogle du pakket med Debreate) i en mappe, kan du generere denne fil automatisk med kommandoen "dpkg-scanpackages" . Bemærk, at den resulterende fil er Gzipped.
- Sources.gz : Dette er en liste over alle installerbare og buildable source-filer i Debian-format. Kommandoen "dpkg-scansources" kan generere denne fil. Bemærk, at kildepakker kan opbygges automatisk.
Når nogle pakker lever i et arkiv med en pakker.gz eller Sources.gz indeksfil, skal en bruger bare konfigurere filen " /etc/apt/sources.list " for at læse disse indekser og opbygge en liste over de tilgængelige pakker i alle repositorier. Konfiguration af " sources.list " er lige så nemt som at tilføje linjer til det i følgende format:
[pakke type] [pakke placering] [distribution navn] [komponent navn]
Hver af de ovennævnte emner skal adskilles af et enkelt rum. Betydningen af hver af disse er som følger:
- " Pakktype ": Linjen skal begynde med enten "deb" (for at installere de binære pakker fra lageret) eller "deb-src" (for at installere kildepakker fra lageret).
- " Pakkeplacering ": Dette skal være en URI, hvor opbevaringsstedet er placeret.
- " Distributionsnavn ": "Distributionen" af et Debian-baseret OS svarer til en udgivelse. For eksempel bruger Ubuntus seneste udgivelse distributionsnavnet "quantal", mens repositorier til det nyeste fra Linux Mint kræver "nadia".
- " Komponentnavn ": Dette afhænger også af fordelingen, men de fleste vil adskille deres pakker i komponenter. For Ubuntu er disse "hoved" (gratis og understøttet software), "begrænset" (ikke-fri men understøttet software), univers (gratis, ikke-understøttet software) og "multiverse" (ikke-fri, ikke-understøttet software). Der er nogle gange andre komponenter, som "partner" i Ubuntu til software udviklet af Canonicals partnere. Bemærk, at mere end en komponent kan noteres på en enkelt linje i " sources.list ".
Når en linje (eller linjer) som ovenstående er tilføjet til " sources.list " -filen (enten med en teksteditor eller via et værktøj som Software Center), opdateres pakke listerne som følger:
- Gå til hver af " pakkelokalerne " i " sources.list " -filen;
- Drill ned i " distribution " for disse steder;
- Gå ind i hver af de angivne " komponenter ", og;
- Download enten Packages.gz (hvis "deb" er valgt til paketypen) eller Sources.gz (hvis linjen starter med deb-src ).
APT Tools
Kommandoen til at udføre opdateringen, der refereres til ovenfor, skal se velkendt ud:
sudo apt-get opdatering
"Apt-get" -programmet er en del af APT-samlingen af værktøjer til at udføre handlinger på pakken. De mest afgørende kommandoer, du bliver nødt til at huske, er variationer på " apt-get " (Denne er den vigtigste. Lær at bruge den. Alvorligt.) Og " apt-cache " (Mange af "apt-get" kommandoer, jeg kører, er umiddelbart forud for "apt-cache"). Nogle af de fælles underkommandoer du skal bruge til disse er (du skal køre alle disse som root ved hjælp af sudo ):
- apt-get opdatering : Opdatering af pakker lister, som beskrevet ovenfor
- apt-get-opgradering : Installation af den nyeste pakke af enhver software, for hvilken der er en nyere version angivet i indeksfilen
- apt-get install [pakke navn] : Dette vil downloade og installere den angivne pakke, samt installere andre nødvendige software til den pakke
- apt-get remove [pakkenavn] : Ved hjælp af underkommandoen "fjern" afinstalleres en pakke, men beholder eventuelle konfigurationsfiler, det måtte have oprettet. Hvis du også vil slippe af med dem, skal du bruge " apt-get purge ".
- apt-cache search [søgeord] : Denne kommando vil liste pakker hvis navn eller beskrivelse indeholder det indtastede søgeord.
- apt-cache show [pakke navn] : Denne kommando vil vise oplysninger om den angivne pakke.
Nogle yderligere læsning er tilgængelig på Ubuntu emballage og repositories for dem, der ønsker at blive lidt mere involveret, og måske endda bidrage med emballering og vedligeholdelse af dit yndlingsprogram.