Milos_SD
Slavan
- Učlanjen(a)
- 15.02.2005
- Poruke
- 653
- Poena
- 320
Moja oprema
- Mobilni telefon
- Samsung Galaxy S8
- Pristup internetu
- Kablovski internet
Trenutna stabilna verzija kernela: 2.6.31
Starija stabilna verzija kernela: 2.6.30.7
Trenutna razvojna verzija kernela: Nema
Danasnja Linux-next verzija (patch): next-20090923 | Base: 2.6.31
Link ka HowTo za old school kompajliranje kernela (vazi za sve distribucije)
Pitate se verovatno zasto biste kompajlirali kernel kada vec postoji generic. Neki od razloga su: Ubuntu nije bas poznat po update-u na novi kernel u toku trajanja trenutne verzije, a vi zelite da stavite novi kernel jer je u njemu podzana wifi kartica koju imate, dok u starom kernelu nije. Dodatne optimizacije i ubrzanja, ispravljeni bug-ovi, avanturistickog ste duha, i tako dalje. Ovo uputstvo bi trebalo da vam pokaze kako se to "famozno" kompajliranje kernela radi. Vecina sigurno misli da je to veliki bauk, ali posle ovog uputstva necete tako misliti.
Pa da krenemo.
1) Instaliranje potrebnih paketa:
2) Prebacite se u direktorijum u kojem zelite da vam bude kernel source. Neki ovde predlazu da to bude /usr/src, ali cu ja u ovom uputstvo uraditi tako da to bude u folderu KERNEL koji ce da se nalazi u vasem home direktorijumu.
- Otvorite terminal: Applications -> Accessories -> Terminal
-Pravimo direktorijum KERNEL:
3) Da ne bi uvek pisali sudo pre svake komande, ukucajte
da postanete root.
4) Sada cemo uci u naprevljen KERNEL direktorijum, skinucemo i otpakovacemo najnoviji (u toku pisanja ovog uputstva, ali cu ga update-ovati uvek kada izadjene nova revizija) kernel:
5) Sada cemo da udjemo u direktorijum linux-2.6.30.5:
6) Sledeci korak je importovanje konfiguracije i opcija trenutnog kernela:
7) Sada cemo ukljuciti graficki konfigurator opcija kernela da podesimo kernel po nasem ukusu:
8 ) Otvorice vam se graficki prozor u kome cete imati mnogo opcija za ukljucivanje i iskljucivanje. Ovde cu navesti samo neke vaznije stvari:
- Prvo sto cete uraditi jeste da pritisnete CTRL+F i trazite rec "debug" (bez navodnika naravno), kliknete na Search i iskljucite sto vise opcija koje u sebi imaju red "debug", ovo ce vam mnogo smanjiti velicinu kernel image-a.
- Nakon toga izadjite iz search prozora i
- Sledeca stvar je da idete u
Sledece sto trebate da uradite jeste da u
- Sada idite u
To bi otprilike bilo najvaznije, sada mozete da malo istrazujete i iskljucite neke drajvere za hardware koji nemate, npr. za web kamere i TV kartice koje nemate, ili ako nemate wireless karticu iskljucite Wireless opciju i tako dalje ... Istrazujte malo.
Ako imate Ubuntu 8.10 onda nemate ukljucenu podrsku za ext4 fajl sistem, tako da idite u
9) Kada ste zavrsili sa podesavanjima kliknite na Save ikonicu i izadjite iz prozora.
10) Sada u terminalu ukucajte sledece:
- A kada to zavrsi ukucajte sledece:
Napomena: CONCURRENCY_LEVEL je korisna opcija ako imate neki multicore procesor kao sto su Core2Duo/Quad ili AMD X2,X3,X4. Broj iza znaka "=" oznacava Cores+1, tako da, ako imate dual core upisite tu 3, a ako imate quad core upisite 5.
Opcija --append-to-version= sluzi da upisete naziv ravizije kernela. Tu mozete upisati bilo sta umesto ovog "custom", samo sto MORA da ostane "-". Na primer:
. Tako da ce vam se kernel zvati 2.6.30.4-bench.
Gore navedena komanda ce poceti kompajliranje kernela i pravljenje .deb paketa za kernel image i kernel headers. Ako imate neki multicore procesor, kompajliranje ne bi trebalo da traje duze od pola sata, ali ako imate neki single core procesor, kompajliranje ce sigurno potrajati od sat vremena, pa cak i to 4 sata ako imate neki stariji komp. Tako da mozete otici da popijete kafu, odigrate koju partiju basketa (lepo je vreme) ili sta god zelite.
11) Kada se kompajliranje zavrsilo, vreme je da instalirate naprevljene pakete:
*.deb opcija kaze da instalira sve .deb pakete u trenutnom folderu, a to je folder KERNEL.
Napomena: Najverovatnije svi imaju instaliran paket nvidia-common koji ce praviti probleme pri instaliranju ovog kernela, tako da pre izvrsavanja gore navedene komande "dpkg" uradite:
Nakon toga uradite gore navedenu dpkg komandu da bi instalirali novi kernel. Kada se kompajliranje zavrsi, instalirajte ponovo nvidia-common:
Ne znam da li ova napomena vazi za sve, ili samo za one koji imaju Nvidia graficke, tako da je preporucljivo da svi to uradite za svaki slucaj.
12) Ako imate instaliran neki vlasnicki drajver za ATI ili Nvidia graficke kartice, obrisite ga i restartujte komp u novi kernel. Najverovatnije ce vas docekati konzola ili okruzenje bez 3D akseleracije. Da bi ste instalirali vlasnicki drajver za ATI ili Nvidia uradite sledece:
Posto nemam ATI karticu, ne znam kako se instalira, ali imate uputstvo na OVOJ stranici. Zanima vas samo deo: "Install from ati.com (latest version of drivers)"
A sto se tice Nvidia drajvera, ispratite sledece uputstvo:
http://www.ubuntu-rs.org/forum/viewthread.php?tid=6717&goto=search&pid=78339
A drajver za vasu karticu skinite sa:
http://www.nvidia.com/Download/index.aspx?lang=en-us
To bi bilo to narode. Ako budete imali bilo kakvih problema, uvek mozete izabrati -generic kernel iz grub-a.
Dodatak: Preporucljivo je da u make xconfig-u pretrazite sve sto ima u sebi rec "debug" i iskljucite. Pretragu vrsite preko precice: CTRL+F. Ovo je preporucljivo jer bi vam inace kernel image bio preko 100 MB, a bez oko 15-20 MB, ako ne i manje.
Starija stabilna verzija kernela: 2.6.30.7
Trenutna razvojna verzija kernela: Nema
Danasnja Linux-next verzija (patch): next-20090923 | Base: 2.6.31
Link ka HowTo za old school kompajliranje kernela (vazi za sve distribucije)
Pitate se verovatno zasto biste kompajlirali kernel kada vec postoji generic. Neki od razloga su: Ubuntu nije bas poznat po update-u na novi kernel u toku trajanja trenutne verzije, a vi zelite da stavite novi kernel jer je u njemu podzana wifi kartica koju imate, dok u starom kernelu nije. Dodatne optimizacije i ubrzanja, ispravljeni bug-ovi, avanturistickog ste duha, i tako dalje. Ovo uputstvo bi trebalo da vam pokaze kako se to "famozno" kompajliranje kernela radi. Vecina sigurno misli da je to veliki bauk, ali posle ovog uputstva necete tako misliti.
Pa da krenemo.
1) Instaliranje potrebnih paketa:
Kod:
sudo apt-get install build-essential bin86 kernel-package libqt3-headers libqt3-mt-dev wget libncurses5 libncurses5-dev
2) Prebacite se u direktorijum u kojem zelite da vam bude kernel source. Neki ovde predlazu da to bude /usr/src, ali cu ja u ovom uputstvo uraditi tako da to bude u folderu KERNEL koji ce da se nalazi u vasem home direktorijumu.
- Otvorite terminal: Applications -> Accessories -> Terminal
-Pravimo direktorijum KERNEL:
Kod:
mkdir KERNEL
3) Da ne bi uvek pisali sudo pre svake komande, ukucajte
Kod:
sudo su
4) Sada cemo uci u naprevljen KERNEL direktorijum, skinucemo i otpakovacemo najnoviji (u toku pisanja ovog uputstva, ali cu ga update-ovati uvek kada izadjene nova revizija) kernel:
Kod:
cd KERNEL
Kod:
wget -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.5.tar.bz2 && tar -xvjf linux-2.6.30.5.tar.bz2
5) Sada cemo da udjemo u direktorijum linux-2.6.30.5:
Kod:
cd linux-2.6.30.5
6) Sledeci korak je importovanje konfiguracije i opcija trenutnog kernela:
Kod:
cp /boot/config-$(uname -r) .config && yes "" | make oldconfig
7) Sada cemo ukljuciti graficki konfigurator opcija kernela da podesimo kernel po nasem ukusu:
Kod:
make xconfig
8 ) Otvorice vam se graficki prozor u kome cete imati mnogo opcija za ukljucivanje i iskljucivanje. Ovde cu navesti samo neke vaznije stvari:
- Prvo sto cete uraditi jeste da pritisnete CTRL+F i trazite rec "debug" (bez navodnika naravno), kliknete na Search i iskljucite sto vise opcija koje u sebi imaju red "debug", ovo ce vam mnogo smanjiti velicinu kernel image-a.
- Nakon toga izadjite iz search prozora i
. Tu cete naci opcijuGeneral setup
i stikliracete je.Optimize for size
- Sledeca stvar je da idete u
i tu cete ukljuciti (ako vec nije ukljuceno):Processor type and features
Onda cete u deluTickless System (Dynamic Ticks) i High Resolution Timer Support
izabrati familiju vaseg procesora.Processor family
Sledece sto trebate da uradite jeste da u
izaberete 1000Hz.Timer frequency
- Sada idite u
i iskljuciteParavirtualized guest support
inace vam se kernel nece boot-ovati.Xen quest support
To bi otprilike bilo najvaznije, sada mozete da malo istrazujete i iskljucite neke drajvere za hardware koji nemate, npr. za web kamere i TV kartice koje nemate, ili ako nemate wireless karticu iskljucite Wireless opciju i tako dalje ... Istrazujte malo.
Ako imate Ubuntu 8.10 onda nemate ukljucenu podrsku za ext4 fajl sistem, tako da idite u
i ukljucite sve opcije koje imaju ext4 u sebi, osim debuging opcije.File systems
9) Kada ste zavrsili sa podesavanjima kliknite na Save ikonicu i izadjite iz prozora.
10) Sada u terminalu ukucajte sledece:
Kod:
make-kpkg clean
- A kada to zavrsi ukucajte sledece:
Kod:
CONCURRENCY_LEVEL=3 make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers
Napomena: CONCURRENCY_LEVEL je korisna opcija ako imate neki multicore procesor kao sto su Core2Duo/Quad ili AMD X2,X3,X4. Broj iza znaka "=" oznacava Cores+1, tako da, ako imate dual core upisite tu 3, a ako imate quad core upisite 5.
Opcija --append-to-version= sluzi da upisete naziv ravizije kernela. Tu mozete upisati bilo sta umesto ovog "custom", samo sto MORA da ostane "-". Na primer:
Kod:
--append-to-version=-bench
Gore navedena komanda ce poceti kompajliranje kernela i pravljenje .deb paketa za kernel image i kernel headers. Ako imate neki multicore procesor, kompajliranje ne bi trebalo da traje duze od pola sata, ali ako imate neki single core procesor, kompajliranje ce sigurno potrajati od sat vremena, pa cak i to 4 sata ako imate neki stariji komp. Tako da mozete otici da popijete kafu, odigrate koju partiju basketa (lepo je vreme) ili sta god zelite.
11) Kada se kompajliranje zavrsilo, vreme je da instalirate naprevljene pakete:
Kod:
cd ..
Kod:
dpkg -i *.deb
Napomena: Najverovatnije svi imaju instaliran paket nvidia-common koji ce praviti probleme pri instaliranju ovog kernela, tako da pre izvrsavanja gore navedene komande "dpkg" uradite:
Kod:
apt-get purge nvidia-common
Kod:
apt-get install nvidia-common
12) Ako imate instaliran neki vlasnicki drajver za ATI ili Nvidia graficke kartice, obrisite ga i restartujte komp u novi kernel. Najverovatnije ce vas docekati konzola ili okruzenje bez 3D akseleracije. Da bi ste instalirali vlasnicki drajver za ATI ili Nvidia uradite sledece:
Posto nemam ATI karticu, ne znam kako se instalira, ali imate uputstvo na OVOJ stranici. Zanima vas samo deo: "Install from ati.com (latest version of drivers)"
A sto se tice Nvidia drajvera, ispratite sledece uputstvo:
http://www.ubuntu-rs.org/forum/viewthread.php?tid=6717&goto=search&pid=78339
A drajver za vasu karticu skinite sa:
http://www.nvidia.com/Download/index.aspx?lang=en-us
To bi bilo to narode. Ako budete imali bilo kakvih problema, uvek mozete izabrati -generic kernel iz grub-a.
Dodatak: Preporucljivo je da u make xconfig-u pretrazite sve sto ima u sebi rec "debug" i iskljucite. Pretragu vrsite preko precice: CTRL+F. Ovo je preporucljivo jer bi vam inace kernel image bio preko 100 MB, a bez oko 15-20 MB, ako ne i manje.
Poslednja izmena od urednika: