Hay cuatro categorías de problemas que podemos encontrarnos en el proceso de compilación de un kernel personalizado:
config
:Si config(8) falla cuando le pasa la descripción de su kernel seguramente ha cometido algún pequeño error. Por suerte config(8) les mostrará el número de la línea que le está dando problemas, así que no tendrá mayor problema para localizarla. Veamos un ejemplo:
Si ve algo así asegúrese de que
ha tecleado la palabra clave que hay en esa
lína. Compare la de su fichero de
configuración del kernel con la de
GENERIC
.
make
:If the make
command fails, it usually
signals an error in your kernel description which is not severe
enough for config(8) to catch. Again, look
over your configuration, and if you still cannot resolve the
problem, send mail to the lista de correo para preguntas generales sobre FreeBSD with your kernel
configuration, and it should be diagnosed quickly.
Si su nuevo kernel no arranca o no reconoce sus
dispositivos de hardware no desespere. FreeBSD
dispone de excelentes mecanismos de
recuperación ante kernels defectuosos. Elija
el kernel con el que quiere arrancar en el gestor
de arranque de FreeBSD. Puede acceder al gestor de
arranque en el momento en el que aparece el
menú de arranque. Elija la opción
número seis, “Escape to a loader
prompt” option, Escriba en el prompt
unload kernel
y después escriba
boot /boot/
,
o el nombre de cualquier otro kernel que tenga en el sistema
y del que sepa que puede fiarse. Si va a reconfigurar un
kernel es una buenísima idea guardar un kernel
que sepa que funciona.kernel.old
/kernel
Tras arrancar con un kernel de fiar verifique el
fichero de configuración e intente de nuevo
una compilación. El fichero
/var/log/messages
es una fuente de
información muy valiosa puesto que registra, entre
otras cosas, todos los mensajes que deja el kernel cada
vez que hay un arranque satisfactorio. dmesg(8)
le mostrará los mensajes que el kernel ha
generado durante el último arranque.
Si tiene problemas compilando un kernel recuerde que
es de vital importancia que guarde una copia de un kernel
GENERIC
u otro del que pueda fiarse
y que (esto es muy importante) tenga un nombre distinto de
kernel.old
para evitar que el sistema
lo borre una vez que termine una nueva
compilación. No puede confiar en su kernel
kernel.old
porque al instalar un nuevo
kernel (que aún no sabe si será el que
funcione tal y como espera de él) el kernel
kernel.old
se sobreescribe con el
kernel que instale. Otra cosa importante es que copie
ese kernel de fiar a
/boot/kernel
, o
ciertas herramientas como ps(1) no
funcionarán. Basta con que haga lo
siguiente:
#
mv /boot/kernel /boot/kernel.malo
#
mv /boot/kernel.bueno
/boot/kernel
Si el kernel que tiene instalado es de una versión de FreeBSD y las utilidades del sistema son de otra, por ejemplo un kernel -CURRENT en una -RELEASE, hay muchas herramientas de monitorización del sistema como ps(1) y vmstat(8) no funcionarán. Ejecute un make buildworld y un make install world con la misma versión de código fuente con la que ha compilado su kernel. Esta es una de las razones por las que no es una idea demasiado buena utilizar versiones diferentes de kernel y de sistema operativo.
Puede descargar éste y muchos otros documentos desde ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
Si tiene dudas sobre FreeBSD consulte la
documentación antes de escribir a la lista
<questions@FreeBSD.org>.
Envíe sus preguntas sobre la documentación a
<doc@FreeBSD.org>.