Brugen af PACKAGESITE og PACKAGEROOT på FreeBSD

Forældet indhold
Posted on 25.12.2006 by Kim N. Lesmer.
Dette er en mini tutorial i brugen af variablen PACKAGESITE og PACKAGEROOT på FreeBSD.

Efter en endt installation af FreeBSD 6.1 Release via CD på en gammel PC, hvor jeg også installerede en del tredjeparts pakker, var der en del af pakkerne, der var forældede, og som havde sikkerhedsfejl.

Da PC'en var en ældre sag, var opdateringer via portssystemet ikke aktuelt. Det ville tage alt for langt tid.

Hvis man kører med en FreeBSD Release 6.x, eller Security 6.x (en version som man selv har patched med de nyeste opdateringer til kernen og basissystemet), og man vil bruge de nyeste binære pakker, skal man bruge FreeBSD 6 stable pakkerne. Hvis man kører en Release 5.x, eller en Security 5.x (en version som man selv har patched med de nyeste opdateringer til kernen og basissystemet), så skal man bruge FreeBSD 5 stable pakkerne.

Der findes 2 forskellige variabler til at specifisere download af binære pakker. Variablen PACKAGEROOT og variablen PACKAGESITE.

Variablen PACKAGEROOT bruges til at specificere et bestemt mirror til download. Hvis man f.eks. hellere vil downloade fra ftp.dk.freebsd.org fremfor ftp.freebsd.org, kan det ændres med variablen PACKAGEROOT. Variablen PACKAGEROOT kan ikke bruges til at specificere en bestemt version af systemet, men den kan udelukkende bruges til at fastsætte et andet mirror til download. Pakker downloaded med PACKAGEROOT sat til et bestemt mirror, er altid release pakker.

Variablen PACKAGESITE kan derimod ikke alene bruges til at specificere et bestemt download mirror, men den kan også bruges til at specificere, hvilken version af FreeBSD pkg_add skal hente pakkerne fra.

Man kan ikke bruge PACKAGEROOT og PACKAGESITE på samme tid.

For at opsætte pkg_add til at hente pakkerne fra 6 stable gøres følgende:

C-shell familien:

I filen /root/.cshrc indsættes linjen:

setenv PACKAGESITE ftp://ftp.dk.freebsd.org/pub/FreeBSD/ports/i386/packages-6-stable/All/

Sh-shell familien:

I filen /root/.profile indsættes linjen:

export PACKAGESITE=ftp://ftp.dk.freebsd.org/pub/FreeBSD/ports/i386/packages-6-stable/All/

Det er herefter muligt at hente de nyeste binære stable pakker til systemet. I ovenstående eksempel har jeg brugt det danske mirror ftp.dk.freebsd.org.

Det er nødvendigt at logge ud og logge ind igen inden brugen af pkg_add.

Hvis du f.eks. vil installere pakken jed` fra stable, kan det nu gøres med følgende kommando:

# pkg_add -r jed

Fra en opdatering findes i portssystemet, og indtil den også findes i binær form til stable version, kan der godt gå et par uger, specielt hvis pakken er stor som f.eks. Mozilla Firefox. I sådanne tilfælde kan det være nødvendigt at gøre brug af portssystemet, og man må så vente på, at pakken bliver kompileret fra kildekoden.