Iniciando el sistema

Nuestro sistema GNU/Linux tiene varias formas de ser iniciado bien sea desde floppy disk o desde el disco rígido. A continuación veremos las tres formas que son indudablemante las más populares.

Utilizando un disquete de arranque

Mucha gente arranca Linux utilizando un floppy disk de arranque que contiene una copia del núcleo de Linux. A este núcleo se le indica la partición raíz de Linux para que sepa donde buscar en el disco rígido el sistema de ficheros raíz. El comando rdev puede ser utilizado para poner la partición raíz en la imagen del núcleo. Por ejemplo, este es el tipo de floppy creado por Slackware durante la instalación. [1] Para crear su propio disquete de arranque, localicemos en primer lugar la imagen del núcleo en su disco duro. Debe estar en el directorio /boot o /. Algunas distribuciones utilizan el fichero /vmlinux para el núcleo.

En su lugar, puede que tenga un núcleo comprimido. Un núcleo comprimido se descomprime a sí mismo en memoria en tiempo de arranque, y utiliza mucho menos espacio en el disco duro. Si se tiene un núcleo comprimido, puede encontrarse en el fichero /boot/zImage o /zImage. Algunas distribuciones utilizan el fichero /vmlinuz para el núcleo comprimido.

Una vez que se sabe donde está el núcleo, podemos usar el comando mkbootdisk con el que podremos hacer un disco de arranque

[root#pantano:~]#  mkbootdisk --device /dev/fd0 2.4.26

donde 2.4.26 es el nombre del núcleo que actualmente esta corriendo. De esta forma se creará un sistema de archivos en el floppy que contendrá la imagen del kernel y los módulos necesarios para funcionar. Con este floppy arrancaremos ahora Linux.

Utilizando LILO

Otro método de arranque es utilizar LILO, un programa que reside en el sector de arranque del disco duro. Este programa se ejecuta cuando el sistema se inicia desde el disco duro, y puede arrancar automáticamente Linux desde una imagen de núcleo almacenada en el propio disco duro.

LILO puede utilizarse también como una primera etapa de carga de varios sistemas operativos, permitiendo seleccionar en tiempo de arranque qué sistema operativo (como GNU/Linux o MS-DOS) arrancar. Cuando se arranca utilizando LILO, se inicia el sistema operativo por defecto, a menos que pulse TAB durante la secuencia de arranque. Si se pulsa esta tecla, se le presentará un indicador de arranque, donde debe teclear el nombre del sistema operativo a arrancar (como puede ser "linux" o "msdos").

La forma más simple de instalar LILO es editar el fichero de configuración, /etc/lilo.conf, y ejecutar el comando

[root@pantano:~]# /sbin/lilo

El fichero de configuración de LILO contiene una "estrofa" para cada sistema operativo que se pueda querer arrancar. La mejor forma de mostrarlo es con un ejemplo de un fichero de configuración LILO. El ejemplo siguiente es para un sistema que tiene una partición raíz Linux en /dev/hda2 y una partición Windows en /dev/hda1.

# Le indicamos a LILO que modifique el registro de arranque de
# /dev/hda (el primer disco duro  no-SCSI).
# Si se quiere arrancar desde una unidad distinta de /dev/hda,
# se debe cambiar la siguiente linea
boot = /dev/hda
default=linux

# Nombre del cargador de arranque. No hay razon para cambiarlo,
# a menos que se esté haciendo una modificacion seria del LILO.

install = /boot/boot.b

# Estrofa para la partición raíz de Linux en /dev/hda2.

image = /boot/2.4.26 # Ubicación del kernel
label = linux        # Nombre del SO (para el menu de arranque)
root = /dev/hda2     # Ubicación de la partición raíz
vga = ask            # Indicar que pregunte por modos SVGA
                     # en tiempo de arranque

# Estrofa para la partición Windows  en /dev/hda1.
other = /dev/hda1    # Ubicación de la partición
table = /dev/hda     # Ubicación de la tabla de partición para
                     # /dev/hda2
label = W$           # Nombre del SO (para el menu)

La línea default indica la etiqueta del sistema operativo que arrancará LILO por defecto. Se puede seleccionar otro sistema operativo en el indicador de arranque de LILO, tal y como se indicó anteriormente. Recuerde que cada vez que actualice la imagen del núcleo en disco, se debe reejecutar /sbin/lilo para que los cambios queden reflejados en el sector de arranque de su unidad.

Utilizando LOADLIN

Anteriormente dijimos que el sistema de arranque que utilizaba al LILO tenia un problema. Este era que el kernel no podía estar mas allá del cilindro 1024 dado que no se cargaría. A partir de las nuevas versiones de LILO esto se está solucionando. De esta forma la única manera que nos quedaba para iniciar GNU/Linux era a través de un disquete con la subsiguiente lentitud que esto tenía. Por esto se desarrollo una aplicación que permitía que arrancáramos el núcleo del sistema desde una partición DOS. Esta aplicación se denomina LOADLIN y lo que hace es sencillo. En un directorio de la partición DOS se guarda el kernel y a partir del comando loadlin se le indica el kernel que se quiere cargar y la partición donde se encuentra GNU/Linux instalado.

C:\> loadlin c:\vmlinuz root=/dev/hda2 ro

De esta forma se saldrá de DOS y se cargara el kernel en memoria.

Notas

[1]

Las últimas versiones de Slackware utilizan un método diferente para arrancar desde floppy, utilizando el programa SysLinux