Vi bruger Ubuntu, Debian, CentOS og andre styresystemer. Hvis nogen spørger: “Hvilket styresystem bruger du?” De fleste af jer vil måske sige: “Jeg bruger Linux”. De er ikke rigtig Linux. Linux er bare navnet på kernen. Det er faktisk forskellige Linux-distributioner.
Nu spørger du måske: “Hvad er en Linux-distribution?”
Jamen, Linux-kernen i sig selv kan ikke gøre særlig fancy ting. Det er en software, der administrerer hardwaren, tildeler hukommelse til programmer, hjælper dig med at køre programmet og andre grundlæggende opgaver på meget lavt niveau for dig. Lad os sige, at du ønsker at redigere en fil med nano text editor. Det har Linux-kernen ikke. Du skal installere det separat oven på Linux-kernen for at kunne bruge det.
Selv uden nyttige programmer er Linux-kernen ikke til nogen hjælp for almindelige brugere. Igen, at installere programmer oven på Linux-kernen er ikke noget, som almindelige mennesker vil elske at gøre. Så forskellige virksomheder og enkeltpersoner pakkede vigtige værktøjer (eller softwares) oven på Linux-kernen og pakkede det til dig. Så når du installerer det, kan du begynde at arbejde med det program, du har brug for. Dette kaldes et Linux-baseret styresystem eller en Linux-distribution. Ubuntu, Debian, CentOS, Fedora og andre er Linux-distributioner eller Linux-baserede styresystemer. De er ikke kun Linux.
Nu er der så mange softwares på Linux, at du ikke engang kan tælle dem. At inkludere dem alle i en enkelt styresystempakke ville gøre styresystemets størrelse unødigt stor og sværere at distribuere. Så styresystemet har brug for en mekanisme til at installere pakker nemt efter behov. På den måde kan de inkludere meget almindelige hjælpeprogrammer og gøre installationen mindre. Det er nemmere at udvikle, distribuere og downloade for brugerne og en mere modulær tilgang.
Så er de ekstra pakker hostet på en webserver eller FTP-server i Linux-distributionen, hvorfra brugerne kan downloade og installere den. Disse webservere eller FTP-servere kaldes pakkefortegnelse.
Du har også brug for en måde at administrere (installere, fjerne, downloade) disse pakker fra pakkefortegnelsen. Så en pakkehåndtering er inkluderet i din foretrukne Linux-distribution. Ubuntu er baseret på Debian GNU/Linux-distributionen. Ubuntu bruger pakkehåndteringen APT (Advanced Package Tool) til at administrere pakker. APT-pakkehåndteringen og alle de grafiske frontender (Ubuntu Software Center, Muon, aptitude osv.) bruger filen sources.list til at få kendskab til hvilket eller hvilke pakkereservoirer der skal bruges.
I denne artikel vil jeg vise dig, hvordan filen sources.list bruges på Ubuntu. Lad os komme i gang.
Pakkehåndteringsprogrammet APT og alle dets grafiske frontends får oplysninger om pakkeregistrene fra filen /etc/apt/sources.list og filer fra mappen /etc/apt/sources.list.d.
I Ubuntu redigerer de forskellige pakkehåndteringsprogrammer filen /etc/apt/sources.list direkte. Jeg anbefaler ikke, at du tilføjer brugerdefinerede pakkefortegnelser der. Hvis du har brug for at tilføje yderligere pakkefortegnelser, er det bedst bare at tilføje disse i mappen /etc/apt/sources.list.d/. Jeg vil vise dig praktisk, hvordan det gøres senere i denne artikel.
Forståelse af filen sources.list:
Indholdet af filen /etc/apt/sources.list ser nogenlunde sådan ud.
Her er linjer, der begynder med hash (#), kommentarer. Kommentarer bruges til dokumentationsformål i denne fil. Kommentarer bruges også til at deaktivere et bestemt pakkeregister her.
For eksempel kan du efterlade en kommentar, når du tilføjer et brugerdefineret pakkeregister som her.
deb stretch main
Jeg vil kalde hver linje, der bruges til at tilføje et pakkeregister (linjer, der begynder med deb) i filen /etc/apt/sources.list og filer i mappen /etc/apt/sources.list.d/, for en APT-linje. Du kan kalde det, hvad du vil.
Nu skal vi tale om, hvordan en APT-linje er formateret. Dette er et eksempel på en APT-linje som vist i skærmbilledet nedenfor.
En APT-linje starter med deb, hvilket betyder, at dette pakkeregister distribuerer softwarepakker som forkompilerede binære filer i deb-filformat.
En APT-linje kan også starte med deb-src, hvilket betyder, at pakkeregistret distribuerer softwarepakker som kildekoder, som du skal kompilere på din egen computer for at kunne bruge. Som standard er alle deb-src-pakkeopbevaringsstederne deaktiveret i Ubuntu. Jeg foretrækker personligt, at de er deaktiveret, da jeg ikke bruger dem. Det tager lang tid at installere pakker fra kilder, afhængigt af specifikationerne på din computer.
Så har du pakkerepositoriets HTTP-, HTTPS- eller FTP-URL. Det er her, alle pakkefiler og pakkedatabasefiler opbevares. Pakkehåndteringsprogrammet henter pakke-metadata og andre oplysninger for at få oplysninger om, hvilke pakker der er tilgængelige, og hvor de kan hentes.
Dernæst skal du indtaste det korte kodenavn for dit Ubuntu-operativsystem. Det er forskelligt for hver version af Ubuntu. I Ubuntu 18.04 LTS er det f.eks. bionic.
Du kan finde ud af, hvad det er for din distribution med følgende kommando:
Dernæst placerer du en mellemrumsadskilt liste over forskellige afsnit af dette pakkeregister. Pakkerne i et pakkeregister kan logisk set opdeles i mange grupper, som du kan se i det markerede afsnit i denne artikel nedenfor. Ubuntu-pakkearkivet er opdelt i afsnittene main, restricted, universe og multiverse. I dette eksempel tilføjede jeg kun hoved- og begrænsede sektioner af bionic-pakkeoplaget.
Det er stort set alt, hvad du behøver at vide om filen sources.list på Ubuntu.
Tilføjelse af dit eget pakkeoplag på Ubuntu:
Lad os sige, at du ønsker at tilføje dit eget pakkeoplag på Ubuntu. Lad os sige, at det er hostet på dit lokale netværk og er tilgængeligt på http://192.168.10.5/nodejs, og det er et spejl af NodeJS-pakkearkivet.
Først skal du oprette en ny fil node.list i mappen /etc/apt/sources.list.d/ med følgende kommando: