Desactivar DEBUG del kernel a FreeBSD


Si alguna vegada heu provat les betes de FreeBSD vos haureu trobat a que són lentes. Això és per mor que
el mode depuració està compilat dins el nucli i crea moltíssimes coses que enlenteixen el sistema en si. Aquest truc
intentarà explicar com canviar aquesta situació.

Primer he d’aclarir que això no pretèn ser un exaustiu article sobre com se compila el kernel a sistemes BSD, sinò una ràpida referència per aquest tema. L’altre objectiu és llevar les pors al sistema, que és molt robust, complet i no demana cap tecnicisme per usar-lo com a escriptori.
El primer que voldrem és conseguir el codi font del sistema. Per això el més recomanable és usar cvsup, el qual podeu trobar als ports a /usr/ports/net/cvsup. Un cop posat el programa feim un checkout del tema a mitjançant un cvsup el-nostre-arxiu-de-configuracio. Podeu trobar exemples de configuració a /usr/share/examples/cvsup o mirar el meu (totes les configuracions que uso i poden ser útils els he pujades a un directori a bulma). Canta així:

[email protected]:~$ cat /root/pau-rel60
*default host=cvsup2.es.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_6
*default delete use-rel-suffix
*default compress
src-all

El nostre directori de treball serà sempre /usr/src/, per si alguna vegada no ho poso. Allà trobareu alguna lectura interessant com per exemple l’UPDATING, que és més que recomenable llegir abans de fer alguna trastada.
Ara convendria configurar el nostre kernel. Principalment anam a /usr/src/sys/arquitectura/conf/. Recomano copiar el GENERIC a un altre nom. Jo he posat per aquest exemple pau-kernel. Ara ens miran la nostra configuració de kernel i llevam les línees següents:

28 makeoptions DEBUG=-g

67 # Debugging for use in -current
68 options KDB
69 options DDB
70 options GDB
71 options INVARIANTS
72 options INVARIANT_SUPPORT
73 options WITNESS
74 options WITNESS_SKIPSPIN

Si coneixem suficient el nostre maquinari podem llevar més, però això s’excedeix dels objectius d’aques truc.
Les passes següents són les crítiques. Convendria fer un cp -r /boot/kernel/ /boot/kernel-bo/ per si la cosa no funcionés, poder arrancar amb el nostre actual. Malgrat tot, he de dir que el sistema d’instal·lació de kernels fa que sempre hi hagi l’anterior nucli. Queda etiquetat com a /boot/kernel.old . Però com que aquest és l’anterior i no el darrer que funciona, millor fer aquest còpia de seguretat.
Dues coses més a recordar: hem de tornar al directori /usr/src/. I el kernel que hem de compilar és el nostre (a l’exemple, pau-kernel), així que recordeu quin nom lo heu donat al vostre. També és important que recordeu que la configuració del kernel ha d’anar al mateix directori d’on heu copiat el genèric.
Ara procedim a la part final: construcció del sistema en sí, compilació del kernel, instal·lació del kernel, instal·lació del món i reiniciar. Evidentment tot ho heu de fer com a superusuari.

# cd /usr/src
# make buildworld
# make buildkernel KERNCONF=pau-kernel
# make installkernel KERNCONF=pau-kernel
# make installworld
#reboot

Si tot ha anat bé, en haver reiniciat la màquina haurieu de tenir alguna cosa com:

[email protected]:~$ uname -a
FreeBSD waterdeep 6.0-BETA4 FreeBSD 6.0-BETA4
#1: Sun Sep 11 22:32:04 CEST 2005 [email protected]:/usr/obj/usr/src/sys/pau-kernel amd64

Lectures recomenades:

Este post ha sido traido de forma automatica desde https://web.archive.org/web/20140625063149/http:/bulma.net/body.phtml?nIdNoticia=2235 por un robot nigromante, si crees que puede mejorarse, por favor, contactanos.


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.