Freebsd-atnaujinimas

Iš Žinynas.
19:00, 14 birželio 2010 versija, sukurta \dev\null (Aptarimas | indėlis) (/tmp fix)
(skirt) ← Ankstesnė versija | Dabartinė versija (skirt) | Vėlesnė versija → (skirt)
Jump to navigation Jump to search

FreeBSD atnaujinimas labai paprastas procesas, bet priklausant nuo situacijos gali iškilti keletas problemų.

Aprašyti būdai tinka FreeBSD 5.X, 6.X ir 7.0-Current versijoms.

Atnaujinimas vyksta cvs pagalba todėl mums reiks cvsup kliento.

pkg_add -rv cvsup-without-gui

arba iš portų:

cd /usr/ports/net/cvsup-without-gui/; make install

Atnaujinimas[keisti]

Viską darome paprasčiausiu būdu, kad nereikėtų keisti /usr/share/examples/cvsup/standard-supfile ir kiekvieną kartą rašyti cvsup -g -L2 standart-supfile.

vi /etc/make.conf

Pridedame šias eilutes:

SUP_UPDATE=yes
SUP= /usr/local/bin/cvsup
SUPFLAGS= -g -L 2
SUPHOST= cvsup5.FreeBSD.org # cvs mirroras (visi mirrorai surašyti čia)
SUPFILE= /usr/share/examples/cvsup/standard-supfile
PORTSSUPFILE= /usr/share/examples/cvsup/ports-supfile

Išsaugome failą (esc, :wq)

Dabar atnaujinti sistemos išeities kodus galite paprastai.

cd /usr/src; make update

Jei nepasisekė tai padaryti ir /usr/src direktorija yra tuščia tuomet teks paredaguoti /usr/share/examples/cvsup/standard-supfile ir diegti truputi kitaip.

Atsidarę /usr/share/examples/cvsup/standard-supfile matome maždaug taip:

*default host=CHANGE_THIS.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_5_4
*default delete use-rel-suffix

Reikia pakeisti default host į vieną iš šių cvs mirrorų.

Turi atrodyti maždaug taip:

*default host=cvsup5.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_5_4
*default delete use-rel-suffix

Daugiau nieko nekeiskite ir išsaugokite failą. Dabar galėsite pradėti atnaujinimą

cd /usr/src;cvsup -g -L2 /usr/share/examples/cvsup/standard-supfile

Kitą kartą jau nebereiks naudoti šios eilutės, užteks parašyti tik cd /usr/src;make update

Sistemos surinkimas po išeities kodų atnaujinimo (Kompiliavimas)

make buildworld <- Sukompiliuoja sistemos išeities kodus
make installworld <- Įdiegia

PASTABA: Diegiant installworld, reikia jog particija /tmp būtų užmountinta su exec opcija.

mergemaster <- Konfiguracijos failų atnaujinimas (Būkite atsargūs!)

Branduolio diegimas

Jei jums rūpi jūsų FreeBSD kernel konfiguracijos failas niekada jo nelaikykite kaip GENERIC, o pervadinkite i ką nors kitką pvz.: KONFIGAS, nes atjaujintus išeities kodus bus atnaujintas ir (Default GENERIC) konfiguracijos failas, todėl norint turėti savos konfiguracijos kernelio konfiga butina jį pervadinti:

mv /usr/src/sys/i386/conf/GENERIC /usr/src/sys/i386/conf/KONFIGAS

Senamadis branduolio atnaujinimas (sudėtingesnis):

cd /usr/src/sys/i386/conf;config GENERIC <- Jei jusu konfiguracijos failas yra ne GENERIC tuomet pakeiskite.
cd ../compile/GENERIC <- Jei konfiguracijos failas buvo ne GENERIC tuomet pakeiskite.
make depend <- 6.X, 7.X versijose taip pat prieš tai būtina parašyti make cleandepend
make <- Kompiliavimo procesas
make install <- Naujo kernelio įdiegimas

Naujamadis brandiolio atnaujinimas (lenvesnis):

KONFIGAS parametras tai jūsų kernelio konfigo failo pavadinimas.

make buildkernel KERNCONF=KONFIGAS
make installkernel KERNCONF=KONFIGAS

Jei kernelis yra standartinis jūs neredagavote jo konfigo tuomet nebūtine naudoti parametro KERNCONF=KONFIGAS. Galite įdiegti tiesiog taip:

make buildkernel
make installkernel

Štai ir viskas po visų atnaujinimų galite perkrauti savo FreeBSD mašiną:

sync
reboot 

Downgrade/Upgrade[keisti]

Perėjimas į senesnę/nejesnę versiją. Pirmiausia jums reiktų pakeisti vieno failo turinį.

vi /usr/share/examples/cvsup/standard-supfile

Atsidarę šį failą susirandate eilutes panašias į:

*default host=CHANGE_THIS.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_5_4
*default delete use-rel-suffix

default host= rašote vieną iš šių cvs mirrorų *default release= keičiame į jūsų pasirinktą versiją pvz jei norite 6.0 rašote cvs tag=RELENG_6_0 jei 6-current tada tag=RELENG_6 ir t.t.

Išsaugote failą. (esc, :wq)

rm -rf /usr/obj/*
rm -rf /usr/src/* <- Prieš tai išsisaugokite savo kernelio konfigą jei tokį turėjote.
cd /usr/src
cvsup -g -L 2 /usr/share/examples/cvsup/standard-supfile 

arba cvsup -g -L 2 /usr/share/examples/cvsup/standard-supfile -h cvsup5.freebsd.org jei nenustatėte hosto konfige

make buildworld
make buildkernel
make installworld
make installkernel
emergemaster
sync
reboot

PortUpgrade[keisti]

portupgrade programa skirta freebsd portų atnaujinimui

cd /usr/ports/sysutils/portupgrade && make install

Atnaujininame portų medį

cd /usr/ports && make update

Suindeksuojame portus

make index

Toliau galime naudotis portupgrade siūlomais privalumais.

Norint pažiūrėti kuriems portams yra atnaujinimų

portversion -l "<"

Portų atnaujinimas

portupgrade -arR