Erinevus lehekülje "Tuum ja Baas" redaktsioonide vahel

Allikas: Kuutõrvaja
123. rida: 123. rida:
  
  
© EENet 2006
+
© EENet 2008

Redaktsioon: 7. aprill 2008, kell 13:09

FreeBSD uuendamine

FreeBSD uuendamiseks tuleb uuesti kompileerida kokku nii baas kui tuum. Sourcest saab tõmmata lihtsate vahenditega nii kõige viimase release kui ka veel arenduses olevaid versioone. FreeBSD võimaldab ka käigult kompileerida näiteks FreeBSD versioo 6 ümber versioon 7'meks. Ei tasuks ainult uuendamisel ühte versiooni vahele jätta näiteks üritada versioon 4 kompileerida kohe versiooniks 7 vaid esimesena versiooniks 5 ja siis 6 ning seejärel 7 alles. Sellise uuendamise teeb võimalikuks see ,et kõik kolmanda osapoole tarkvara paigaldatakse kausta /usr/local ja baas ning kernel on monoliitne ühtne bsd arendusmeeskonna poolt loodav. Selline võimalus teeb lihtsaks FreeBSD käigupealt uuendamise.

Koodi hankimine

FreeBSD 6x ja 7x sees on juba olemas käsk csup nii ,et ei pea enam cvsup-without-gui hakkama installima piisab kui teha cvsup fail nimega (nimi võib olla tahes milline) 7-sup ja sisuga

*default host=cvsup.eenet.ee
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_7
src-all

Ja anda käsk

csup 7-sup

seejärel siseneda kausta /usr/src ja anda käsud

make buildworld
make buildkernel

ning kui need käsud läksid veatult läbi siis

make installworld
make installkernel

ja kõige viimasena kataloogis /etc paiknevate konfiguratsioonifailide võrdlemine ja uuenenute asendamine.

mergemaster

Selle käsu väljundit ja küsimusi tuleks hoolikalt jälgida sest mergemaster võib tahta kirjutada üle faile milledes võib leiduda väärtuslikke seadistusi.


Tuum

Operatsioonisüsteemi tuum laetakse mällu peale arvuti käivitamist esimesena ning tema ülesanne on vahendada füüsilisi seadmeid operatsioonisüsteemi programmidele.

Vajadus uue tuuma järele tekib tavaliselt siis, kui

  • soovite eemaldada või lisada olemasolevasse tuuma mõne seadme toetust, näiteks PS2 hiirt
  • soovite eemaldada või lisada tuuma teatud funktsioone, näiteks toetust IP pakettide filtreerimiseks

FreeBSD tuuma juurde kuuluvad samuti moodulid mis vaikimisi tekitatakse igakordsel tuuma paigaldamisel kataloogi /modules. Lähtetekstid

FreeBSD tuuma lähtetekstid tulevad koos reliisiga kaasa ja neid ei avaldata reliiside vahel sarnaselt näiteks Linuxi tuumale.

Konfigureerimine

Enne lähtetekstidest tuuma kompileerimist peab näitama, milliste omadustega tulemust soovitakse saada. Seda tehakse ühe tekstifaili sisu redigeerides.

Kerneli seadistusfail asub kaustas /usr/src/sys/arhidektuurinimi/conf nimega GENERIC näiteks 64 bitine kernelifail asub

/usr/src/sys/amd64/conf/GENERIC

Sisenege kataloogi /usr/src/sys/amd64/conf ning kopeerige meelepärase nime alla tuuma näidiskonfiguratsioonifail GENERIC

bash# cp GENERIC TUUM1

Tuuma nimi kirjutatakse traditsiooniliselt suurte tähtedega. Tuuma konfiguratsioonifaili süntaks on traditsiooniline, trellist (#) paremale jäävat teksti ja tühje ridu ignoreeritakse. Teistel ridadel on parameetrid ja nende väärtused süstaksiga

parameeter väärtus1 [väärtus2]

näiteks selline rida konfigureerib tuuma ISO9660 standardile vastavate CD-plaatide lugemise toetuse

options 	CD9660

aga rida

options    SMP  

lisab mitmeprotsessori toe

Samas kataloogis asuv fail LINT sisaldab kõikvõimalikke parameetreid koos kommentaaridega. Eriliste vajaduste puhul tasub seda faili uurida.

Traditsiooniline kompileerimine ja paigaldamine

Olles saanud tuuma konfiguratsioonifaili redigeerimisega valmis andke korraldus

bash# /usr/sbin/config tuum1

seejärel sisenege kataloogi /sys/compile/tuum1 ja andke korraldus

bash# make depend && make

Lõpuks installeerige uus kernel ja selle moodulid

bash# make install

Kaasaegsem ja lihtsam tuuma kompileermine ja paigaldamine

make buildkernel KERNCONF=TUUM1
make installkernek KERNCONF=TUUM1

muutuja KERNCONF abil tohib defineerida tuumanime juba /etc/make.conf'i alla lihtsustades veelgi kompileerimist.

Olles installeerinud uue kerneli jäetakse ka eelmine kernel nime alla /kernel.old alles. Vana saate kasutada katkestades bootimise ja andes käsu

config> boot /kernel.old 

Samas kirjutatakse kernel.old igakord uuesti yle nii ,et tasuks siiski teha erineva nimealla eelnevast kernelist varukoopja

cd /boot
cp -r kernel.old kernel.generic

Ning boodil tuleb anda käsud.

unload
config>boot /boot/kernel.generic/kernel

Moodulid

Tuuma modulaarsuse põhjuseks on see, et parasjagu mitteoluline kood poleks arvuti mällu laetud ja ei raiskaks süsteemi ressurssi. Moodulid asuvad kataloogis /boot/kernel ja nendega manipuleerimine toimub järgmiste programmidega:

kldstat - kuvatakse nimekiri kernelisse laetud moodulites 
kldload nimi - moodul laetakse mällu 
kldunload nimi - moodul eemaldatakse mälust 


© EENet 2008