« »
Oct 10

Primero de todo nos hemos de asegurar de tener el código fuente del BSD instalado. Para esto hemos de haber seleccionado una set de instalación q lo contenga o podemos descargarlo con cvsup, etc. (en otro post encontrarás como hacer esto). Todo el código del BSD lo tenemos en /usr/src, puedes comprobar si tienes instalado el src mirando si tiene contenido este dir.

Interesante antes de empezar editar el /etc/make.conf, como mínimo para seleccionar la CPU apropiada (ver /usr/share/examples/etc/make.conf). A parte es necesario también crear un archivo de configuración para el kernel.

Este proceso describe lo necesario para compilar el sistema operativo FreeBSD al completo, pero asumiendo que estamos trabajando con la misma release del FreeBSD. Si quieres actualizar de release tu sistema debes leer atentamente el archivo /usr/src/UPDATING y es probable que allí se indiquen pasos adicionales, a parte también es necesario realizar unos pasos recomendados por defecto como rebotar en single mode y realizar un “mergemaster -p” adicional (listados a continuación).

Pasos a seguir para compilar TODO el FreeBSD:

[1] Antes de empezar limpieza:

# cd /usr/obj
# chflags -R noschg *
# rm -rf *
# cd /usr/src
# make cleandir
# make cleandir

[2] Creamos la configuración del kernel:

# cd /usr/src/sys/i386/conf/
# cp GENERIC MYKERNEL
# vim MYKERNEL

Editamos MYKERNEL (o el nombre q quieras para tu kernel) y con la ayuda del archivo NOTES (en el mismo dir) y la salida del dmesg seleccionamos las opciones adecuadas.

[3] Compilamos el sistema e instalamos el kernel:

# cd /usr/src
# make buildworld
# make buildkernel KERNCONF=MYKERNEL
# make installkernel KERNCONF=MYKERNEL

[4] Pasos adicionales normalmente necesarios sólo para una actualización de relase:

# shutdown -r now

Iniciar el single mode tecleando “boot -s” en el loader prompt y continuar con:

# mergemaster -p

[5] Instalamos el sistema y reiniciamos:

# make installworld
# mergemaster
# shutdown -r now

[6] Listos

Si sólo quieres recompilar el kernel debes suprimir los pasos: “make buildworld”, “make installworld” y “mergemaster”. (no es nada recomendable actualizar de release el kernel con una base del sistema anterior).

Be Sociable, Share!
Tagged with:

Leave a Reply

preload preload preload