Siteuri partenere

Pentru a va inscrie pe Ubuntu One puteti da click aici (referal) și câștigăm amândoi câțiva MB spațiu de stocare.

vineri, 10 iulie 2015

Compilare kernel Linux/Ubuntu

Astăzi una scurtă despre compilarea unui kernel pe Linux/Ubuntu și derivatele Ubuntu.
Zilele trecute aveam ceva timp liber și am zis să încerc să compilez un kernel pentru laptopul meu. Adică un kernel care să conțină doar cele necesare funcționării sistemului meu și atât. Ca surse de inspirație principale, în afară de cele ce se găsesc la o simplă căutare pe Google, au fost forumul Ubuntu și blogul lui V3n3RiX. Recomand cu căldură să citiți ce este pe acolo, sunt chestii utile. 
Fără prea multă vorbă, să trecem la ce ne doare. Cum ultima versiune de kernel stabilă la momentul ăsta este 4.1.1, voi folosi asta în exemplul meu. Dacă nu, mergem frumos pe kernel.org și vedem ce versiune de kernel vrem/ne trebuie.Prima dată instalăm cele necesare:

sudo apt-get install build-essential kernel-package dkms libncurses5-dev
libncurses este necesar dacă vrem să rulăm comanda make nconfig de mai jos. Apoi deschidem un terminal și dăm pe rând comenzile de mai jos:

sudo su - 
cd /usr/src 
wget -c https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.1.1.tar.xz 
unxz linux-4.1.1.tar.xz 
tar xvf linux-4.1.1.tar 
ln -s linux-4.1.1 linux 
cd /usr/src/linux 
cp /boot/config-`uname -r` ./.config 
make localmodconfig 
make nconfig 
Comanda make nconfig  este  opțională, dacă vrem să modificăm opțiunile alese de comanda precedentă
Este posibil ca la comanda make localmodconfig să ni se ceară să acceptăm/refuzăm mai multe opțiuni, dacă versiunea de kernel este mai nouă decât ceea ce avem instalat în sistem. Putem lăsa opțiunile implicite, dacă nu știm ce anume să alegem. O căutare pe Google după opțiunea respectivă ne poate lămuri, dar asta cere timp destul de mult. 
Acum, pentru pasul final, avem mai multe opțiuni (aici părerile sunt împărțite, eu prefer să fac pachete .deb ca să le pot instala pe mai multe sisteme Ubuntu instalate pe laptop). Adică fac așa:

make -j `getconf _NPROCESSORS_ONLN` deb-pkg


Comanda de mai sus va crea pachete .deb folosind la compilare toate nucleele procesorului. dacă știm exact câte nuclee ar procesorul (4, de exemplu), putem da direct comanda 
make -j4 deb-pkg

2. Pentru instalat kernelul direct

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites More