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.
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.
Si 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)
segundos
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.
fichero
…Procesa el fichero que se ha especificado. El fichero se lee e interpreta línea por línea. Cualquier error detendrá inmediatamente a include.
fichero
Carga 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.
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.
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.
Despliega los módulos cargados. Si se utiliza la
opción -v
, se mostraran más
detalles.
fichero
Despliega el contenido del fichero especificado, haciendo
una pausa a cada numero determinado de LINEAS
mostradas.
Reinicia el sistema de forma inmediata.
variable
, set
variable
=valor
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).
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
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>.