Почетак › Форуми › Линукс дистрибуције › OpenSuSE › SuSE 9.3 – kompajliranje kernela
- This topic has 21 одговор, 8 гласова, and was last updated 21 years, 2 months раније by
popeye.
-
АуторЧланци
-
25. мај 2005. у 2:14 am #5431
jboban
УчесникVeć dva puta sam pokušao da kompajliram kernel, sve prošlo korektno, ali SuSE posle toga ne može da se startuje. Problem lako rešim Repair procedurom sa CD-a, ali me zanima gde je greška.
Uradio sam sledeće (po sećanju):
– iz KDE startovao konzolu i kao root otišao u /usr/src/Linux
– kucao make oldconfig i dobio .config fajl
– kucao make xconfig i editovao ga
– samo promenio CPU tip sa Generic x86 na Athlon i snimio
– kucao make clean
– make bzImage
– make modules
– INSTALL_PATH=/boot make install
– make modules_install
– na kraju rucno iskopiram Symbols.map u /boot
– resetujem i više ne mogu startovati Linux. Dobijam poruke tipa:[code]Loading kernel /drivers/ide/ide-core.ko
ide_core: version magic ‘2.6.11.4-20a-default 586 REGPARM gcc-3.3’ should be ‘2.6.11.4-20a-default K7 REGPARM gcc-3.3’
[/code]
Rekao bih da i drajveri moraju biti kompajlirani za isti CPU tip (ovde K7), ali zar to nije uradjeno sa make modules?
Koji je uopšte najjednostavniji način da se uradi rebuild kernela, eventualno nešto promeni, izbaci suvišno i sl.?
Nadam se da mi niko neće postaviti čuveno filozofsko pitanje: A čemu sve to? 🙄1. јун 2005. у 12:29 pm #28860nesha
Учесникu konfiguraciju kernela stavi da ti je driver za reiserfs ukompajliran u kernel umesto kao modul, inace ces morati da pravis initrd sa svim modulima koji ti trebaju za uspesan boot.
Ovo resenje mi je redovno palilo za sve verzije SUSE jos od 7.0.Pozdrav
1. јун 2005. у 4:22 pm #28861LYb
УчесникInstalirao si module, ali nisi novi kernel. Prekopiraj iz /usr/src/linux/arch/i386/boot/bzImage u /boot/vmlinuz
1. јун 2005. у 7:30 pm #28862jboban
Учесникu konfiguraciju kernela stavi da ti je driver za reiserfs ukompajliran u kernel umesto kao modul
Ima logike, ali sam negde u podešavanju konfiguracije video da baš postoji opcija korišćenja inicijalnog ram diska ili ne i da je uključena, a upravo njega pravi mkinitrd. Možda sa ovim tvojim načinom, kad kernel već ima ugradjenu podršku za fajl sistem, uspe da se oporavi pa prodje. Svakako ću pokušati i taj način jer si me zainteresovao, mada mislim da je i mkinitrd krajnje regularan način.
Instalirao si module, ali nisi novi kernel. Prekopiraj iz /usr/src/linux/arch/i386/boot/bzImage u /boot/vmlinuz
Nije to problem. Red u kome piše INSTALL_PATH=/boot make install, radi izmedju ostalog i kopiranje bzImage u vmlinuz. Jedino što mora naknadno i svojeručno da se uradi je kopiranje System.map fajla u /boot direktorijum što mi je malo čudno što i to ne radi install procedura.
Inače, u medjuvremenu sam uspešno uradio kompajliranje kernela (čak više puta :wink:), a ključna stvar je bila mkinitrd na kraju. To sam u jednoj temi već napisao.
Svejedno, hvala svima na pomoći.
Inače, bilo bi interesantno da neko ko ima više iskustva napiše šta od opcija kod kompajliranja značajnije utiče na performanse. Ja sam isključio neke stvari za koje sam siguran da neće poremetiti rad sistema.1. јун 2005. у 10:56 pm #28863LYb
УчесникPade mi na pamet… probaj da umesto
make bzImage
make modulesradis samo ‘make all’
cudno je, ali ja sam imao gotovo identican problem, kada je kernel bio kompajliran kao preemptive, a moduli nisu.
2. јун 2005. у 7:44 am #28864mtm76
УчесникJel se meni čini, ili je ovaj isti problem (isti post) bio i uspješno riješen prije 2-3 dana… 🙄 koristiš stari initrd sa novim kernelom i tu je problem… garant si samo prebrisao stari kernel sa novim… a postavke boot loader-a su ostale iste… ako misliš kompajlirat podršku za svoj filesystem direktno u kernel, dooobro pazi, jer koliko vidim kompajliraš postojeći kernel… sve što staviš direktno u kernel, mora biti izbrisano iz /lib/modules/xxx, inače eto tebe nazad vrlo brzo 😉 valjda si dosad 100 put čuo da se ne preporučuje kompajliranje postojećeg (i jedinog) kernela ako ne znaš šta radiš.
2. јун 2005. у 9:57 am #28865jboban
УчесникJel se meni čini, ili je ovaj isti problem (isti post) bio i uspješno riješen prije 2-3 dana
Sećanje te još dobro služi iako koristiš Linux, pa nisi još za otpis 😀
Ljudi su dali odgovor, a problem je u medjuvremenu već bio rešen, pa smo prodiskutovali o rešenju i novim detaljima.sve što staviš direktno u kernel, mora biti izbrisano iz /lib/modules/xxx
Nisam ništa uključivao direktno što se inače poziva po potrebi kao modul. Hteo sam samo da isključim nepotrebno.
valjda si dosad 100 put čuo da se ne preporučuje kompajliranje postojećeg (i jedinog) kernela ako ne znaš šta radiš.
Čuo, ali što reče nekad Sledž Hamer: Veruj mi, znam šta radim 8)
3. јун 2005. у 7:28 pm #28866nkosta
Учесникsamo promenio CPU tip sa Generic x86 na Athlon i snimio
– kucao make clean
ja sam se nesto pobrkao … a da nisi umesto clean kucao check ?
Ovaj clean dolazi , (valjda?) kad cistis direktorijum , na kraju
btw i ja sam zabrljao , verovatno imam problem za initrd pa cu videti za vikend.
p.s. jedoni sto me u zivotu `oce od kompajliranih kernela to je kad ga napravim onako MONOLITIC tj. ugasim mu module a ubacim samo one sto mi stvarno trebaju ( ubili bi me ovi sto su izmislili modularne kernele)[/quote]3. јун 2005. у 7:59 pm #28867popeye
Главни мајсторDa se malo našalim, šta kažeš ortaku kad ti dođe u posetu sa novim USB uređajem (MP3 plejer, foto aparat, disk, šta bilo…) i probate da ga priključite?
“Sedi, sa’će kafica, dok ja ponovo prevedem jezgro?” 😛
Ili strpaš u jezgro _sve_ stavke koje nađeš?
Šalim se, ali me i zanima u čemu je svrha isključivanje podrške za module iz (ionako problematičnog monolitnog) jezgra? Mene lično bi veoma nerviralo da moram prevoditi jezgro svaki put kad (voljno ili silom prilika) menjam hardver. Recimo, otkaže mi ploča i pošto postavim novu, dižem sistem sa instalacionog diska, jer u trenutnom jezgru nemam drajvere za novi čipset?
3. јун 2005. у 8:33 pm #28868sanel_nbg22
Учесник@ popeye: Ako tako posmatras stvari onda bi trebalo sve ukljuciti u kernel (bar kao module), zar ne?
Ja ukljucim ono sto mi treba ili ce mi mozda zatrebati u skorijoj buducnosti. Stampac recimo ne ukljucujem jer ga nemam niti imam nameru u skorije vreme da ga uzimam a i ako ga uzmem neplanirano vec cu iskompajlirati kernel. Uostalom ako znas sta ti treba to je 10min posla 🙂 (bar za nas sa brzim masinama 😛 )
-
АуторЧланци
Мораш бити пријављен да би поставио коментар у овој теми.