| 1 |
<!-- retain these comments for translator revision tracking -->
|
| 2 |
<!-- original version: 36730 -->
|
| 3 |
|
| 4 |
<sect1 id="kernel-baking"><title>Compilant un nou nucli</title>
|
| 5 |
<para>
|
| 6 |
|
| 7 |
Per què algú voldria compilar un nou nucli? Sovint no és necessari,
|
| 8 |
ja que el nucli que distribueix Debian gestiona la majoria de les
|
| 9 |
configuracions. Debian també ofereix sovint uns quants nuclis alternatius.
|
| 10 |
Per tant, pot ser que vulgueu comprovar primer si hi ha algun paquet d'imatge
|
| 11 |
de nucli alternatiu que correspon millor al vostre maquinari. Tot i això,
|
| 12 |
compilar un nou nucli pot ser útil per:
|
| 13 |
|
| 14 |
<itemizedlist>
|
| 15 |
<listitem><para>
|
| 16 |
|
| 17 |
gestionar maquinari especial o conflicte de maquinari amb els
|
| 18 |
nuclis proporcionats
|
| 19 |
|
| 20 |
</para></listitem>
|
| 21 |
<listitem><para>
|
| 22 |
|
| 23 |
utilitzar opcions del nucli que no estan suportades pels nuclis
|
| 24 |
proporcionats (algunes com suport de gran memòria)
|
| 25 |
|
| 26 |
</para></listitem>
|
| 27 |
<listitem><para>
|
| 28 |
|
| 29 |
optimitzar el nucli suprimint controladors inútils per tal
|
| 30 |
d'agilitzar el temps d'arrencada
|
| 31 |
|
| 32 |
</para></listitem>
|
| 33 |
<listitem><para>
|
| 34 |
|
| 35 |
crear un nucli monolític en comptes d'un de modular
|
| 36 |
|
| 37 |
</para></listitem>
|
| 38 |
<listitem><para>
|
| 39 |
|
| 40 |
executar un nucli actualitzat o de desenvolupament
|
| 41 |
|
| 42 |
</para></listitem>
|
| 43 |
<listitem><para>
|
| 44 |
|
| 45 |
aprendre més sobre nuclis de linux
|
| 46 |
|
| 47 |
</para></listitem>
|
| 48 |
</itemizedlist>
|
| 49 |
|
| 50 |
</para>
|
| 51 |
|
| 52 |
<sect2><title>Gestió de la imatge del nucli</title>
|
| 53 |
<para>
|
| 54 |
|
| 55 |
No tingueu por a l'hora de compilar el nucli. És divertit i profitós.
|
| 56 |
|
| 57 |
</para><para>
|
| 58 |
|
| 59 |
Per compilar un nucli a la manera de Debian, necessiteu alguns paquets:
|
| 60 |
<classname>fakeroot</classname>, <classname>kernel-package</classname>,
|
| 61 |
<phrase condition="classic-kpkg"><classname>kernel-source-&kernelversion;</classname>
|
| 62 |
(l'última versió en el moment d'escriure aquest document)</phrase>
|
| 63 |
<phrase condition="common-kpkg"><classname>linux-source-2.6</classname></phrase>
|
| 64 |
i alguns d'altres que probablement ja teniu instal·lats
|
| 65 |
(per accedir a la llista completa vegeu
|
| 66 |
<filename>/usr/share/doc/kernel-package/README.gz</filename>).
|
| 67 |
|
| 68 |
</para><para>
|
| 69 |
|
| 70 |
A través d'aquest mètode es generarà un .deb del codi font del nucli,
|
| 71 |
i en el cas que disposeu de mòduls no estàndard en crearà un .deb
|
| 72 |
dependent sincronitzat. És un mètode millor per gestionar imatges del nucli;
|
| 73 |
el directori <filename>/boot</filename> contindrà el nucli, el System.map i
|
| 74 |
un registre del fitxer de configuració actiu del muntatge.
|
| 75 |
|
| 76 |
</para><para>
|
| 77 |
|
| 78 |
Recordeu que no <emphasis>forçosament heu</emphasis> de compilar el nucli
|
| 79 |
seguint el <quote>mètode Debian</quote>; però creiem que utilitzar el sistema
|
| 80 |
d'empaquetat per gestionar el nucli és la manera més segura i fàcil. De fet,
|
| 81 |
podeu descarregar el codi font del nucli directament del Linus en comptes de
|
| 82 |
<phrase condition="classic-kpkg"><classname>kernel-source-&kernelversion;</classname>,</phrase>
|
| 83 |
<phrase condition="common-kpkg"><classname>linux-source-2.6</classname>,</phrase>
|
| 84 |
ja que utilitza el mètode de compilació <classname>kernel-package</classname>.
|
| 85 |
|
| 86 |
</para><para>
|
| 87 |
|
| 88 |
Recordeu que trobareu documentació respecte a la utilització de
|
| 89 |
<classname>kernel-package</classname> al directori
|
| 90 |
<filename>/usr/share/doc/kernel-package</filename>. Aquesta
|
| 91 |
secció únicament conté un petit tutorial.
|
| 92 |
|
| 93 |
</para><para>
|
| 94 |
|
| 95 |
S'assumeix que disposeu de llibertat absoluta sobre el vostre sistema i que
|
| 96 |
extraureu el codi font del nucli en algun lloc del vostre directori
|
| 97 |
personal<footnote>
|
| 98 |
|
| 99 |
<para>
|
| 100 |
|
| 101 |
Hi ha d'altres ubicacions on podeu extreure el codi font del nucli i generar
|
| 102 |
el vostre nucli personalitzat, però aquest és el més fàcil al no precisar
|
| 103 |
de permisos especials.
|
| 104 |
|
| 105 |
</para>
|
| 106 |
|
| 107 |
</footnote>. Assumirem que la vostra versió del nucli és &kernelversion;.
|
| 108 |
Assegureu-vos d'estar al directori on voleu desempaquetar el codi
|
| 109 |
font del nucli, extraieu-lo utilitzant l'ordre
|
| 110 |
<phrase condition="classic-kpkg"><userinput>tar xjf
|
| 111 |
/usr/src/kernel-source-&kernelversion;.tar.bz2</userinput></phrase>
|
| 112 |
<phrase condition="common-kpkg"><userinput>tar xjf
|
| 113 |
/usr/src/linux-source-&kernelversion;.tar.bz2</userinput></phrase>
|
| 114 |
i entreu al directori que s'haurà creat
|
| 115 |
<phrase condition="classic-kpkg"><filename>kernel-source-&kernelversion;</filename></phrase>
|
| 116 |
<phrase condition="common-kpkg"><filename>linux-source-&kernelversion;</filename></phrase>
|
| 117 |
.
|
| 118 |
|
| 119 |
|
| 120 |
</para><para>
|
| 121 |
|
| 122 |
Ja podeu configurar el nucli. Si teniu instal·lat, configurat i executant-se
|
| 123 |
l'X11, executeu l'ordre <userinput>make xconfig</userinput>; si no el teniu
|
| 124 |
instal·lat executeu l'ordre <userinput>make menuconfig</userinput> (haureu
|
| 125 |
de tenir instal·lat <classname>libncurses5-dev</classname>). Preneu-vos el
|
| 126 |
temps necessari per llegir l'ajuda en línia i seleccionar les opcions de
|
| 127 |
forma acurada. En cas de dubte, normalment és millor introduir el controlador
|
| 128 |
del dispositiu (el programari que gestiona els perifèrics com la targeta
|
| 129 |
Ethernet, controladors SCSI i similars). Recordeu que en cas de no entendre
|
| 130 |
d'altres opcions no relacionades amb un maquinari específic, les hauríeu de
|
| 131 |
deixar amb el valor predeterminat. No oblideu seleccionar l'opció
|
| 132 |
<quote>Carregador de mòduls del nucli</quote> a <quote>Suport de mòduls
|
| 133 |
carregables</quote> (per defecte no està seleccionat). En cas de no incloure
|
| 134 |
l'opció, hi hauria problemes amb la instal·lació de Debian.
|
| 135 |
|
| 136 |
</para><para>
|
| 137 |
|
| 138 |
Netegeu l'arrel del codi font i reinicia els paràmetres
|
| 139 |
<classname>kernel-package</classname>. Per a fer-ho, utilitzeu
|
| 140 |
l'ordre <userinput>make-kpkg clean</userinput>.
|
| 141 |
|
| 142 |
</para><para>
|
| 143 |
|
| 144 |
Seguidament heu de compilar el nucli:
|
| 145 |
<userinput>fakeroot make-kpkg --initrd --revision=custom.1.0 kernel_image</userinput>.
|
| 146 |
El número de versió <quote>1.0</quote> es pot modificar; és únicament
|
| 147 |
un número de versió que s'utilitzarà per registrar les generacions del nucli.
|
| 148 |
Podeu utilitzar qualsevol paraula enlloc de <quote>custom</quote>
|
| 149 |
(ex. un nom d'ordinador). La duració de la compilació del nucli
|
| 150 |
dependrà de la potència de l'ordinador.
|
| 151 |
|
| 152 |
|
| 153 |
</para><para>
|
| 154 |
|
| 155 |
Un cop finalitzada la compilació, podeu instal·lar el nucli personalitzat
|
| 156 |
com qualsevol altre paquet. Heu d'executar, com a superusuari,
|
| 157 |
<phrase condition="classic-kpkg">
|
| 158 |
<userinput>dpkg -i
|
| 159 |
../kernel-image-&kernelversion;-<replaceable>subarquitectura</replaceable>_custom.1.0_&architecture;.deb</userinput>.
|
| 160 |
</phrase>
|
| 161 |
La part <replaceable>subarquitectura</replaceable> és una subarquitectura
|
| 162 |
opcional
|
| 163 |
<phrase arch="x86"> com per exemple <quote>i586</quote>, </phrase>
|
| 164 |
en funció de les opcions del nucli seleccionades.
|
| 165 |
|
| 166 |
L'ordre <userinput>dpkg -i</userinput> instal·larà el nucli,
|
| 167 |
juntament amb d'altres fitxers de suport. Per exemple, s'instal·larà
|
| 168 |
<filename>System.map</filename> (que serà d'ajuda en els problemes
|
| 169 |
de depuració del nucli), i també s'instal·larà el fitxer
|
| 170 |
<filename>/boot/config-&kernelversion;</filename> que contindrà el conjunt
|
| 171 |
d'opcions de configuració actuals. El paquet del nucli es prou inteligent
|
| 172 |
per actualitzar automàticament el vostra carregador d'arranc per utilitzar
|
| 173 |
el nou nucli. Si heu creat un paquet amb mòduls,
|
| 174 |
<phrase condition="classic-kpkg"> per exemple, si teniu una PCMCIA, </phrase>
|
| 175 |
necessitareu instal·lar eixe paquet també.
|
| 176 |
|
| 177 |
</para><para>
|
| 178 |
|
| 179 |
És el moment de reiniciar el sistema: llegiu acuradament qualsevol avís
|
| 180 |
produït pel pas anterior i executeu l'ordre <userinput>shutdown -r now</userinput>.
|
| 181 |
</para><para>
|
| 182 |
|
| 183 |
Per a veure més informació sobre els nuclis de Debian i compilacions
|
| 184 |
de nuclis, vegeu el <ulink url="&url-kernel-handbook;">Llibre de butxaca
|
| 185 |
de nuclis Linux de Debian</ulink>.
|
| 186 |
|
| 187 |
Per a veure més informació sobre <classname>kernel-package</classname> llegiu
|
| 188 |
la documentació del directori <filename>/usr/share/doc/kernel-package</filename>.
|
| 189 |
|
| 190 |
</para>
|
| 191 |
</sect2>
|
| 192 |
</sect1>
|