Differences

This shows you the differences between two versions of the page.

Link to this comparison view

so2:laboratoare:lab_compilare [2013/02/24 17:59]
paul.vlase [initrd - ramdisk-ul inițial]
so2:laboratoare:lab_compilare [2013/05/24 13:38] (current)
ghennadi.procopciuc [Instalare imagine kernel]
Line 105: Line 105:
 Sursele de kernel de Linux pot fi obținute din pachete specifice distribuției sau pot fi descărcate sursele [[http://​www.kernel.org|oficiale]] ale lui [[http://​en.wikipedia.org/​wiki/​Linus_Torvalds|Linus Torvalds]]. Sursele de kernel de Linux pot fi obținute din pachete specifice distribuției sau pot fi descărcate sursele [[http://​www.kernel.org|oficiale]] ale lui [[http://​en.wikipedia.org/​wiki/​Linus_Torvalds|Linus Torvalds]].
  
-În cazul în care se alege varianta folosirii surselor oficiale, se recomandă folosirea unui [[http://www.kernel.org/​mirrors|mirror]] din [[http://​www.kernel.org/​mirrors/​countries/​html/​RO.html|Romania]].+În cazul în care se alege varianta folosirii surselor oficiale, se recomandă folosirea unui [[http://mirrors.kernel.org/​|mirror]] din [[http://​www.kernel.org/​mirrors/​countries/​html/​RO.html|Romania]].
  
 Sursele kernel-ului se găsesc în subdirectorul ''/​pub/​linux/​kernel/​v2.6''​ (pentru versiunea 2.6). Se poate folosi http sau ftp pentru obținerea surselor: Sursele kernel-ului se găsesc în subdirectorul ''/​pub/​linux/​kernel/​v2.6''​ (pentru versiunea 2.6). Se poate folosi http sau ftp pentru obținerea surselor:
Line 220: Line 220:
 Faza de compilare presupune **obținerea** imaginii de kernel și compilarea **modulelor** de kernel. Acest lucru se realizează prin intermediul a doua comenzi: Faza de compilare presupune **obținerea** imaginii de kernel și compilarea **modulelor** de kernel. Acest lucru se realizează prin intermediul a doua comenzi:
  
-<​code>​+<​code ​make>
 # make bzImage # make bzImage
 # make modules # make modules
 </​code>​ </​code>​
  
-Prima comandă creează o imagine de kernel comprimată. Acest pas poate dura de la cateva ​minute până la câteva zeci, depinzând de configurația hardware. ​Dupa încheiere, imaginea comprimată se regasește în ''​arch/​i386/​boot/​bzImage''​ (pentru o arhitectura x86).+Prima comandă creează o imagine de kernel comprimată. Acest pas poate dura de la câteva ​minute până la câteva zeci, depinzând de configurația hardware. ​După încheiere, imaginea comprimată se regasește în ''​arch/​i386/​boot/​bzImage''​ (pentru o arhitectura x86).
  
-A doua comandă compilează **modulele** care pot fi încărcate de kernel. Acest pas poate dura de cateva ​ori mai mult decat pasul precedent. Fișierele obiect ce reprezintă modulele (cu extensia ''​.ko''​) rezidă în directoarele asociate, urmând a fi instalate.+A doua comandă compilează **modulele** care pot fi încărcate de kernel. Acest pas poate dura de câteva ​ori mai mult decât ​pasul precedent. Fișierele obiect ce reprezintă modulele (cu extensia ''​.ko''​) rezidă în directoarele asociate, urmând a fi instalate.
  
 ==== Instalare ==== ==== Instalare ====
Line 241: Line 241:
  
 Imaginea de kernel va trebui copiată în ''/​boot'':​ Imaginea de kernel va trebui copiată în ''/​boot'':​
-<​code>​+<​code ​bash>
 # cd /​usr/​src/​linux # cd /​usr/​src/​linux
 # cp arch/​x86/​boot/​bzImage /​boot/​vmlinuz-2.6.24.2mykernel # cp arch/​x86/​boot/​bzImage /​boot/​vmlinuz-2.6.24.2mykernel
Line 250: Line 250:
 În plus față de imaginea de kernel, se recomandă copierea fișierului de configurare și a tabelei de simboluri. În plus față de imaginea de kernel, se recomandă copierea fișierului de configurare și a tabelei de simboluri.
  
-<​code>​+<​code ​bash>
 # cd /​usr/​src/​linux # cd /​usr/​src/​linux
 # cp .config /​boot/​config-2.6.24.2mykernel # cp .config /​boot/​config-2.6.24.2mykernel
Line 270: Line 270:
 <​code>​ <​code>​
 # cd /boot # cd /boot
-mkinitrd ​-o /​boot/​initrd.img-2.6.24.2mykernel 2.6.24.2mykernel+mkinitramfs ​-o /​boot/​initrd.img-2.6.24.2mykernel 2.6.24.2mykernel
 </​code>​ </​code>​
  
Line 306: Line 306:
 Pentru rularea noului kernel, va trebui repornit sistemul și optat pentru noul kernel din meniul bootloader-ului. ​ Pentru rularea noului kernel, va trebui repornit sistemul și optat pentru noul kernel din meniul bootloader-ului. ​
  
-    ​*TENTIE**: Se recomandă păstrarea fostului kernel, în cazul în care apar probleme la noul kernel compilat. Probleme pot aparea din neincluderea driver-elor necesare în cazul în care nu se folosește initrd, omiterea driver-ului de sistem de fișiere necesar etc.+**ATENTIE**: Se recomandă păstrarea fostului kernel, în cazul în care apar probleme la noul kernel compilat. Probleme pot aparea din neincluderea driver-elor necesare în cazul în care nu se folosește initrd, omiterea driver-ului de sistem de fișiere necesar etc.
  
 E posibil sa avem la dispoziție un kernel care ruleaza dar caruia ii lipsesc funcționalitați (de exemplu networking),​ pentru ca s-a omis compilarea driver-elor pentru placa de rețea. În acest caz se poate recompila kernel-ul pentru introducerea noilor funcționalități. Noua compilare va dura mai puțin în cazul în care modificările sunt minime. E posibil sa avem la dispoziție un kernel care ruleaza dar caruia ii lipsesc funcționalitați (de exemplu networking),​ pentru ca s-a omis compilarea driver-elor pentru placa de rețea. În acest caz se poate recompila kernel-ul pentru introducerea noilor funcționalități. Noua compilare va dura mai puțin în cazul în care modificările sunt minime.
so2/laboratoare/lab_compilare.1361721589.txt.gz · Last modified: 2013/02/24 17:59 by paul.vlase
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0