1
<!-- retain these comments for translator revision tracking -->
2
<!-- original version: 28672 -->
4
<sect1 id="kernel-baking"><title>Compilant un nou kernel</title>
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. Tot i això, compilar un nou nucli és útil
15
gestionar maquinari especial o conflicte de maquinari amb els
21
gestionar maquinari o opcions que no estan incloses en el nucli estàndard,
22
alguns exemples poden ser l'APM o l'SMP
27
optimitzar el nucli suprimint controladors inútils per tal
28
d'agilitzar el temps d'arrencada
33
utilitzar opcions del nucli que no estan suportades pel nucli
39
executar un nucli actualitzat o de desenvolupament
44
impresionar als vostres amics, provar noves coses
51
<sect2><title>Gestió de la imatge del nucli</title>
54
No tingueu por a l'hora de compilar el nucli. És divertit i profitós.
58
Per compilar un nucli a la manera de Debian, necessiteu alguns paquets:
59
<classname>kernel-package</classname>,
60
<classname>kernel-source-&kernelversion;</classname> (l'última versió
61
en el moment d'escriure aquest document), <classname>fakeroot</classname>
62
i alguns d'altres que probablement ja teniu instal·lats
63
(per accedir a la llista completa vegeu
64
<filename>/usr/share/doc/kernel-package/README.gz</filename>).
68
A través d'aquest mètode es generarà un .deb del codi font del nucli,
69
i en el cas que disposeu de mòduls no estàndard en crearà un .deb
70
dependent sincronitzat. És un mètode millor per gestionar imatges del nucli;
71
el directori <filename>/boot</filename> contindrà el nucli, el System.map i
72
un registre del fitxer de configuració actiu del muntatge.
76
Recordeu que no <emphasis>forçosament heu</emphasis> de compilar el kernel
77
seguint el <quote>mètode Debian</quote>; però creiem que utilitzar el sistema
78
d'empaquetat per gestionar el nucli és la manera més segura i fàcil. De fet,
79
podeu descarregar el codi font del nucli directament del Linus en comptes
80
de <classname>kernel-source-&kernelversion;</classname>, ja que utilitza
81
el mètode de compilació <classname>kernel-package</classname>.
85
Recordeu que trobareu documentació respecte a la utilització de
86
<classname>kernel-package</classname> al directori
87
<filename>/usr/share/doc/kernel-package</filename>. Aquesta
88
secció únicament conté un petit tutorial.
92
S'assumeix que disposeu de llibertat absoluta sobre el vostre sistema i que
93
extraureu el codi font del nucli en algun lloc del vostre directori
98
Hi ha d'altres ubicacions on podeu extreure el codi font del nucli i generar
99
el vostre nucli personalitzat, però aquest és el més fàcil al no precisar
100
de permisos especials.
104
</footnote>. Assumirem que la vostra versió del nucli és &kernelversion;.
105
Assegureu-vos d'estar al directori on voleu desempaquetar el codi
106
font del nucli, extraieu-lo utilitzant l'ordre
107
<userinput>tar xjf /usr/src/kernel-source-&kernelversion;.tar.bz2</userinput>
108
i entreu al directori que s'haurà creat <filename>kernel-source-&kernelversion;</filename>.
112
Ja podeu configurar el nucli. Si teniu instal·lat, configurat i executant-se
113
l'X11, executeu l'ordre <userinput>make xconfig</userinput>; si no el teniu
114
instal·lat executeu l'ordre <userinput>make menuconfig</userinput> (haureu
115
de tenir instal·lat <classname>libncurses5-dev</classname>). Preneu-vos el
116
temps necessari per llegir l'ajuda en línia i seleccionar les opcions de
117
forma acurada. En cas de dubte, normalment és millor introduir el controlador
118
del dispositiu (el programari que gestiona els perifèrics com la targeta
119
Ethernet, controladors SCSI i similars). Recordeu que en cas de no entendre
120
d'altres opcions no relacionades amb un maquinari específic, les hauríeu de
121
deixar amb el valor predeterminat. No oblideu seleccionar l'opció
122
<quote>Carregador de mòduls del nucli</quote> a <quote>Suport de mòduls
123
carregables</quote> (per defecte no està seleccionat). En cas de no incloure
124
l'opció, hi hauria problemes amb la instal·lació de Debian.
128
Netegeu l'arrel del codi font i reinicia els paràmetres
129
<classname>kernel-package</classname>. Per a fer-ho, utilitzeu
130
l'ordre <userinput>make-kpkg clean</userinput>.
134
Seguidament heu de compilar el nucli:
135
<userinput>fakeroot make-kpkg --revision=custom.1.0 kernel_image</userinput>.
136
El número de versió <quote>1.0</quote> es pot modificar; és únicament
137
un número de versió que s'utilitzarà per registrar les generacions del nucli.
138
Podeu utilitzar qualsevol paraula enlloc de <quote>custom</quote>
139
(ex. un nom d'ordinador). La duració de la compilació del nucli
140
dependrà de la potència de l'ordinador.
142
</para><para condition="supports-pcmcia">
144
Si necessiteu el suport per a PCMCIA, també haureu d'instal·lar el paquet
145
<classname>pcmcia-source</classname>. Desempaqueteu el fitxer gzip tar
146
com a superusuari al directori <filename>/usr/src</filename> (és important
147
que els mòduls es trobin allà on s'espera que es trobin,
148
<filename>/usr/src/modules</filename>). Seguidament, i com a superusuari,
149
heu d'executar l'ordre <userinput>make-kpkg modules_image</userinput>.
153
Un cop finalitzada la compilació, podeu instal·lar el nucli personalitzat
154
com qualsevol altre paquet. Heu d'executar, com a superusuari, l'ordre
155
<userinput>dpkg -i ../kernel-image-&kernelversion;-<replaceable>subarquitectura</replaceable>_custom.1.0_&architecture;.deb</userinput>.
156
La part <replaceable>subarquitectura</replaceable> és una subarquitectura
158
<phrase arch="i386"> com per exemple <quote>i586</quote>, </phrase>
159
en funció de les opcions del nucli seleccionades.
161
L'ordre <userinput>dpkg -i kernel-image...</userinput> instal·larà el nucli,
162
juntament amb d'altres fitxers de suport. Per exemple, s'instal·larà
163
<filename>System.map</filename> (que serà d'ajuda en els problemes
164
de depuració del nucli), i també s'instal·larà el fitxer
165
<filename>/boot/config-&kernelversion;</filename> que contindrà el conjunt
166
d'opcions de configuració actuals. El paquet
167
<classname>kernel-image-&kernelversion;</classname>
168
és capaç d'utilitzar directament el carregador d'arrencada de la plataforma
169
per executar l'actualització en l'arrencada, possibilitant l'arrencada sense
170
la necessitat de tornar a executar el carregador d'arrencada. Si heu creat
171
un paquet de mòduls, ex. si diposeu de PCMCIA, també haureu d'instal·lar-lo.
175
És el moment de reiniciar el sistema: llegiu acuradament qualsevol avís
176
produït pel pas anterior i executeu l'ordre <userinput>shutdown -r now</userinput>.
179
Per a veure més informació sobre <classname>kernel-package</classname> llegiu
180
la documentació del directori <filename>/usr/share/doc/kernel-package</filename>.