Rekompajliranje kernela

Rekompajliranje kernela

offline
  • Cigarette Smoking Man
  • Pridružio: 14 Feb 2005
  • Poruke: 9113
  • Gde živiš: Beograd

Da bi DesktopBSD uspeo da vidi FAT32 particije vece od xx Gb mora da se prekompajlira kernel sa opcijom msdosfs_large, ali to meni nikako ne polazi za rukom..
DBSD dokumentacija nije bas za pocetnike a i nigde nema klasican primer kako to uraditi nego samo uopsteno sa naglaskom da se opcija ubaci "tamo negde".. Forum je takodje neupotrebljiv, ima jedna tema u kojoj je to jako konfuzno objasnjeno. Probao sam kako su rekli ali stalno mi izbacuje neke greske. Moze li mi neko objasniti kako ovo da uradim?

Hvala unapred



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • soxxx 
  • Prijatelj foruma
  • Pridružio: 25 Maj 2005
  • Poruke: 1482
  • Gde živiš: Gracanica, Kosovo

Sto se tice kompajliranje kernela evo malo pomoci. Ceo source za FreeBSD kernel se nalazi u /usr/src/sys i on je neophodan da bi uspesno mogao da kompajlirs kernel. Ako nemas source mozes instalirati sa FreeBSD diska tako sto ces pokrenuti sysinstall:
# sysinstall

i onda Configure, pa Distributions, pa izaberi src, base i sys. Evo link do 'slikovitog' objasnjenja:http://www.cyberciti.biz/faq/freebsd-install-kernel-source-code/

Konfiguracioni fajl za kernel se naziva GENERIC i nalazi se u /usr/src/sys/`machine`/conf/. Ovo `machine` oznacava tvoju masinu, u ovom slucaju i386. Prvo cemo kopirati GENERIC fajl u, recimo, RAPHA_KERNEL. Zasto? Ako ikada budes preterao sa Vodkom u kasne sate i odjednom odlucis da je pravo vreme da promenis konfiguraciju svog kernela, onda ces sam doci do odgovora... Wink Na kraju cemo malo vise pricati o ovome. Dakle:
cd /usr/src/sys/i386/conf
cp GENERIC RAPHA_KERNEL

Sada pocinje ono pravo...otvori RAPHA_KERNEL u tekst editoru koji koristis, ja cu ovde koristiti vi editor. Svaka opcija koja ima '#' znak ispred znaci da opcija nije ukljucena. Ako opcija ne postoji morace da se doda u konfiguracionom fajlu (kao sto je to slucaj kod tebe).

Postoji dosta dokumentacije na netu koja sugerise sta iskljuciti a sta ostaviti u konfiguracionom faju, npr ako ne koristis firewire mozes ukloniti sve one unose za uredjaje koji se ticu njega; ako ne koristis IPv6 onda sta ce ti, gomila nepotrebnih mreznih kartica itd. Ja bih ti preporucio da za pocetak ostavis kako jeste i da samo dodas ono sto ti sada hvali, kada se budes malo bolje upoznao sa opcijama (svaki unos ima objasnjenje) onda mozes poceti da iskljucujes nezeljeno tako sto ces staviti znak '#' ispred te linije.

OK, dodajemo opciju za podrsku FAT32 particija vecih od 128GB:
vi RAPHA_KERNEL
ident RAPHA_KERNEL
options MSDOSFS_LARGE

Izadji i sacuvaj izmene. Ovo ident je ime kernela koje ce se pojavljivati pri podizanju sistema a treca linija je za podrsku koja nam treba. Onda sledi kompajliranje i instaliranje kernela:
cd /usr/src
make buildkernel KERNCONF=RAPHA_KERNEL
make installkernel KERNCONF=RAPHA_KERNEL

Instalacija kernela stari kernel pomeriti u /boot/kernel.old/kernel a novi instalirati kao /boot/kernel/kernel.
I na kraju restart sistema da bi ucitao novi kernel:
# shutdown -r now

To je sve!

Sada mali dodatak, ako nekim slucajem sistem nemoze da ucita kernel on ce prijaviti gresku i prekinuti podizanje sistema. Imas par resenja:

1) Da popijes ostatak Vodtke koju nisi popio onda kada si i resio da promenis konfiguraciju kernela ida onda te zabole i za kernel i za sve ostalo Very HappyVery Happy

2) Da zapises gresku i pokusas da je resis (obicno se greska ispise na ekranu sa dodatnim informacijama, recimo ako si napravio gresku u kucanju prijavi ce ti sintax error na toj liniji:

config -d /usr/obj/usr/src/sys/2RIVERS48 /usr/src/sys/i386/conf/2RIVERS48
config: line 25: syntax error
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.

3) Da podignes sistem sa starim kernelom koji je radio (ili nekim drugim). Pri ucitavanju izaberi opciju 6 Single-User Mode (ili prekini odbrojavanje i ukucaj boot -s) i onda ukucaj:
unload kernel
boot /boot/kernel.old/kernel


E sad, uopste nisam morao da ovoliko davim, moze to ovako da se napise najkrace (naravno bez pravljenja novog kernela je jos krace - tri linije):
# cd /usr/src/sys/i386/conf
# cp GENERIC RAPHA_KERNEL
# echo "options MSDOSFS_LARGE" >> RAPHA_KERNEL
# cd /usr/src
# make buildkernel KERNCONF=RAPHA_KERNEL
# make installkernel KERNCONF=RAPHA_KERNEL
# reboot

Linkovi

Konfigurisanje FreeBSD kernela (FreeBSD Handbook):
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html

Dobro objasnjenje kako rekompajlirati kernel (pronadji "Kako da rekompajliram kernel sa podrskom za zvuk?")l:
http://www.bsd.org.rs/viewthread.php?tid=360

Za objasnjenje i probleme koji mogu nastati koriscenjem MSDOSFS_LARGE opcije u kernelu pogledaj:
http://marc.info/?l=freebsd-bugs&m=116473568227563&w=2

Nadam se da sam ti barem malo pomogao ovim "kratkim" tekstom. Very HappyVery Happy

Poz



offline
  • Cigarette Smoking Man
  • Pridružio: 14 Feb 2005
  • Poruke: 9113
  • Gde živiš: Beograd

E legenda si, probaću pa javljam.. Wink

Dopuna: 03 Okt 2007 21:53

Joj, soxxxe, soxxxitju, fercera, fercera.. Danas nisam imao vremena da se igram sa njim ali sada sedam. Instaliraću ga i na "rezervni" komp..
Hvala ti puno, živeo.. Wink

Ko je trenutno na forumu
 

Ukupno su 876 korisnika na forumu :: 34 registrovanih, 1 sakriven i 841 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: amaterSRB, Bobrock1, Boris BM, Boris90, debeli, Emilija02, FOX, Georgius, HrcAk47, ILGromovnikM2, Još malo pa deda, kybonacci, Lieutenant, Lošmi, Lucije Kvint, Metanoja, Milos ZA, Milos1389, nenaddz, novator, Panter, panzerwaffe, royst33, ruger357, Sass Drake, shone34, Skywhaler, stegonosa, Tila Painen, uruk, Vlada78, vladaa012, VladaKG1980, wizzardone