From c6c62ff2950eb596c38731f0d11a03dd214b0f55 Mon Sep 17 00:00:00 2001 From: Jesus Rodriguez Cuesta Date: Mon, 14 Oct 2002 19:54:50 +0000 Subject: [PATCH] Add first version of the boot chapter. --- .../books/handbook/boot/chapter.sgml | 754 ++++++++++++++++++ 1 file changed, 754 insertions(+) create mode 100644 es_ES.ISO8859-1/books/handbook/boot/chapter.sgml diff --git a/es_ES.ISO8859-1/books/handbook/boot/chapter.sgml b/es_ES.ISO8859-1/books/handbook/boot/chapter.sgml new file mode 100644 index 0000000000..46e35f7607 --- /dev/null +++ b/es_ES.ISO8859-1/books/handbook/boot/chapter.sgml @@ -0,0 +1,754 @@ + + + + El Proceso de Arranque en FreeBSD + + + Sinópsis + iniciando + mecanismo de arranque (bootstrap) + + Al proceso de inicio del sistema y carga del sistema operativo + se le conoce como mecanismo de arranque (bootstrap), + o simplemente + arranque (booting). El proceso de arranque de FreeBSD + provee de gran flexibilidad al configurar lo que ocurre cuando se + inicia el sistema, permitiendole seleccionar de diferentes sistemas + operativos instalados en el mismo ordenador, o inclusive diferentes + versiones del mismo sistema oprativo o kernels instalados. + + Este capítulo detalla las opciones de configuración + que puede manejar y como personalizar el proceso de arranque de + FreeBSD. Esto incluye todo lo que sucede hasta que el kernel de + FreeBSD comienza con la comprobación de dispositivos y se + inicializa &man.init.8;. En caso de que usted desconozca cuando ocurre + todo esto, esto sucede cuando el color del texto que aparece al iniciar + el sistema, cambia de blanco a gris. + + Una vez que concluya con la lectura de este capítulo, usted + sabrá: + + + + Cuales son los componentes del mecanismo de arranque de FreeBSD, + y como es que interactuan entre sí. + + + + Las opciones que puede manejar con los componentes del mecanismo + de arranque de FreeBSD, para controlar el proceso de inicio + del sistema. + + + + + Só x86 + + El presente capítulo describe únicamente el + proceso de inicio, para sistemas FreeBSD que corren en plataformas + Intel x86. + + + + + El Problema que representa Arrancar el Sistema + + El encender una computadora e iniciar el sistema operativo, trae + consigo un dilema interesante. Por definición, la computadora + no sabe hacer nada, hasta que el sistema operativo ha sido cargado. Esto + incluye la ejecución de programas desde el disco duro. Así + que este es el dilema; si la computadora no sabe hacer nada hasta que se + cargue el sistema operativo, y el sistema operativo es un conjunto de + programas que residen en el disco duro, ¿Cómo es que + arranca el sistema operativo? + + Este problema se asemeja a un problema del libro Las + Aventuras del Barón Munchausen. Donde un personaje ha + caido parcialmente en un hoyo, y ha podido salir al tomarse de las cintas + de sus botas y jalarse hacia fuera. En los años mozos de la + computación, el término utilizado para hablar sobre el + proceso de carga del sistema operativo era mecanismo de + arranque (bootstrap), que por efectos de simplificación + ahora conocemos como arranque (booting). + + En equipos con arquitectura x86, el Sistema Básico de + Entrada/Salida (BIOS) es el responsable de cargar el sistema + operativo. Para hacer esto, el BIOS busca en el disco duro el Registro + Maestro de Arranque (RMA) (N de T. Conocido como MBR—Master Boot + Record), el cual debe localizarse en un lugar específico del disco. + El BIOS cuenta con suficiente información, para cargar y ejecutar + el RMA, y asumir que el RMA puede encargarse del resto de las tareas + necesarias en la carga del sistema operativo. + + + BIOS + Sistema Básico de Entrada/Salida + + + Si usted sólo cuenta con un sistema operativo instalado en + su disco duro, el RMA estándar será suficiente. Este RMA + buscará la primer partición del disco que pueda arrancar, y + posteriormente ejecutará el código restante de dicha + partición, para efecto de completar la carga del sistema + operativo. + + Si usted cuenta con varios sistemas operativos instalados en su + disco, entonces puede hacer uso de un RMA diferente, uno que despliegue + una lista de los diferentes sistemas operativos, y le permita escoger + cual de ellos desea que se cargue. FreeBSD cuenta con un RMA de este + tipo que puede ser instalado, así como otros distribuidores de + sistemas operativos cuentan con RMAs alternativos. + + En el caso de FreeBSD, el resto del mecanismo de arranque, está + dividido en tres etapas. La primer etapa es ejecutada por al RMA, que + sabe lo suficiente como para poner a la computadora en un estado + específico y ejecutar la segunda etapa. La segunda etapa puede + hacer un poco más que esto, antes de ejecutar la tercer etapa. La + tercer etapa finaliza el trabajo de carga del sistema operativo. El + trabajo es dividido en tres etapas, debido a las limitantes que tiene + una PC, en cuanto al tamaño de los programas a ejecutar, durante + las etapas uno y dos. El encadenar estas tareas, le permiten a FreeBSD + contar con un arrancador más flexible. + + kernel + init + + Posteriormente el kernel es inicializado y comienza con la + comprobación de dispositivos, y prepararlos para su uso. Una + vez que el proceso de arranque del kernel ha finalizado, el kernel + transfiere el control al proceso de usuario &man.init.8;, quien se + asegura de que los discos se encuentren en buen estado para su + uso. Posteriormente &man.init.8; inicia la configuración + fuente a nivel de usuario, que monta los sistemas de ficheros, + configura las tarjetas de red para que pueden comunicarse en la red, + y comunmente inicia todos los procesos que normalmente son ejecutados + en un sistema FreeBSD al arrancar el mismo. + + + + El RMA, y las Etapas de Arranque Uno, Dos y Tres + + + RMA, <filename>/boot/boot0</filename> + Registro Maestro de Arranque (RMA) + + 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. + + + Pantalla <filename>boot0</filename> + + F1 DOS +F2 FreeBSD +F3 Linux +F4 ?? +F5 Drive 1 + +Default: F2 + + + 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 los siguientes + comandos. + + &prompt.root; 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 + 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 + 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; + , se + mostrará tal cual aparece en este + documento, una vez que ha terminado la fase de + partición del disco duro. + + + + + Etapa Uno, <filename>/boot/boot1</filename>, y Etapa Dos, + <filename>/boot/boot2</filename> + + 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. + + + Pantalla de <filename>boot2</filename> + + >> FreeBSD/i386 BOOT +Default: 0:ad(0,a)/kernel +boot: + + + Si alguna vez requiere reemplazar los ficheros + boot1 y boot2 + instalados, utilice &man.disklabel.8;. + + &prompt.root; 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 Dedicado + + Si sólo utiliza el nombre del disco, tal como + ad0, al usar el comando &man.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 &man.disklabel.8;. + + + + + Etapa Tres, <filename>/boot/loader</filename> (cargador de arranque) + + cargador-de-arranque (boot-loader) + 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 comandos integrados + de fácil uso, respaldado por un intérprete más + poderoso, con una serie de comandos de mayor complejidad. + + + Flujo del Programa Cargador + + 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 ingresar comandos desde un fichero script o de manera + interactiva. + + cargador + configuración del cargador + + 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 + interprete de comandos (prompt), que entiende el conjunto de + comandos de fácil-uso, y donde el usuario puede ajustar + ciertas variables, cargar y descargar todos los modulos, y finalmente + arrancar o reiniciar el sistema. + + + + Comandos Internos del Cargador + + A continuación se presentan los comandos más + comunes del cargador. Para ver una descripción detallada + de los mismos, por favor consulte la página de ayuda + &man.loader.8; + + + + autoboot 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. + + + + + boot + -opciones + nombre_del_kernel + + + 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. + + + + + boot-conf + + + 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 el + comando unload, y hemos modificado alguna + variable, siendo lo más común el + kernel. + + + + + help + tema + + + 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. + + + + + include fichero + … + + + Procesa el fichero que se ha especificado. + El fichero es + leido e interpretado línea por línea. Cualquier + error detendrá inmediatamente al comando include. + + + + load + tipo + 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. + + + + ls + 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 , también + se mostrara el tamaño de los ficheros. + + + + lsdev + + + Nos muestra una lista de todos los dispositivos desde + los cuales puede ser posible cargar modulos. Si se + incluye la opción , el listado + que se obtiene cuenta con más detalle. + + + + + lsmod + + + Despliega los módulos cargados. Si se utiliza la + opción , se mostraran más + detalles. + + + + + more fichero + + + Despliega el contenido del fichero especificado, haciendo + una pausa a cada numero determinado de LINEAS + mostradas. + + + + + reboot + + + Reinicia el sistema de forma inmediata. + + + + + set variable + set + variable=valor + + + Especifica los valores de las variables de entorno del + cargador. + + + + + unload + + + Remueve todos los módulos cargados. + + + + + + + Ejemplos de Uso del Cargador + + He aqui unos ejemplos prácticos sobre el uso + correcto del cargador. + + + modo de arranque mono-usuario + + 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): + + kernel.old + + + 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 + + + + + + + + Interacción con el Kernel Durante el Arranque + + kernel + interacción de arranque + + + Una vez que el kernel ha sido iniciado, ya sea por + el cargador (que es lo + común) o bien por boot2 (sobrepasando el cargador), + examinará las opciones de arranque, en busca de cambios, + y ajustar su comportamiento en caso de ser necesario. + + + + kernel + opciones de arranque + + Opciones de Arranque del Kernel + + He aqui las opciones de arranque más comunes: + + + + + + + durante la inicialización del kernel, pregunta por + los dispositivos a utilizar, para montar el sistema de ficheros + raíz. + + + + + + + + arranque desde una unidad de CDROM. + + + + + + + + ejecuta UserConfig, la utilidad de configuración + de arranque del kernel. + + + + + + + + arranca el sistem en modo mono-usuario. + + + + + + + + imprime mensajes informativos durante el arranque del kernel + + + + + + Existen otras opciones de arranque, por favor vea la página + de ayuda &man.boot.8; para más información al respecto. + + + + + + + + + + init + + Init: Inicialización del Proceso de Control + + Ya que el kernel ha finalizado de arrancar, pasará el + control a un proceso de usuario llamado init, + el cual se localiza en /sbin/init, o bien + en la ruta especificada por la variable de entorno + init_path del cargador. + + + Secuencia Automática de Reinicio + + La secuencia automática de reinicio se asegura + de que los sistemas de ficheros disponibles en el sistema + sean consistentes. Si no lo son, y el programa + fsck no puede arreglar estas + inconsistencias, init envia el sistema + a modo monousuario, de + tal forma que el administrador pueda ingresar en él y + arreglar los problemas directamente. + + + + Modo Mono-Usuario + modo mono-usuario + consola + + A este modo se puede llegar por medio de la secuencia automática de reinicio, + o por medio de la opción en el + arranque de usuario o al establecer la variable + boot_single en el cargador. + + También desde el modo multi-usuario se puede acceder, + al utilizar el comando shutdown sin la + opción de reinicio () o la de + apagado () del sistema. + + Si la consola del sistema esta configurada de modo + inseguro en el fichero + /etc/ttys, entonces el sistema + solicitará la contraseña del + superusuario (root), antes de ingresar + al sistema en modo mono-usuario. + + + Una Consola Insegura en /etc/ttys + + # name getty type status comments +# +# If console is marked "insecure", then init will ask for the root password +# when going to single-user mode. +console none unknown off insecure + + + + Una consola insegura significa que usted + considera como insegura físicamente su consola, por lo + que desea asegurarse de que sólo quien conoce la + contraseña del superusuario puede + ingresar al sistema en modo mono-usuario, y no que desea ejecutar + la consola inseguramente. Esto es, si desea contar con seguridad + escoja la opción insecure, y no + secure. + + + + + Modo Multi-Usuario + modo multi-usuario + + En el caso de que init encuentre en + buen estado al sistema de ficheros, o una vez que el usuario + ha terminado del modo mono-usuario, el sistema + entrará al modo multi-usuario, en donde comienzan + los ficheros de configuración-fuente del sistema. + + + ficheros rc + Configuración-Fuente(rc) + + La configuración fuente lee la configuración + por default del fichero + /etc/defaults/rc.conf, y detalles + específicos del sistema desde el fichero + /etc/rc.conf, y posteriormente procede + a montar los sistemas de ficheros del sistema, descritos en + /etc/fstab, iniciar servicios de red, + así como varios demonios del sistema, para finalmente + ejecutar los escritos (scripts) de configuración + instalados por paquetes, localmente. + + La página de ayuda &man.rc.8; es una buena referencia + para conocer más de este tipo de ficheros, así como + examinar los mismos ficheros. + + + + + + Secuencia de Apagado + + apagado + + + Una vez que el apagado sea controlado, por medio del + comando shutdown, init + ejecutará el escrito /etc/rc.shutdown, + para posteriormente enviar a todos los procesos la señal + TERM, y subsecuentemente la señal + KILL a cualquiera que no haya terminado en + tiempo. + + + + +