Instalación de FreeBSD, Modulo de Kernel Hola Mundo e Interfaz grafica FluxBox

Visitas: 69  
Tiempo total: 2 días con 0:27:29 hrs  

Antes de iniciar con los pasos, debo de aclarar algunos problemas encontrandos y el escenario en el cual desarrolle esta publicacion.

1. El medio de virtualizacion fue VirtualBox 4.2.12 r84980, creando un disco duro de 14 GB con una memoria RAM de 1GB, asignando de tarjeta de video 23MB, la configuración de red fue únicamente el adaptador uno NAT y la ISO de FreeBSD es FreeBSD-10.0-RELEASE-i386-dvd1.iso.

2. La instalación utilizando el software de vitalización Oracle VirtualBox 4.2.12 era totalmente imposible con las ISOs FreeBSD-10.0-RELEASE-ia64-disc1.iso dado que la arquitectura no era compatible con VirtualBox, la solución a este problema es descargar la ISO con arquitectura 32 Bits FreeBSD-10.0-RELEASE-i386-dvd1.iso, también está el disco, pero este ofrece únicamente las funcionalidades mínimas.

Instalación de FreeBSD

1. Al insertar el disco o usar la ISO en la maquina virtual, la opción a seleccionar es Boot Multi User presionando enter.

Instalacion FreeBSD y Modulo para el Kernel  (1)

2. El siguiente comando es Install en la pantalla azul que ha aparecido, mostrando el siguiente menú.

Instalacion FreeBSD y Modulo para el Kernel  (2)

3. Seleccionamos el teclado latino americano para el correcto uso del teclado con acentos.

Instalacion FreeBSD y Modulo para el Kernel  (3)

4. El nombre de equipo en este caso será OS2.

Instalacion FreeBSD y Modulo para el Kernel  (4)

5. Los componentes adicionales a instalar en el sistema operativo serán los Ports, que son utilizados para agregar aplicaciones mediante la compilación del código fuente y también las fuentes del Kernel para cada arquitectura. Esta opción, SRC esta disponible para la ISO FreeBSD-10.0-RELEASE-i386-disc1.iso

Instalacion FreeBSD y Modulo para el Kernel  (5)

6. A continuación se crearan las particiones manuales para la instalación del sistema operativo Windows.

Instalacion FreeBSD y Modulo para el Kernel  (6)

7. Se crea una tabla común de particiones MBR.

Instalacion FreeBSD y Modulo para el Kernel  (7)

8. A continuación se crea la partición maestra llamada BSD, al presionar Crear aparecen los parámetros por defecto que serán del mismo tamaño del disco creado.

Instalacion FreeBSD y Modulo para el Kernel  (8)

9. Las particiones son las siguientes: Una de 2GB para almacenar el directorio raíz. En este menú, con las flechas mueves el cursor a los lados, con la tecla Tab lo colocas en el área de arriba, en las opciones de tamaño, tipo y carpeta del sistema.

Instalacion FreeBSD y Modulo para el Kernel  (9)

10. La partición de 1 GB para el área de intercambio swap.

Instalacion FreeBSD y Modulo para el Kernel  (10)

11. Otra de 1 GB para el directorio /var

Instalacion FreeBSD y Modulo para el Kernel  (11)

12. Otra de 1 GB para el directorio /tmp

Instalacion FreeBSD y Modulo para el Kernel  (12)

13. Y finalmente, asignamos el resto del disco para el usuario. 3 GB para la carpeta /usr en este caso.

Instalacion FreeBSD y Modulo para el Kernel  (13)

14. A continuación se muestra la tabla de particiones, bien – por último se presiona Finish y Commit.

Instalacion FreeBSD y Modulo para el Kernel  (14)

15. Se observa cómo se instalan los paquetes.

Instalacion FreeBSD y Modulo para el Kernel  (15)

16. En el siguiente paso se ingresan los detalles de inicio de sesión. En este caso la contraseña.

Instalacion FreeBSD y Modulo para el Kernel  (16)

17. A continuación las configuraciones básicas:

  • Se selecciona la tarjeta de red. La única en este caso es em0.
  • Protocolo de red IPV4.
  • Se acepta DHCP para obtener la IP.
  • Se cancela la configuración de IPV6 dado que no la utilizaremos.
  • A continuación la configuración del DNS, que es la IP del router local.

Instalacion FreeBSD y Modulo para el Kernel  (17)

18. El siguiente parámetro son los servicios que iniciaran en el sistema, dejaremos por defecto sshd y agregamos moused para gestionar el ratón.

Instalacion FreeBSD y Modulo para el Kernel  (18)

19. En esta instalación creamos el usuario llamado jose.

Instalacion FreeBSD y Modulo para el Kernel  (19)

20. La siguiente pantalla sirve para modificar los datos que hemos ingresado, se presiona finalizar.

Instalacion FreeBSD y Modulo para el Kernel  (20)

21. Se reinicia la maquina virtual.

Instalacion FreeBSD y Modulo para el Kernel  (21)

Modulo del Kernel

1. En el directorio /usr/home/ se crea la carpeta con mkdir modulo (En mi ejemplo olvide entrar a este directorio) y creamos el archivo con vi Makefile en el cual se agrega el siguiente texto:

