El RMA de FreeBSD, se localiza en /boot/boot0. Este es una copia del RMA, ya que el RMA real debe localizarse en una parte especial del disco duro, fuera de la área de FreeBSD.
El fichero boot0 es muy simple, dado que el programa en el RMA sólo puede ser de 512 bytes. Si usted ha instalado el RMA de FreeBSD y ha instalado varios sistemas operativos en sus discos duros, entonces al momento de arrancar el sistema, visualizará una pantalla similar a la siguiente.
Es sabido que otros sistemas, en particular Windows 95, sobreescriben el RMA con el suyo. Si esto le sucede, o bien desea reemplazar su RMA actual con el RMA de FreeBSD, entonces puede utilizar las siguientes órdenes.
# fdisk -B -b /boot/boot0 dispositivo
Donde dispositivo es aquel, desde el cual usted pretende arrancar el sistema, tal como ad0 para el disco conectado al primer IDE, ad2 para el disco maestro conectado al IDE secundario, da0 para el primer disco SCSI, y así sucesivamente.
Por otro lado, si usted es un usuario de Linux, y prefiere que la aplicación LILO controle el proceso de arranque, puede editar el fichero /etc/lilo.conf para incluir a FreeBSD, o bien seleccionar la opción
Leave The Master Boot Record Untouched
durante el proceso de
instalación. Si ha instalado el gestor de arranque de FreeBSD, puede arrancar Linux y
modificar el fichero de configuración de LILO, /etc/lilo.conf, añadiendo la siguiente opción:
other=/dev/hdXY table=/dev/hdb loader=/boot/chain.b label=FreeBSD
lo que permitirá el arranque de FreeBSD y Linux, por medio de LILO. En nuestro ejemplo hemos utilizado XY para especificar el disco utilizado y su partición. Si
usted utiliza un sistema SCSI, deberá cambiar
/dev/hdXY por algo similar a /dev/sdXY, que nuevamente utiliza la sintáxis XY. La opción loader=/boot/chain.b
puede omitirse si usted cuenta con ambos
sistemas operativos en el mismo disco. Una vez que esto se ha completado, puede ejecutar
/sbin/lilo -v para que se actualicen los cambios en el sistema,
lo cual deberá verificarse con los mensajes que aparezcan en pantalla.
Nota: N de T: La opción mencionada como;
Leave The Master Boot Record Untouched
, se mostrará “tal cual” aparece en este documento, una vez que ha terminado la fase de partición del disco duro.
Conceptualmente las estapas uno y dos, son parte del mismo programa, en la misma área del disco. Por cuestiones de espacio se han dividido en dos, pero estas siempre se instalaran de manera conjunta.
Estas son localizadas en el sector de arranque, de la partición de arranque, que es donde boot0, o cualquier otro programa del RMA espera encontrar el programa que dará continuación al proceso de arranque. Los ficheros localizados bajo el directorio /boot son copias de los ficheros reales, que se localizan fuera del sistema de ficheros de FreeBSD.
El fichero boot1 es muy simple, en virtud de que sólo puede tener un tamaño de 512 bytes, y conocer simplemente del etiquetador de discos de FreeBSD (disklabel), el cual almacena la información de las particiones, para efecto de localizar y ejecutar boot2.
El fichero boot2 es un poco más sofisticado, y comprende lo suficiente del sistema de ficheros de FreeBSD como para localizar ficheros en el, y puede proveer una interfaz simple, para seleccionar el kernel o cargador que deberá ejecutarse.
En virtud de que el cargador (loader) es mucho más sofisticado, y provee una configuración de arranque más sencilla de utilizar, boot2 la ejecuta normalmente, una vez que ha terminado de solicitar el arranque del kernel directamente.
Si alguna vez requiere reemplazar los ficheros boot1 y boot2 instalados, utilice disklabel(8).
# disklabel -B partición
Donde partición es el disco y partición del cual pretende arrancar el sistema, tal como ad0s1 para la primer partición del disco Mastro—Primario.
Modo peligrosamente dedicadoSi sólo utiliza el nombre del disco, tal como ad0, al usar disklabel(8) creará un disco peligrosamente dedicado, sin partición alguna. Seguramente esto no es lo que desea hacer, así que asegurese dos veces antes de presionar la tecla Return cuando utilice disklabel(8).
El cargador es la etapa final de las tres etapas del mecanismo de arranque, y esta localizado en el sistema de ficheros, normalmente como /boot/loader.
El cargador pretende ser un metodo amistoso de configuración, utilizando una serie de órdenes integradas de fácil uso, respaldado por un intérprete más poderoso, con una serie de órdenes de mayor complejidad.
Durante la inicialización del sistema, el cargador hará una comprobación en busca de una consola y discos, y sabra de que disco se encuentra arrancando. Establecerá las variables necesarias, y posteriormente es iniciado el intérprete donde se pueden introducir órdenes desde un “script” o de manera interactiva.
Posteriormente el cargador leerá el fichero /boot/loader.rc, que por default lee la información del fichero /boot/defaults/loader.conf que a su vez, establece las variables correspondientes y verifica en el fichero /boot/loader.conf los cambios locales que se hayan hecho, para establecer valores de las variables modificadas. Una vez llevado a cabo esto, loader.rc actua sobre estas variables, cargando cualquier módulo y kernel seleccionado.
Finalmente, y por default, el cargador hace una pausa contando 10 segundos y en espera de que al presionar una tecla se interrumpa el proceso, de no ser así, procederá a arrancar el kernel. En el caso de que al hacer esta pausa, se haya presionado una tecla (diferente de Return), el proceso será interrumpido y se nos mostrará un “prompt”, que entiende el conjunto de órdenes de fácil-uso, y donde el usuario puede ajustar ciertas variables, cargar y descargar todos los módulos, y también arrancar o reiniciar el sistema.
A continuación se presentan las órdenes más comunes del cargador. Para ver una descripción detallada de los mismos, por favor consulte la página de manual de loader(8)
Procede a iniciar el arranque del sistema, si es que no es interrumpido el periodo dado, en segundos. Despliega una cuenta regresiva, y el tiempo dado es de 10 segundos.
Procede a iniciar el kernel de manera inmediata, con las opciones dadas, si es que fuera el caso y el kernel especificado, si es que se especifica alguno.
Rehace la configuración automática de modulos en función a las variables definidas, como sucede al arrancar. Esta opción sólo tiene sentido utilizarla, si en primer lugar hemos usado unload, y hemos modificado alguna variable, siendo lo más común el kernel.
Muestra la ayuda de un tema específico, que lee del fichero /boot/loader.help. Si el tema que se indica es index, entonces se mostrará una lista de todos los temas disponibles.
Procesa el fichero que se ha especificado. El fichero se lee e interpreta línea por línea. Cualquier error detendrá inmediatamente a include.
-t
tipo] ficheroCarga el kernel, modulo del kernel, o el fichero del tipo dado, en base al fichero especificado. Cualquier argumento que se añada, será pasado al fichero.
-l
] [ruta]Despliega un listado de todos los ficheros que se localizan en la ruta
especificada, o en el directorio raíz, si es que no se le especifica ruta alguna.
Si se utiliza la opción -l
, también se mostrara
el tamaño de los ficheros.
-v
]Nos muestra una lista de todos los dispositivos desde los cuales puede ser
posible cargar modulos. Si se incluye la opción -v
, el
listado que se obtiene cuenta con más detalle.
-v
]Despliega los módulos cargados. Si se utiliza la opción -v
, se mostraran más detalles.
Despliega el contenido del fichero especificado, haciendo una pausa a cada
numero determinado de LINEAS
mostradas.
Reinicia el sistema de forma inmediata.
Especifica los valores de las variables de entorno del cargador.
Remueve todos los módulos cargados.
He aqui unos ejemplos prácticos sobre el uso correcto del cargador.
Para arrancar simplemente su kernel usual, pero en modo mono-usuario, deberá hacer lo siguiente:
boot -s
Para descargar su kernel usual y sus módulos correspondientes, y posteriormente cargar su kernel anterior (o cualquier otro):
unload load kernel.old
Puede utilizar kernel.GENERIC para referirse al kernel generico actual que viene con la instalación, o bien puede utilizar kernel.old para hacer referencia al kernel anterior (por ejemplo, cuando ha actualizado su sistema o ha recompilado su propio kernel).
Nota: Utilice lo siguiente para cargar sus módulos actuales con otro kernel:
unload set kernel="kernel.old" boot-conf
Para cargar un escrito de configuración (script que de forma automática hará todo lo que normalmente hace usted de forma manual al momento de ejecutarse el configurador de arranque):
load -t escrito_de_configuración /boot/kernel.conf
Anterior | Inicio | Siguiente |
El problema que representa arrancar el sistema | Subir | Interacción con el kernel durante el arranque |
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>.