KMOD = hola_mundo
SRCS = hola_mundo.c
.include

Instalacion FreeBSD y Modulo para el Kernel  (22)

Bsd.kmod.mk construye los módulos y los enlaza con el kernel, KMOD define el nombre del modulo y SRCS es el código fuente del mismo. Los comandos que utilice con vi son:

• Para agregar texto, a
• Para eliminar texto, supr
• Para guardar el documento, :w (Debes presionar esc primero)
• Para quitar vi, :q (Debes presionar esc primero)

2. El siguiente paso es construir el código fuente del modulo, con el siguiente texto:

Vi hola_mundo.c

#include <sys/param.h>
#include <sys/module.h>
#include <sys/kernel.h>
#include <sys/systm.h>

static int event_handler(struct module *module, int event, void *arg) {
int e = 0;
switch (event) {
case MOD_LOAD:
uprintf("\n\nBienvenido\n\n");
break;
case MOD_UNLOAD:
uprintf("\n\nSaliendo\n\n");
break;
default:
e = EOPNOTSUPP;
break;
}
return(e);
}

static moduledata_t hola_mundo_conf = {
"hola_mundo",
event_handler,
NULL
};

DECLARE_MODULE(hola_mundo, hola_mundo_conf, SI_SUB_DRIVERS, SI_ORDER_MIDDLE);

 

Instalacion FreeBSD y Modulo para el Kernel  (23)

Al inicio se observan las librerías necesarias para crear el modulo, la función event_handler contiene sentencias para ejecutar el código cuando se inicia y cuando se finaliza, mostrando los mensajes de bienvenida y despedida.

3. Ahora se ejecuta el comando con make.

Instalacion FreeBSD y Modulo para el Kernel  (24)

4. Una vez se crea el modulo, se carga y se finaliza con los siguientes comandos:

kldload ./hola_mundo.ko
kldunload hola_mundo

Instalacion FreeBSD y Modulo para el Kernel  (25)

El modulo finaliza correctamente mostrando los mensajes apropiadamente.

Fluxbox

1. Para instalar la interfaz grafica, es necesario tener instalado Xorg, que es un sistema de ventanas, este se instala con el comando:

# cd /usr/ports/x11/xorg
# make install

Previo a l instalación de Xorg, se edita el documento /etc/make.conf y se agrega: X_WINDOW_SYSTEM=xorg para indicar que se utilizara este paquete. A continuación, se instala Fluxbox el cual es una solución más simple que Gnome.

2. Para instalar Fluxbox, se ejecuta el siguiente comando:

# cd /usr/ports/x11-wm/fluxbox
# make install clean

Instalacion FreeBSD y Modulo para el Kernel  (26)

3. Se modifica el archivo con el siguiente comando:

hald_enable=”YES”
dbus_enable=”YES”

Instalacion FreeBSD y Modulo para el Kernel  (27)

El siguiente paso es editar el archivo ~/.xinitrc, agregando Firefox y por ultimo Fluxbox.

Exec Xterm &
Exec Firefox &
Exec Fluxbox

El simbolo ~ representa la carpeta home del usuario que estas usando.

4. Para iniciar Fluxbox, únicamente se ejecuta el siguiente comando: startx

5. Para agregar opciones al menú Fluxbox, se edita el siguiente archivo: ~/.fluxbox/menú, agregando la siguiente entrada:

[submenu] (Terminals)
[exec] (Firefox) {firefox}

Esto significa, (Firefox) será el nombre en el menú y lo encerrado entre llaves es el comando de la consola.

6. Fluxbox corriendo.

Instalacion FreeBSD y Modulo para el Kernel  (28)

Referencias

[ftp://ftp.freebsd.org/pub/FreeBSD/releases]
[http://libuntu.wordpress.com/2013/10/16/turorial-de-instalacion-de-freebsd/]
[http://www.freebsd.org/releases/10.0R/relnotes.html]
[https://www.freebsd.org/doc/handbook/svn.html]
[https://www.freebsd.org/doc/handbook/x-install.html]
[http://bsdtutorial.org/freebsd/fluxbox/]
[https://www.kernel.org/doc/htmldocs/kernel-api/]
[http://www.buenastareas.com/ensayos/Ventajas-Del-Sistema-Operativo-Unix/84778.html]
[http://piedis11.blogspot.com/2008/10/ventajas-y-desventajas-de-unix.html]
[http://xathrya.web.id/blog/2013/02/23/install-and-configure-fluxbox-as-window-manager-for-freebsd/]
[http://bsdtutorial.org/freebsd/fluxbox/]
[https://wiki.freebsd.org/VirtualBox]
[http://www.freshports.org/x11/xorg-minimal]
[http://www.freebsdmadeeasy.com/tutorials/freebsd/set-up-xorg-on-freebsd.php]
[http://www.freebsdmadeeasy.com/tutorials/freebsd/fluxbox.php]
[http://www.freesoftwaremagazine.com/articles/writing_a_kernel_module_for_freebsd]


Para recibir boletines de información, por favor escribe tu correo electrónico:

Por favor ingrese un correo electrónico valido.
Registrado correctamente!