Está en la página 1de 37

Existen dos tipos de enlaces, los enlaces simblicos y los enlaces duros (fuertes).

Cuando creamos un enlace simblico significa que creamos un puntero a dicho fichero o directorio. Si borrases dicho fichero o directorio el enlace quedara apuntando a la nada. Cuando creamos un enlace simblico significa que creamos un puntero a dicho fichero o directorio. Si borrases dicho fichero o directorio el enlace quedara apuntando a la nada.

Por otra parte si creas un enlace duro, lo que hace es crear una copia del fichero o directorio, la ventaja de este tipo de enlace es que si modificas alguno de los dos siempre se modificaran los dos y si borras uno el otro no se perdera.

Normalmente no se hacen enlaces duros ya que implica tener duplicada la informacin ocupando espacio de manera innecesaria, por esta razn solo el root tiene permisos para hacer este tipo de enlaces.

Otra desventaja de los enlaces duros es que slo se pueden hacer entre ficheros o directorios de una misma unidad El comando para crear enlaces es el siguiente: ln -parmetro rutadirectorio nombre_enlace Parmetros: -s Para enlaces simblicos Si no ponemos ningn parmetro se creara un enlace duro (fuerte).

Comentario: Mmmm... El enlace duro tampoco duplica la informacion, lo que pasa que tiene otro vnode distinto... por supuesto en los dos archivos pone el mismo tamao, xq tan valida es una entrada como otra. pero en espacio en disco no se duplica.

Gestores de arranque de Linux De aqu en adelante, nos concentraremos en LILO y GRUB, dado que estos son los cargadores de arranque incluidos en la mayora de las distribuciones de Linux. LILO hace rato se utiliza, y GRUB es ms nuevo. El GRUB original es ahora lo que se conoce como GRUB Legacy, y GRUB 2 contina en proceso bajo el auspicio de la Fundacin de Software Libre (vea Resources por ms detalles). Analizaremos brevemente a GRUB 2, para darle una idea de las diferencias principales y del modo en que GRUB y GRUB 2 pueden coexistir. En el resto del artculo nos referiremos a GRUB Legacy como GRUB, salvo que el contexto especficamente de a entender GRUB 2. Una nueva versin de LILO denominada ELILO (la cual es una diseada para los sistemas de arranque que utilizan Intel's Extensible Firmware interface, o EFI, en vez de BIOS) se encuentra disponible. Vea Resources para obtener informacin adicional sobre GRUB 2 y ELILO. El proceso de instalacin de su distribucin probablemente le de la opcin de elegir qu cargador de arranque instalar. Tanto GRUB como LILO trabajarn con los discos ms modernos, aunque algunas distribuciones, principalmente Fedora, ya no vienen con LILO. Recuerde que la tecnologa del disco ha avanzado rpidamente, por lo cual siempre debera asegurarse de elegir un cargador de arranque, una distribucin de Linux (u otro sistema operativo), y un sistema BIOS, que funcione con su nuevo disco. De otro modo, podra perder datos. Asimismo, si agrega nueva distribucin a un sistema existente, quiz necesite asegurarse de que posee el ltimo LILO o GRUB en su MBR. Tambin necesitar una versin bastante reciente ya sea de GRUB como de LILO si desea arrancar desde un disco LVM o RAID. Los cargadores de etapa 2 usados en LILO y GRUB le permiten elegir cul de los diversos sistemas operativos y de las distintas versiones cargar. Sin embargo, LILO y GRUB difieren significativamente en que un cambio en el sistema exigir que usted use un comando para recrear la configuracin de arranque de LILO cada vez que actualice un kernel o efecte otros cambios en el sistema, mientras que GRUB puede lograrlo mediante un archivo de texto de configuracin que usted puede editar. GRUB 2 tambin requiere una modificacin en el archivo de configuracin que por lo general se guarda en /etc. Volver arriba LILO LILO, el LInux LOader, es uno de los dos cargadores de arranque ms comunes de Linux. LILO puede instalarse en el MBR de su unidad de arranque, o en el registro de arranque de particin de una particin. Tambin puede instalarse en

dispositivos extrables como discos flexibles, CDs o memorias USB. Si usted no est totalmente familiarizado con LILO, ser conveniente que practique primero lo que haremos en nuestros ejemplos en un disco flexible o en una memoria USB. Durante la instalacin de Linux, usted por lo general especificar LILO o GRUB como gestor de arranque. Si elige GRUB, es posible que no tenga LILO instalado. En ese caso, deber instalar el paquete correspondiente. Usted quiz desee tambin instalar el paquete lilo-doc para acceder a ms documentacin y ms ejemplos. A partir de este momento, asumiremos que usted ya cuenta con el paquete de LILO instalado en su sistema. Visite series roadmap para acceder a los artculos sobre administracin de paquetes si necesita ayuda. Configure LILO utilizando un archivo de configuracin, que por lo general es /etc/lilo.conf. Usted puede utilizar el comando liloconfig (generalmente encontrado en /usr/sbin) para generar el archivo de configuracin inicial y luego editarlo segn sea necesario. El archivo de configuracin que aparece en el Listado 1 fue generado de esta forma. El archivo fue explicado bastante bien, pero las pginas del manual referidas a lilo y a lilo.conf le brindarn ms detalles. Este es un archivo de configuracin de LILO que podra utilizarse en un sistema de doble arranque con Windows y con uno o ms sistemas Linux. Listado 1. Ejemplos de /etc/lilo.conf
# Originally generated by liloconfig - modified by Ian Shields # This allows booting from any partition on disks with more than 1024 # cylinders. lba32 # Specifies the boot device (floppy) boot=/dev/fd0 # Specifies the device that should be mounted as root. # If the special name CURRENT is used, the root device is set to the # device on which the root file system is currently mounted. If the root # has been changed with -r , the respective device is used. If the # variable ROOT is omitted, the root device setting contained in the # kernel image is used. It can be changed with the rdev program. root=/dev/sda7 # Bitmap configuration for /boot/coffee.bmp bitmap=/boot/coffee.bmp bmp-colors=12,,11,15,,8 bmp-table=385p,100p,1,10 bmp-timer=38,2,13,1

# Enables map compaction: # Tries to merge read requests for adjacent sectors into a single # read request. This drastically reduces load time and keeps the map # smaller. Using COMPACT is especially recommended when booting from a # floppy disk. compact # Install the specified file as the new boot sector. # LILO supports built in boot sectors, you only need # to specify the type, choose one from 'text', 'menu' or 'bitmap'. # new: install=bmp old: install=/boot/boot-bmp.b # new: install=text old: install=/boot/boot-text.b # new: install=menu old: install=/boot/boot-menu.b or boot.b # default: 'menu' is default, unless you have a bitmap= line # Note: install=bmp must be used to see the bitmap menu. # install=menu install=bmp # # # # Specifies the number of _tenths_ of a second LILO should wait before booting the first image. LILO doesn't wait if DELAY is omitted or if DELAY is set to zero. delay=20

# Prompt to use certain image. If prompt is specified without timeout, # boot will not take place unless you hit RETURN. Timeout is in tenths of # a second. prompt timeout=200 # Enable large memory mode. large-memory # Specifies the location of the map file. If MAP is # omitted, a file /boot/map is used. map=/boot/map # Specifies the VGA text mode that should be selected when # booting. The following values are recognized (case is ignored): # NORMAL select normal 80x25 text mode. # EXTENDED select 80x50 text mode. The word EXTENDED can be # abbreviated to EXT. # ASK stop and ask for user input (at boot time). # <number> use the corresponding text mode. A list of available modes # can be obtained by booting with vga=ask and pressing [Enter]. vga=normal # Defines non-standard parameters for the specified disk. #disk=/dev/sda # bios=0x80

# # # # # # #

If you are using removable USB drivers (with mass-storage) you will need to tell LILO to not use these devices even if defined in /etc/fstab and referenced in /proc/partitions. Adjust these lines to your devices: disk=/dev/sda inaccessible disk=/dev/sdb inaccessible

# These images were automagically added. You may need to edit something. image=/boot/vmlinuz-2.6.31-14-generic label="Lin 2.6.31-14" initrd=/boot/initrd.img-2.6.31-14-generic read-only image=/boot/vmlinuz-2.6.31-20-generic label="Lin 2.6.31-20" initrd=/boot/initrd.img-2.6.31-20-generic read-only image=/boot/memtest86+.bin label="Memory Test+" read-only # If you have another OS on this machine (say DOS), # you can boot if by uncommenting the following lines # (Of course, change /dev/sda1 to wherever your DOS partition is.) other=/dev/sda6 label="Fedora 8" other=/dev/sda1 label="Windows XP"

Verificamos nuestra configuracin creando un disco flexible, para lo cual especificamos boot=/dev/fd0, cerca del archivo. Tambin aumentamos el tiempo del prompt a 20 segundos (200 aumentos de una dcima de segundo), y agregamos una segunda entrada "other" a la cadena de carga al cargador de arranque en la particin Fedora 8 (/dev/sda6). LILO solo permite un comando root en un archivo de configuracin, por lo cual puede arrancar mltiples imgeners de la particin raz, pero necesita encadenar el arranque a otro cargador de arranque para arrancar una imagen de una instalacin diferente, como Fedora 8 (/dev/sda6) o Windows XP (/dev/sda1) en nuestro ejemplo. Usted utiliza el comando lilo, ubicado en /sbin/lilo, para ingresar un registro de arranque de la etapa 1 y crear un archivo de asignaciones xml (/boot/map)

utilizando la informacin de la configuracin, como en el ejemplo anterior, normalmente ubicado en /etc/lilo.conf. Hay algunos usos ms de este comando que mencionaremos luego. Ahora bien, si formateamos un disco flexible con un sistema de archivos Linux como ext2, podemos ejecutar el comando lilo (/sbin/lilo) para crear un disco de arranque flexible. Los datos de salida obtenidos pueden observarse en el Listado 2. Obsrvese que el comando lilo posee cinco niveles de escritura. Especifique una -v adicional para cada nivel. Este ejemplo se cre utilizando lilo -v -v. Listado 2. Creacin de un disco de arranque flexible con lilo
LILO version 22.8, Copyright (C) 1992-1998 Werner Almesberger Development beyond version 21 Copyright (C) 1999-2006 John Coffman Released 19-Feb-2007, and compiled at 10:52:38 on Aug 25 2009 Running Linux kernel 2.6.31-14-generic on i686 Ubuntu raid_setup returns offset = 00000000 ndisk = 0 BIOS VolumeID Device Reading boot sector from /dev/fd0 pf_hard_disk_scan: ndevs=1 0800 54085408 /dev/sda device codes (user assigned pf) = 0 device codes (user assigned) = 0 device codes (BIOS assigned) = 1 device codes (canonical) = 1 mode = 0x03, columns = 80, rows = 25, page = 0 Using BITMAP secondary loader Calling map_insert_data Secondary loader: 19 sectors (0x3800 dataend). Warning: The boot sector and map file are on different disks. bios_boot = 0x00 bios_map = 0x80 map==boot = 0 map S/N: 54085408 Mapping bitmap file /boot/coffee.bmp Calling map_insert_file Compaction removed 592 BIOS calls. Bitmap: 603 sectors. BIOS data check was okay on the last boot Boot image: /boot/vmlinuz-2.6.31-14-generic Setup length is 26 sectors. Compaction removed 7452 BIOS calls. Mapped 7601 sectors. Mapping RAM disk /boot/initrd.img-2.6.31-14-generic Compaction removed 14696 BIOS calls. RAM disk: 14930 sectors. Added Lin_2.6.31-14 *

Boot image: /boot/vmlinuz-2.6.31-20-generic Setup length is 26 sectors. Compaction removed 7468 BIOS calls. Mapped 7617 sectors. Mapping RAM disk /boot/initrd.img-2.6.31-20-generic Compaction removed 14704 BIOS calls. RAM disk: 14938 sectors. Added Lin_2.6.31-20 Boot image: /boot/memtest86+.bin Setup length is 4 sectors. Compaction removed 243 BIOS calls. Mapped 254 sectors. Added Memory_Test+ Boot other: /dev/sda6, loader CHAIN Pseudo partition start: 43198848 Compaction removed 0 BIOS calls. Mapped 6 (4+1+1) sectors. Added Fedora_8 Boot other: /dev/sda1, on /dev/sda, loader CHAIN Compaction removed 0 BIOS calls. Mapped 6 (4+1+1) sectors. Added Windows_XP BIOS VolumeID Device 80 54085408 0800 Writing boot sector. /boot/boot.0200 exists - no boot sector backup copy made. Map file size: 336896 bytes. RAID device mask 0x0000 One warning was issued.

Ahora tenemos nuestro disco flexible de arranque LILO. Si LILO encuentra un error, usted podr ver un mensaje de error, y el sector de arranque no ser especificado. El mensaje le dar una idea de lo que necesita corregir. Si utilizamos el disco flexible que hemos creado recin y reiniciamos la mquina, veremos un mensaje similar al que aparece en la Figura 1. Observe que el contador regresivo que se encuentra en la parte superior de la pantalla, el cual estar contando a partir de los veinte segundos (200 dcimas de un segundo). Si usted no hace la eleccin dentro de los 20 segundos, la opcin resaltada (la primera, o Lin_2.6.31-14 en este caso) ser cargada automticamente.

Figura 1. Pantalla de arranque de LILO

Usted puede utilizar las flechas de posicin para moverse arriba y abajo en la lista de opciones. La Figura 2 muestra cmo seleccionar el ltimo kernel Lin_2.6.31-20, el cual se encuentra en segundo lugar. Obsrvese que el valor del reloj ya no se muestra. Presione Enter para cargar este kernel.

Figura 2. Eleccin de otro objetivo de arranque con LILO

Cuando haya verificado el disco flexible de arranque, cargue la entrada boot=/dev/fd0 en su archivo de configuracin lilo.conf para instalar LILO en el MBR o en el registro de arranque de una particin. Por ejemplo, boot=/dev/sda instalar LILO en el registro de arranque maestro de su disco duro principal. Ahora posee una idea de LILO y de su archivo de configuracin. Usted puede anular algunas de las opciones de configuracin desde la lnea de comando lilo. Encontrar ms informacin sobre este tema en las pginas del manual de lilo utilizando el comando man lilo, o man lilo.conf. Encontrar informacin ms detallada en la gua de usuario PostScript que se encuentra instalada junto con su paquete lilo o lilo-doc. ste debera encontrarse instalado en el directorio de su documentacin, pero su ublicacin exacta puede variar segn el sistema. Una forma de ubicar este archivo es filtrar la lista de paquetes a travs de grep. El Listado 3 muestra cmo hacer esto en los sistemas Ubuntu 9.10 basados en Debian que han sido utilizados en este ejemplo. Listado 3. Bsqueda de la gua del usuario de LILO con dpkg
ian@pinguino:~$ dpkg -L lilo-doc | grep "ps" /usr/share/doc/lilo-doc/user.ps.gz

/usr/share/doc/lilo-doc/tech.ps.gz

El comando correspondiente en un sistema basado en RPM como Fedora debera ser: rpm -ql lilo-doc | grep "ps" Los comandos auxiliares de LILO LILO posee varios comandos auxiliares: lilo -q Despliega informacin desde el archivo de configuraciones xml. lilo -R Configura lilo para que ste automticamente arranque el sistema especificado slo en el prximo rearranque. Esto resulta conveniente en el caso de sistemas de rearranque automtico remoto. lilo -I Despliega informacin sobre la ruta de un kernel. lilo -u Desinstala lilo y reinstala el registro de arranque anterior. Cuando LILO arranca un sistema Linux, usted quiz desee proporcionar parmetros adicionales al momento del arranque. Por ejemplo, si su arranque grfico no est funcionando, usted quiz desee arrancar en el modo 3 o en el modo de usuario nico para solucionarlo. Si usted elige una entrada y presiona la tecla TAB debera ver una ventana terminal que ha sido completada previamente con el nombre de la etiqueta seleccionada, tal como se puede observar en la Figura 3.Cualquier caracter ingresado en el nombre de la etiqueta ser trasladado al kernel. Por ejemplo, en nuestro ejemplo, usted elegira el ltimo sistema Ubuntu simplemente movindose una lnea hacia abajo y presionando TAB. Si usted no elige ningn nombre, luego tendr que tipear el que especific en la etiqueta. Usted puede ver porqu utilizar etiquetas ms breves que las que aparecen en nuestros ejemplos podra resultar una buena idea: typing Lin_2.6.31.20 isn't easy. Figura 3. Ingreso de los parmetros del kernel con LILO

En la Figura 3, hemos ingresado "single" a los parmetros de arranque para establecer que queramos arrancar en el modo de usuario nico para solucionar algunas cuestiones del sistema. Vea la seccin Recovery por ms informacin sobre el uso de los parmetros de arranque. Recuerde tambin que con LILO usted debe ejecutar el comando lilo siempre que actualice el archivo de configuracin (/etc/lilo.conf). Tambin debera ejecutar el comando lilo si agrega, mueve, o borra particiones o hace otras modificaciones que pudieran invalidar el cargador de arranque generado. Volver arriba GRUB GRUB, o cargador GRand Unifood Boot, es el otro de cargador de arranque ms comn de Linux. Al igual que LILO, GRUB puede instalarse en el MBR de su unidad de arranque, o en el registro de arranque de particin de una particin. Tambin puede instalarse en los dispositivos extrables como por ejemplo los discos flexibles, los CDs o las memorias USB. Si usted no est familiarizado todava con GRUB, ser conveniente que practique en un disco flexible o una memoria USB lo que haremos en nuestros ejemplos. GRUB, o GNU GRUB, ha sido desarrollado bajo el auspicio de la Fundacin de Software Libre. Existe una nueva versin, GRUB 2, en desarrollo, de manera que las versiones originales GRUB 0.9x son conocidas ahora como Legado Grub. Durante la instalacin de Linux usted especificar por lo general LILO o GRUB como gestor de arranque. Si elige LILO, es posible que no tenga GRUB instalado. En ese caso, deber instalar el paquete del mismo. Supongamos que tiene el paquete GRUB instalado. Consulte nuestra series roadmap para acceder a los artculos sobre administracin de paquetes si desea obtener ayuda con esto. GRUB (Legacy) tiene un archivo de configuracin que se guarda generalmente en /boot/grub/grub.conf. Si su sistema de archivos soporta vnculos simblicos, como la mayora de los sistemas de archivos de Linux, probablemente tendr /boot/grub/menu.lst como vnculo simblico a /boot/grub/grub.conf. El comando grub (/sbin/grub, o, en algunos sistemas, /usr/sbin/grub) es un shell pequeo pero considerablemente poderoso que soporta a numerosos comandos para instalar GRUB, iniciar sistemas, localizar y mostrar archivos de configuracin y realizar tareas similares. Este shell comparte gran parte del cdigo con el cargador de arranque GRUB de la segunda etapa, de manera que resultar til aprender sobre GRUB sin tener que realizar el arranque en un entorno GRUB de segunda etapa. La etapa 2 de GRUB se ejecuta en modo men, para permitirle elegir un sistema operativo desde un men, o en modo comando, donde se especifican comandos individuales para cargar un sistema.

Hay tambin muchos otros comandos, como grub-install, que utilizan el shell grub y ayudan a automatizar tareas como la instalacin de GRUB. El Listado 7 muestra parte de un archivo de configuracin de GRUB. Cuando lo analice, recuerde algo importante: GRUB, al menos GRUB Legacy, los dispositivos de conteo, las particiones, y los items que requieren conteo, comienzan en 0 en lugar de 1. Tambin tenga en cuenta que la primera lnea del kernel es muy larga. Nosotros la mostramos con una barra invertida (\) que indica donde la rompemos para la publicacin. Listado 4. /boot/grub/menu.lst Ejemplo de configuracin de GRUB
# grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You do not have a /boot partition. This means that # all kernel and initrd paths are relative to /, eg. # root (hd0,5) # kernel /boot/vmlinuz-version ro root=/dev/sda6 # initrd /boot/initrd-version.img #boot=/dev/sda6 default=1 timeout=10 splashimage=(hd0,5)/boot/grub/splash.xpm.gz #hiddenmenu password --md5 $1$RW1VW/$4XGAklxB7/GJk0uO47Srx1 title Upgrade to Fedora 11 (Leonidas) kernel /boot/upgrade/vmlinuz preupgrade \ repo=hd::/var/cache/yum/preupgrade stage2=\ hd:UUID=8b4c62e7-2022-4288-8995-5eda92cd149b:/boot/upgrade/install.img \ ks=hd:UUID=8b4c62e7-2022-4288-8995-5eda92cd149b:/boot/upgrade/ks.cfg initrd /boot/upgrade/initrd.img title Fedora (2.6.26.8-57.fc8) root (hd0,5) kernel /boot/vmlinuz-2.6.26.8-57.fc8 ro root=LABEL=FEDORA8 rhgb quiet initrd /boot/initrd-2.6.26.8-57.fc8.img title Fedora (2.6.26.6-49.fc8) root (hd0,5) kernel /boot/vmlinuz-2.6.26.6-49.fc8 ro root=LABEL=FEDORA8 rhgb quiet initrd /boot/initrd-2.6.26.6-49.fc8.img title GRUB Menu rootnoverify (hd0,1) chainloader +1 title Windows rootnoverify (hd0,0) chainloader +1

Al igual que la configuracin de LILO, el primer grupo de opciones nombrado ms arriba controla el modo de operar de GRUB. En GRUB, estas opciones se denominan comandos de men, y deben aparecer antes de otros comandos. Las secciones restantes proporcionan opciones por imgenes para los sistemas operativos que deseamos permitir que arranquen el GRUB. Tenga en cuenta que "title" es considerado un comando de men. Cada instancia de title es seguida de uno o ms comandos generales o entradas de men. Nuestro ejemplo de LILO fue un ejemplo bsico tpico de un sistema de arranque dual con sistema Windows y con dos sistemas Linux. Este ejemplo viene del mismo sistema que utilizamos antes. De hecho, se trata del men de arranque que es cargado en cadena desde la entrada "Fedora 8" del men de LILO. Usted reconocer muchos elementos iguales en los archivos de configuracin de LILO y de GRUB. Quiz se le ocurra pensar que es lo que necesita cambiar para agregar los sistemas operativos extra aqu presentados al ejemplo de LILO presentado anteriormente. Los comandos del men que aplican a todas las otras secciones en nuestro ejemplo son: # Cualquier lnea que comience con un # es un comentario y es ignorado por GRUB. Este archivo de configuracin particular fue generado en principio por anaconda, el instalador de Red Hat. Probablemente encontrar comentarios agregados a su archivo de configuracin de GRUB si usted instala GRUB cuando instala Linux. Los comentarios a menudo servirn de ayuda para el programa de actualizacin del sistema de manera que la configuracin de GRUB puede mantenerse al da con kernels actualizados. Preste atencin a cualquier marcador colocado para este fin si usted edita por si mismo la configuracin. default Especifica qu sistema cargar si el usuario no realiza una eleccin dentro del tiempo de espera correspondiente. En nuestro ejemplo, default=2 significa cargar el tercer tem. Recuerde que GRUB cuenta a partir de 0 y no de 1. Si esto no est especificado, lo que har de manera predeterminada es arrancar el primer tem, el nmero de tem 0. timeout Especifica un tiempo de espera en segundos antes de arrancar el tem predeterminado. Observe que LILO utiliza dcimas de segundo para sus tiempos de espera mientras que GRUB utiliza segundos completos. splashimage

Especifica el entorno, o splash, imagen a visualizarse con el men de arranque. GRUB Legacy denomina al primer disco duro como (hd0) y a la primera particin del disco como (hd0,0), de manera que la especificacin splashimage=(hd0,6)/boot/grub/splash.xpm.gz significa que hay que usar el archivo /boot/grub/splash.xpm.gz ubicado en la particin 7 del primer disco duro. Recuerde que el conteo se inicia desde 0. Observe adems, que la imagen es un archivo XPM comprimido con gzip. El soporte para splashimage es un parche que puede o no estar incluido en la distribucin. password Especifica una contrasea que se debe ingresar antes de que el usuario pueda desbloquear el men para editar una lnea de configuracin o ingresar comandos GRUB. Al igual que con LILO, la contrasea puede aparecer en texto claro. GRUB tambin permite que las contraseas se almacenen como un fichero MD5, como sucede en nuestro ejemplo. Esto es de alguna manera ms seguro y la mayora de los administradores fijan una contrasea. Sin una contrasea, el usuario tendra acceso completo a la lnea de comandos GRUB. Nuestro ejemplo muestra dos kernels Fedora 8 y una actualizacin a la opcin Fedora 11, junto con Windows XP y una opcin de cadena "GRUB Menu". Los comandos utilizados en estas secciones son: title Es un ttulo descriptivo que se muestra como el tem del men cuando Grub realiza el arranque. Usted usar las teclas de flecha para moverse hacia arriba o hacia abajo en la lista de ttulos, y luego deber presionar la tecla Enter para seleccionar un tem determinado. root Especifica la particin que se debe arrancar. Al igual que con splashimage, recuerde que el conteo comienza en 0, de manera que el primer sistema Red Hat que se especifica como raz (hd0,6) est en realidad en la particin 7 del primer disco duro (en este caso, /dev/hda7), mientras que el primer sistema Ubuntu que se especifica como raz (hd1,10) est en el segundo disco duro (/dev/hdb11). En algunos casos, GRUB intentar montar esta particin para verificarla y proporcionar valores al sistema operativo iniciado. kernel Especifica la imagen de kernel que se cargar as como cualquier otro parmetro de kernel requerido. Esto es similar a la combinacin de la

imagen LILO y los comandos append. Tenemos dos kernels Fedora 8 diferentes, adems de la actualizacin del kernel en este ejemplo. initrd Es el nombre del disco inicial RAM, que contiene los mdulos necesarios para el kernel antes de montar sus sistemas de archivos. savedefault No se utiliza en este ejemplo. Si el comando default=saved se especifica, y el comando savedefault se especifica para un sistema operativo, entonces el arranque del sistema operativo provocar que se convierta en la opcin predeterminada hasta que otro sistema operativo con savedefault especificado sea cargado. En este ejemplo, la especificacin de default=2 anular toda opcin predeterminada que haya sido guardada. boot Es un parmetro opcional que ordena a GRUB que arranque el sistema operativo seleccionado. Esta es la accin predeterminada cuando todos los comandos de una seleccin han sido procesados. lock No se utiliza en este ejemplo. ste no arrancar el tem especificado hasta que se ingrese una clave. Si usted utiliza esta opcin, entonces debera tambin especificar una clave en las opciones iniciales; de otro modo, un usuario puede modificar la opcin lock y arrancar el sistema, o agregar "single" a una de las otras entradas. Es posible especificar una clave diferente para items particulares si as se lo desea. rootnoverify Es similar a root, a excepcin de que GRUB no intenta montar el sistema de archivos o verificar sus parmetros. Suele usarse en sistemas de archivos como NTFS que no son soportados por GRUB. Tambin podra usarse si se desea que GRUB cargue el registro maestro de arranque en un disco duro, por ejemplo, para acceder a un archivo de configuracin diferente o para volver a cargar el cargador de arranque anterior. chainloader Es similar a root, a excepcin de que GRUB no intenta montar el sistema de archivos o verificar sus parmetros. Suele usarse en sistemas de archivos como NTFS que no son soportados por GRUB. Tambin podra usarse si se desea que GRUB cargue el registro maestro de arranque en

un disco duro, por ejemplo, para acceder a un archivo de configuracin diferente o para volver a cargar el cargador de arranque anterior. Ahora ya tiene una idea de lo que puede encontrar en un archivo /boot/grub/grub.conf (o /boot/grub/menu.lst) tpico. Existen muchsimos ms comandos GRUB que proporcionan un gran control sobre el proceso de arranque y, adems, ayudan en la instalacin de grub y en otras tareas. Conozca ms acerca de estos comandos en el manual de GRUB que se encuentra disponible en su sistema a travs de info grub. Ahora que ya tenemos un archivo de configuracin GRUB, debemos crear un disco flexible de arranque para probarlo. La forma ms fcil de hacerlo es usar el comando grub-install tal como se muestra en el Listado 5. Si usted est instalando GRUB en su disco flexible o en una particin, entonces debera desmontar el primer dispositivo. Esto no aplica cuando usted est instalando GRUB en el MBR de un disco duro, dado que en ese caso usted slo montara particiones(/dev/sda1, /dev/sda2, etc.) y no el disco completo (/dev/sda). Listado 5. Instalacin de GRUB en un disco flexible
[root@pinguino ~]# grub-install /dev/fd0 Installation finished. No error reported. This is the contents of the device map /boot/grub/device.map. Check if this is correct or not. If any of the lines is incorrect, fix it and re-run the script `grub-install'. (fd0) (hd0) /dev/fd0 /dev/sda

Nota: Usted debera tambin utilizar un nombre del dispostitivo GRUB (fd0) en lugar de /dev/fd0, pero si lo usa, debera colocarlo entre comillas para evitar que el shell interprete los parntesis. Por ejemplo: grub-install '(fd0)' El mapa de dispositivos muestra cmo GRUB iguala la vista interna de sus discos (fd0, hd0, hd1) con la vista Linux (/dev/fd0, /dev/hda, /dev/hdb). Probablemente esto resulta correcto en un sistema con uno o dos discos duros IDE y, tal vez, una unidad flexible. Si ya existe un mapa de dispositivos, GRUB lo reutilizar sin realizar el sondeo. Si acaba de agregar una nueva unidad y quiere forzar la generacin de un nuevo mapa de dispositivos, agregue la opcin --recheck al comando grub-install . A veces usted puede ver un mensaje como el que se muestra en el Listado 6. En ese caso tambin, usted necesitar agregar la opcin --recheck al comando grub para forzar a GRUB a probar los dispositivos disponibles y reconstruir el mapa de dispositivos.

Listado 6. Instalacin de GRUB en un disco flexible


[root@pinguino ~]# grub-install /dev/fd0 /dev/fd0 does not have any corresponding BIOS drive.

Si usted comenz con un disco flexible vaco y ahora lo monta, descubrir que todava parece estar vaco. Esto se debe a que GRUB ingres un cargador personalizado de nivel 1 en el primer sector del disco. Esto no puede verse en el sistema de programas. Este cargador de etapa 1 cargar la etapa 2 y el archivo de configuracin desde su disco duro. Pruebe arrancar el disco y ver muy poca actividad de entrada y salida antes de que se despliegue el men. Al igual que con LILO, usted utiliza las flechas de posicin para seleccionar diferentes objetivos de arranque. Figura 4. El arranque utilizando GRUB

Una vez que ha verificado el disco flexible, usted est listo para instalar GRUB en el MBR de su disco rgido. Para el primer disco duro IDE, usted utilizara: grub-install /dev/sda

o grub-install '(hd0)' Para instalarlo en el registro de arranque de la particin para la particin 11, utilice: grub-install /dev/sda11 o grub-install '(hd0,10)' Recuerde que GRUB cuenta desde 0. Al igual que en LILO, usted puede agregar parmetros de arranque. De hecho, usted puede editar cualquiera de los comandos en la configuracin de GRUB o cargar otro archivo de configuracin al momento del arranque. Si usted us una clave, deber ingresar el comando p y luego ingresar la clave. Luego, seleccione un item e ingrese el comando e para editarlo. Selecciones la lnea que quiere editar e ingrese e nuevamente. Edite la lnea ingresando nuevo caracteres o borrando los caracteres actuales, y luego presione Enter para regresar al men. Ingrese el comando b para arrancar su sistema con los nuevos valores. La Figura 5 muestra la fase de edicin del comando de este proceso en la cual se agrega el parmetro 'single' a la declaracin del kernel para arrancar en modo de usuario nico. Figura 5. Arranque en modo de usuario nico con GRUB

Volver arriba Actualizaciones del sistema La mayora de las distribuciones proporcionan las herramientas para la actualizacin del sistema. Estas herramientas estn generalmente al tanto del cargador de arranque en uso y a menudo actualizan su archivo de configuracin de manera automtica. Si usted crea su propio kernel personalizado, o prefiere utilizar un archivo de configuracin con un nombre o ubicacin fuera de lo comn, entonces quiz necesite actualizar el archivo de configuracin usted mismo. Si usted utiliza LILO, debe ejecutar el comando lilo siempre que actualice su archivo de configuracin o haga cambios, como por ejemplo agregar un disco duro o borrar una particin. Si usted usa GRUB, puede editar el archivo /boot/grub/grub.conf para realizar los cambios, y el cargador GRUB de etapa 2 leer el archivo cuando usted rearranque. Usted normalmente no necesita reinstalar GRUB por haber agregado un nuevo kernel. Sin embargo, si mueve una particin, o agrega dispositivos, usted quiz necesite reinstalar GRUB. Recuerde que el cargador de la etapa 1 es muy pequeo, por lo cual simplemente posee una lista del bloque de direcciones para el cargador de la etapa 2. Mueva la particin y la direccin cambiar, de manera que la etapa 1 ya no puede localizar la etapa 2. Analizaremos algunas estrategias y los cargadores de etapa 1.5 de GRUB ms adelante. Si usted ejecuta ms de un sistema Linux en diferentes particiones, considere using a boot partition tal como se describe ms abajo. Volver arriba Recuperacin Veamos algunas de las cosas que pueden salir mal al momento de la configuracin del arranque minuciosamente preparado, particularmente cuando se instalan y arrancan mltiples sistemas operativos.Lo primero que hay que recordar es que se debe evitar caer en pnico. La recuperacin por lo general consta de pocos pasos. Las estrategias aqu presentadas deberan ayudarlo en todas las etapas de crisis. Cualquiera que tenga acceso fsico a una mquina tiene mucho poder. As mismo, cualquiera con acceso a la lnea de comando de GRUB tambin tiene acceso a los archivos de su sistema sin el beneficio de ningn derecho de propiedad o provisin de seguridad suministrado por el sistema que se est ejecutando. Tenga esto en mente al seleccionar un cargador de arranque. La eleccin entre LILO y GRUB es ms que nada un tema de eleccin personal. Elija el cargador que mejor se ajuste a sus necesidades y a su estilo de trabajo particulares.

Otra instalacin destruye su MBR A veces usted instala otro sistema operativo y sin querer sobrescribe en su MBR. Algunos sistemas, como DOS y Windows, siempre instalan su propio MBR. Por lo general es muy fcil solucionar esta situacin. Si usted tiene el hbito de crear un disco flexible cada vez que ejecuta o lilo reinstala GRUB, se encuentra fuera de peligro. Simplemente arranque su sistema Linux desde el disco flexible y ejecute nuevamente lilo o grub-install. Si usted no contara con un disco flexible de arranque, pero todava tiene casi toda las distribucin de Linux disponibles, usted puede por lo general arrancar el medio de instalacin de Linux en modo recuperacin. Al hacerlo, el sistema de archivos raz de su disco duro se montar en algn punto extrao de recuperacin, o no se montar en lo absoluto. Usted puede utilizar el comando chroot para lograr que este raro punto de montaje se convierta en su directorio raz (/). Luego ejecute lilo o grub-install para crear un nuevo disco flexible o para reinstalar el MBR. Yo prefiero crear un disco flexible y usarlo para arrancar, asegurndome de que todo est en orden antes de reescribir el MBR, pero usted puede ser ms valiente que yo. Arrancar un CD o un DVD en modo de rescate puede darle una variedad de opciones y hacer que sea ms sencillo pasar al modo usuario nico, en el cual usted tendr ms autoridad raz. Si usted trata de arrancar el sistema Ubuntu 9.10 que utilizamos en los ejemplos de LILO en modo de usuario nico ver un men como el que muestra la Figura 6. La opcin resaltada lleva a un shell raz con conexin de red.

Figura 6. Men de recuperacin de Ubuntu 9.10

Un men como este es una opcin comn en los medios de recate. En nuestro ejemplo de rescate no utilizamos un CD, pero arrancamos el sistema Ubuntu 9.19 en modo de usuario nico como se describe en la seccin sobre LILO que aparece ms arriba. Luego realizamos los pasos normales necesarios para crear un disco flexible de arranque para otro sistema, en este caso el sistema Fedora 8 on /dev/sda6. En caso de que usted arranque desde un CD de rescate o desde otro OS desde el mismo sistema, los pasos sern similares, aunque algunos, como el montaje de una imagen para rescatarla, pueden haber sido ya realizados por usted. Cuando usted eventualmente alcance un prompt raz, usted querr realizar algunos o todos los pasos mostrados en el Listado 7. En nuestro ejemplo, creamos un punto de montaje (/mnt/sysimage), mount /dev/sda6, montamos algunos sistemas de archivos especiales en el nuevo raz (que se va a crear), y luego cambiamos el usuario raz al sistema montado. Los comandos cat /etc/issue muestran el efecto del comando chroot, el cual convierte el directorio objetivo en la nueva raz del sistema de archivos, al menos hasta que salgamos del entorno de este directorio raz con Ctrl-d o con exit. El listado 7 muestra un ejemplo en el mismo entorno que utilizamos para nuestros ejemplos de configuracin anteriores. Piense en esto como una

ventana terminal donde usted se ha logueado como usuario raz. En otras palabras, tenga cuidado de lo que ingresa en su disco duro. Listado 7. Uso de un sistema de rescate y chroot
root@pinguino:~# mkdir /mnt/sysimage root@pinguino:~# mount /dev/sda6 /mnt/sysimage root@pinguino:~# cd /mnt/sysimage root@pinguino:~# mount -t proc none proc/ root@pinguino:~# mount -t sysfs none sys/ root@pinguino:~# mount -o bind /dev dev/ root@pinguino:~# cat /etc/issue Ubuntu 9.10 \n \l root@pinguino:~# chroot /mnt/sysimage root@pinguino:~# sh-3.00# chroot /mnt/sysimage [root@oinguine /]# cat /etc/issue Fedora release 8 (Werewolf) Kernel \r on an \m [root@oinguine /]# grub-install /dev/fd0 Installation finished. No error reported. This is the contents of the device map /boot/grub/device.map. Check if this is correct or not. If any of the lines is incorrect, fix it and re-run the script `grub-install'. (fd0) /dev/fd0 (hd0) /dev/sda [root@oinguine /]#

Cuando ya tenga su disco flexible de arranque, presione ctrl-d para salir del entorno chroot y luego reinicie el sistema. Recuerde desmontar su medio de instalacin. Si no tiene un CD o DVD de instalacin a mano, en Internet se encuentran disponibles varios CDs de recuperacin y CDs en vivo de LINUX as como tambin en algunos disquetes y dispositivos de memoria USB. Consulte Recursos por ms detalles. Si bien no se encuentra dentro del alcance de este tutorial, cabe destacar que es posible arrancar un sistema Windows 2000 o Windows XP con el arranque e instalar Lilo o GRUB en el registro de arranque de una particin. El programa de arranque ntldr tambin puede cargar en cadena otros sectores de arranque. Sin embargo, en este caso la configuracin puede resultar un poco compleja. Usted deber copiar el sector de arranque a una particin de Windows

(generalmente utilizando el comando dd ) y modificar el archivo oculto boot.ini para que esto funcione. Usted movi una particin Si movi una particin y olvid considerar la configuracin de arranque, se encuentra ante un problema temporal. Generalmente, LILO o GRUB no cargarn. LILO probablemente imprima una 'L' que indica que la etapa 1 se carg y luego se detuvo. GRUB mostrar un mensaje de error. Lo que ocurre en este caso es que el cargador de etapa 1 (que tena una lista de sectores a cargar para llegar al cargador de etapa 2) tal vez pueda cargar los sectores desde las direcciones que tiene, pero esos sectores ya no tienen la firma de la etapa 2. Si gener un disquete de arranque usando los mtodos antes descriptos, recuerde que lilo o grub-install cargan en el disquete un solo sector de arranque, por lo cual su disquete de arranque probablemente no sea de ayuda. Como en el ejemplo anterior, usted probablemente necesite cargar algn tipo de entorno de rescate y reconstruir su disquete de rescate con LILO o con GRUB. Luego recargar, verificar su sistema y reinstalar su cargador de arranque en el MBR. Usted puede notado que nuestros ejemplos de configuracin utilizaron algunas etiquetas y (Universally Unique IDs) UUIDs en las particiones. Por ejemplo: kernel /boot/vmlinuz-2.6.26.8-57.fc8 ro root=LABEL=FEDORA8 rhgb quiet or kernel /boot/upgrade/vmlinuz preupgrade repo=hd::/var/cache/yum/preupgrade stage2=\ hd:UUID=8b4c62e7-2022-4288-89955eda92cd149b:/boot/upgrade/install.img \ ks=hd:UUID=8b4c62e7-2022-4288-89955eda92cd149b:/boot/upgrade/ks.cfg Yo suelo utilizar etiquetas UUIDs como estas para evitar problemas al mover particiones. Usted an necesita actualizar el archivo de configuracin de GRUB o LILO y volver a ejecutar lilo, pero no es necesario que actualice /etc/fstab . Esto resulta particularmente prctico para crear la imagen de una particin en un sistema y restaurarla en una ubicacin diferente en otro sistema. Tambin es prctico si usted arranca desde un dispositivo, como un dispositivo USB, que no siempre se encuentra en la misma ubicacin. Uso de una particin de arranque Otro enfoque para realizar la recuperacin, o quiz para evitarla, consiste en utilizar una particin separada para el arranque. Esto resulta particularmente til si usted desea un sistema de verificacin con varias distribuciones que reconstruya con frecuencia. La particin de arranque no debe ser muy grande, quiz de 100MB aproximadamente. Coloque esta particin donde sea poco

probable que se mueva y donde probablemente el agregado o remocin de otra particin no modifique el nmero de su particin. En un entorno mixto de Windows y Linux, /dev/sda2 (o /dev/hda2 dependiendo de cmo estn etiquetados sus discos) por lo general es una buena eleccin para su particin de arranque. El Listado 8 muestra los items de una particin de arranque pequea (/dev/sda2) que actualmente ha sido cargada por el registro de arranque maestro en el sistema que hemos utilizado de ejemplo. Listado 8. Uso de una particin de arranque pequea con GRUB
# menu.lst - See: grub(8), info grub, update-grub(8) # grub-install(8), grub-floppy(8), # grub-md5-crypt, /usr/share/doc/grub # and /usr/share/doc/grub-doc/. ## default num # Set the default entry to the entry number NUM. Numbering starts from 0, and # the entry number 0 is the default if the command is not used. # # You can specify 'saved' instead of a number. In this case, the default entry # is the entry saved with the command 'savedefault'. default 0 ## timeout sec # Set a timeout, in SEC seconds, before automatically booting the default entry # (normally the first entry defined). timeout 10 ## password ['--md5'] passwd # If used in the first section of a menu file, disable all interactive editing # control (menu entry editor and command-line) and entries protected by the # command 'lock' # e.g. password topsecret # password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/ # password topsecret title root chainloader boot Fedora 8 (sda6) Grub menu (hd0,5) +1

# Ubuntu 9.10 uses GRUB 2, so use kernel to drive GRUB 2 menu. title Ubuntu 9.10 (sda7) root (hd0,6) kernel /boot/grub/core.img # This is a divider, added to separate the menu items below from the Debian # ones.

title root # Windows XP title root savedefault chainloader

Other operating systems:

Windows NT/XP (hd0,0) +1

Otra razn por la cual es importante tener un particin /boot surge cuando su particin raz usa un sistema de archivos no soportado por su cargador de arranque. Por ejemplo, es muy comn tener una particin /boot con formato ext2 o ext3 cuando la particin root (/) usa la LVM, la cual no es soportada por GRUB Legacy. Si su sistema tiene distribuciones mltiples, no comparta la particin /boot entre ellas. Recuerde configurar LILO o GRUB para que arranque desde la particin que luego se montar como /boot. Recuerde tambin que los programas de actualizacin de una distribucin generalmente actualizarn la configuracin GRUB o LILO para su correspondiente sistema. En un entorno con sistemas mltiples, es recomendable mantener un sistema principal con su propia particin /boot y actualizar manualmente el archivo de configuracin cuando la actualizacin de alguno de los sistemas as lo requiera. Otro enfoque consiste en que cada sistema instale un cargador de arranque en su propio registro de arranque de particin y que el sistema principal simplemente cargue en cadena los registros de arranque de particin de cada sistema particular, lo cual resultar en un proceso de men de dos etapas Construccin de un disquete flexible de arranque o CD-ROM de instalacin automtica Por ltimo, profundicemos un poco ms en la configuracin GRUB y en cmo generar un disquete de arranque autnomo que lo llevar a una solicitud GRUB sin importar qu le haya ocurrido a su disco duro. Si usted tiene experiencia en el montaje de discos duros como se analiza en el artculo "Learn Linux 101: Hard disk layout," usted recordar todo lo que que necesita saber sobre cilindros en los discos duros. Aunque usted crea que un cilindro es algo imposible de encontrar en los dispositivos modernos, muchos aspectos de su sistema de archivos siguen tenindolos. En particular, usted encontrar particiones que utilizan una gran cantidad de cilindros alineados en bordes de cilindros. En una particin, muchos sistemas de archivos tambin administran el espacio en unidades de cilindros. En muchos sistemas UNIX y Linux, el montaje de los sistemas de los archivos se guarda en un super block, que es la primera unidad de asignacin en el sistema de archivos. Para los

sistemas de archivos ext2 o ext3 y para los discos duros de tamao considerable, por ejemplo, el espacio se rompe en varias secciones con una copia del superblock al comienzo de cada seccin. Esto ayudar a la recuperacin si usted accidentalmente arruina los bordes de las particiones con un programa como fdisk. Otro beneficio de la inteligencia de los cilindros es que hay espacio al comienzo de un disco justo despes del MBR. GRUB toma ventaja de esto mediante la inclusin de un cargador de arranque 1.5 en este espacio o en el espacio no utilizado en una particin siempre que sea posible. El cargador de la etapa 1.5 comprende el sistema de archivos de la particin que contienen la etapa 2, de modo que se encuentra protegido de alguna manera contra los inconvenientes relacionados con el movimiento de archivos. Todo esto est muy bien, pero cmo se relaciona con el disco flexible de arranque? Bueno, el disco flexible no tiene mucho espacio ni mucha nocin de lo que son los cilindros, por consiguiente, si desea arrancar la etapa 1 y la etapa 2 de GRUB desde un disco flexible, deber instalar la etapa 1 y luego copiar la etapa 2 a los sectores subsiguientes al sector de arranque. El Listado 9 muestra un ejemplo de como hacer esto. Use un disquete vaco, ya que este proceso destruir los datos que pudiera contener el disquete. Deber copiar los archivos que vinieron con su distribucin grub en lugar de los de su directorio /boot/grub, ya que /boot/grub/stage2 ha sido modificado para trabajar con sus particiones de disco duro. Encontrar los archivos originales de etapa 1 y etapa 2 en un subdirectorio de /usr/share/grub. En nuestro ejemplo estos se encuentran en /usr/share/grub/i386-redhat. Listado 9. Creacin de un disquete de arranque GRUB
[root@pinguino ~]# ls /usr/share/grub/ i386-redhat [root@pinguino ~]# cd /usr/share/grub/i386-redhat/ [root@pinguino i386-redhat]# ls -l st* -rw-r--r-- 1 root root 512 2008-05-28 12:05 stage1 -rw-r--r-- 1 root root 109212 2008-05-28 12:05 stage2 -rw-r--r-- 1 root root 109212 2008-05-28 12:05 stage2_eltorito [root@pinguino i386-redhat]# dd if=stage1 of=/dev/fd0 bs=512 count=1 1+0 records in 1+0 records out 512 bytes (512 B) copied, 0.29007 s, 1.8 kB/s [root@pinguino i386-redhat]# dd if=stage2 of=/dev/fd0 bs=512 seek=1 213+1 records in 213+1 records out 109212 bytes (109 kB) copied, 7.4094 s, 14.7 kB/s

[root@lyrebird root]# ls /usr/share/grub

i386-redhat [root@lyrebird root]# cd /usr/share/grub/i386-redhat [root@lyrebird i386-redhat]# ls -l st* -rw-r--r-1 root root 512 Aug 3 2004 stage1 -rw-r--r-1 root root 104092 Aug 3 2004 stage2 [root@lyrebird i386-redhat]# dd if=stage1 of=/dev/fd0 bs=512 count=1 1+0 records in 1+0 records out [root@lyrebird i386-redhat]# dd if=stage2 of=/dev/fd0 bs=512 seek=1 203+1 records in 203+1 records out

Si usted comenz con un disco flexible MS-DOS formateado antes de hacer esto, y ahora intenta montar el disco, el comando de montaje le dar error. El haber copiado la etapa 2 inmediatamente despus del sector de arranque de su disquete (seek=1) destruy el sistema de archivos del disquete. El proceso para la creacin de un CD de arranque de GRUB es similar, aunque usted prepare la imagen del CD en su disco duro. Usted necesitar un directorio temporal, digamos grubcd, con los subdirectorios boot y boot/grub. Usted necesita entonces copiar el archivo stage2_eltorito desde sus archivos de distribucin GRUB a los subdirectorios grub que ha creado recientemente. Luego utilice genisoimage para crear un archivo imagen de arranque .iso que usted pueda copiar al CD con su herramienta de copiado preferida. El Listado 10 muestra el modo de crear una imagen de CD como grubcd.iso. Listado 10. Creacin de una imagen de CD de arranque de GRUB
[ian@pinguino ~]$ mkdir -p grubcd/boot/grub [ian@pinguino ~]$ cp /usr/share/grub/i386-redhat/stage2_eltorito grubcd/boot/grub [ian@pinguino ~]$ genisoimage -R -b boot/grub/stage2_eltorito -no-emul-boot \ > -boot-load-size 4 -boot-info-table -o grubcd.iso grubcd I: -input-charset not specified, using utf-8 (detected in locale settings) Size of boot image is 4 sectors -> No emulation Total translation table size: 2048 Total rockridge attributes bytes: 760 Total directory bytes: 4576 Path table size(bytes): 34 Max brk space used 0 233 extents written (0 MB)

Usted podra arrancar el CD o disquete en una PC arbitraria; no hace falta que tenga un sistema Linux. Si ahora arranca el disquete, notar una demora en la

carga de la etapa 2 desde disquete. De manera similar, cuando arranque el CD, ste cargar el shell GRUB desde el CD. Cuando usted cargue cualquiera de los dos, obtendr un aviso de arranque de GRUB. Presione la tecla tab para ver una lista de comandos disponibles para usted. Pruebe help commandname para obtener ayuda en el comando commandname. El Listado 11 muestra la lnea de comando de GRUB. Listado 11. La lnea de comando de GRUB
GNU GRUB version 0.97 (640K lower / 3072K upper memory)

[ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> Possible commands are: blocklist boot cat chainloader clear cmp color configfile debug device displayapm displaymem dump embed find fstest geometry halt help hide impsprobe initrd install ioprobe kernel lock makeactive map md5crypt module modulenounzip pager partnew parttype password pause quit read reboot root rootnoverify savedefault serial setkey setup terminal terminfo testload testvbe unhide uppermem vbeprobe grub> help rootnoverify rootnoverify: rootnoverify [DEVICE [HDBIAS]] Similar to `root', but don't attempt to mount the partition. This is useful for when an OS is outside of the area of the disk that GRUB can read, but setting the correct root device is still desired. Note that the items mentioned in `root' which derived from attempting the mount will NOT work correctly. grub> find /boot/grub/grub.conf (hd0,1) (hd0,5) grub>

En este ejemplo, hemos encontrado que hay archivos de configuracin GRUB en dos diferentes particiones de nuestro disco duro principal. Cargaramos el men de GRUB desde uno de ellos usando el comando configfile. Por ejemplo: configfile (hd0,1)/boot/grub/grub.conf

Esto cargara el men para ese archivo de configuracin y podramos arrancar el sistema desde este punto. Usted puede explorar estos comandos de grub en el manual de GRUB. Pruebe ingresando info grub en una ventana terminal de Linux para abrir el manual. Un ltimo punto a tratar sobre GRUB antes de pasar a otro tema. Mencionamos que el archivo de la etapa 2 de GRUB destruy el sistema de archivos del disquete. Si usted quiere obtener un disquete de recuperacin GRUB de arranque que cargue los archivos GRUB, incluyendo un archivo de configuracin desde el disquete puede lograrlo realizando los siguientes pasos: 1. Use el comando mkdosfs para crear un sistema de archivos DOS FAT en el disquete y utilice la opcin -R para reservar sectores suficientes para el archivo de la etapa 2. 2. Monte el disquete 3. Cree un directorio /boot/grub en el disquete 4. Copie los archivos GRUB stage1, stage2, y grub.conf al directorio boot/grub del disquete. Copie tambin el archivo de imagen splash si lo desea. 5. Edite su archivo grub.conf en el disquete de manera que se refiera al archivo splash en el disquete. 6. Desmonte el disquete 7. Use el comando shell grub para configurar GRUB en el disquete utilizando los comandos raz y los comandos de configuracin de GRUB. Hemos ilustrado esto en el Listado 12. Listado 12. Instalacin de GRUB en un disquete con un sistema de archivos
[root@pinguino ~]# mkdosfs -R 220 /dev/fd0 mkdosfs 2.11 (12 Mar 2005) [root@pinguino ~]# mkdir /mnt/floppy [root@pinguino ~]# mount /dev/fd0 /mnt/floppy [root@pinguino ~]# mkdir -p /mnt/floppy/boot/grub [root@pinguino ~]# cp /boot/grub/stage1 /mnt/floppy/boot/grub [root@pinguino ~]# cp /boot/grub/stage2 /mnt/floppy/boot/grub [root@pinguino ~]# cp /boot/grub/splash* /mnt/floppy/boot/grub [root@pinguino ~]# cp /boot/grub/grub.conf /mnt/floppy/boot/grub [root@pinguino ~]# umount /dev/fd0 [root@pinguino ~]# grub Probing devices to guess BIOS drives. This may take a long time. GNU GRUB version 0.97 (640K lower / 3072K upper memory)

[ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible

completions of a device/filename.] grub> root (fd0) Filesystem type is fat, using whole disk grub> setup (fd0) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/fat_stage1_5" exists... no Running "install /boot/grub/stage1 (fd0) /boot/grub/stage2 p /boot/grub/grub.c onf "... succeeded Done.

Este ltimo ejemplo muestra tambin el hecho de que usted puede ejecutar el comando grub en un shell de Linux. Esta es una buena forma de aprender sobre GRUB sin tener que volver a arrancar la mquina una y otra vez. Usted necesita autoridad de usuario raz para ejecutar grub y as poder hacer la mayora de las cosas que puede hacer GRUB, excepto rearrancar el sistema. Volver arriba GRUB 2 GRUB 2 se volvi a escribir desde scratch para hacerlo mucho ms porttil y con ms mdulos. ste apunta a arquitecturas y mtodos de arranque diferentes y posee muchas caractersticas nuevas. Consulte Resources para obtener ms informacin. Si usted est acostumbrado a GRUB y comienza a utilizar GRUB 2, encontrar que es completamente diferente y probablemente tendr muchas sorpresas. Lo primero que le podra llamar la atencin es que GRUB 2 no se instala como un cargador de arranque de particin. Aunque antes dije que el instalador de Ubuntu instala GRUB en la particin donde instal Ubuntu 9.10 en (/dev/sda7), esa particin no arranca mediante un cargador de cadena. El resto de esta seccin le dar una breve introduccin a GRUB 2 y encontrar informacin suficiente para comenzar a utilizarlo solo o junto con GRUB Legacy. La versin de GRUB 2 para PCs se distribuye con el paquete grub-pc. Usted encontrar varios programas, normalmente en .usr/bin or /usr/sbin, que forman parte del paquete grub-pc como se observa en el Listado 13. El tiempo de carga las pginas de los manuales para estos programas es mnimo. Pruebe ejecutar los programas con la opcin --help para obtener ms informacin, o buscar ayuda adicional en Internet. Listado 13. Los ejecutables de GRUB 2 en /usr/bin and /usr/sbin

ian@pinguino:~$ dpkg -L grub-pc|grep "bin/" /usr/bin/grub-mkimage /usr/bin/grub-mkrescue /usr/sbin/grub-setup /usr/sbin/update-grub2 /usr/sbin/update-grub /usr/sbin/grub-install /usr/sbin/upgrade-from-grub-legacy /usr/sbin/grub-set-default /usr/sbin/grub-reboot

Lo ms importante de GRUB 2 es un kernel multiarranque (/boot/grub/core.img) junto con un archivo de configuracin (/boot/grub/grub.cfg). Estos se generarn si usted ejecuta grub-install y establece como objetivo su MBR (por ejemplo: grub-install /dev/sda). Ejecute grub-install --help como se observa en el Listado 14 para obtener una idea de los programas que son llamados a hacer todo el trabajo. Algunos items son similares a Grub Legacy, pero hay un nmero de items nuevos, como --modules, --grub-setup, --grub-mkimage, etc. Listado 14. GRUB 2 colabora con grub-install
ian@pinguino:~$ grub-install --help Usage: grub-install [OPTION] install_device Install GRUB on your drive. -h, --help -v, --version --modules=MODULES --root-directory=DIR print this message and exit print the version information and exit pre-load specified modules MODULES install GRUB images under the directory DIR instead of the root directory --grub-setup=FILE use FILE as grub-setup --grub-mkimage=FILE use FILE as grub-mkimage --grub-mkdevicemap=FILE use FILE as grub-mkdevicemap --grub-probe=FILE use FILE as grub-probe --no-floppy do not probe any floppy drive --recheck probe a device map even if it already exists --force install even if problems are detected --disk-module=MODULE disk module to use INSTALL_DEVICE can be a GRUB device name or a system device filename. grub-install copies GRUB images into the DIR/boot directory specified by --root-directory, and uses grub-setup to install grub into the boot sector.

Report bugs to <bug-grub@gnu.org>.

Por lo tanto si usted ejecuta grub-install /dev/sda, el proceso crear una archivo de imagen para usted, crear un archivo de configuracin, e instalar GRUB 2 en su MBR. Si usted no est preparado para asignarle a GRUB2 toda la configuracin, puede crear estas partes por si mismo y luego arrancar la imagen principal de GRUB 2 desde GRUB Legacy o LILO. Creacin de la imagen principal de GRUB 2 La manera ms fcil de crear un nuevo archivo de imagen es ejecutar grubinstall con la opcin --grub-setup=/bin/true, lo que provoca que /bin/true sea ejecutado en lugar del verdadero programa de configuracin GRUB 2, como se observa en el Listado 15. Primero borramos core.img para mostrar que el archivo realmente se ha generado. Listado 15. Ayuda de GRUB 2 para grub-install
ian@pinguino:~$ sudo rm /boot/grub/core.img ian@pinguino:~$ sudo grub-install --grub-setup=/bin/true /dev/sda Installation finished. No error reported. This is the contents of the device map /boot/grub/device.map. Check if this is correct or not. If any of the lines is incorrect, fix it and re-run the script `grub-install'. (hd0) /dev/sda ian@pinguino:~$ ls -l /boot/grub/core.img -rw-r--r-- 1 root root 25105 2010-04-08 12:10 /boot/grub/core.img

Creacin del archivo de configuracin de GRUB 2 El archivo de configuracin de GRUB 2 es por lo general /boot/grub/grub.cfg. A diferencia de lo que sucede con GRUB Legacy, usted no debera por lo general editar este archivo por si mismo. Usted debera crearlo utilizando el comando grub-mkconfig o el comando update-grub , que es un punto de partida para grub-mkconfig. Estos comandos generalmente buscan configuraciones, como los fondos, los tiempos de espera, etc. en /etc/default/grub, y luego ejecutan los ejecutables desde /etc/grub.d/ para crear varias partes del archivo de configuracin, como el encabezado, una seccin para la distribucin actual de Linux, las secciones para otros sistemas operativos, y sus propias adiciones personalizadas. Si necesita personalizar el men de GRUB 2, usted debera agregar sus modificaciones a un archivo en /etc/grub.d/ such as 40_custom, o

agregar su propio archivo. Recuerde que ste debe ser ejecutable. Usted ejecutar entonces update-grub para generar un nuevo archivo /boot/grub/grub.cfg tal como se observa en el Listado 16. Listado 16. Creacin de un archivo de configuracin de GRUB 2 con update-grub
ian@pinguino:~$ sudo update-grub Generating grub.cfg ... Found linux image: /boot/vmlinuz-2.6.31-20-generic Found initrd image: /boot/initrd.img-2.6.31-20-generic Found linux image: /boot/vmlinuz-2.6.31-14-generic Found initrd image: /boot/initrd.img-2.6.31-14-generic Found memtest86+ image: /boot/memtest86+.bin Found GRUB boot loader on /dev/sda1 Found Fedora release 8 (Werewolf) on /dev/sda6 done

El Listado 17 muestra pocos items del archivo de configuracin resultante. Hemos indicado largas lneas que rompemos para la publicacin utilizando una barra invertida al final (\). Tenga en cuenta que los prrafos de entradas de men se ven un poco ms como scripts del shell que como los comandos simples sin lgica de GRUB Legacy. Otro cambio importante de GRUB Legacy es que la numeracin de particiones ahora comienza en 1, aunque la numeracin de disco comience todava en 0. Por lo tanto /dev/sda7 es igual a (hd0,7) en GRUB 2 y sera (hd0,6) en GRUB Legacy. Listado 17. Archivo de configuracin parcial de GRUB 2
### set set ### BEGIN /etc/grub.d/05_debian_theme ### menu_color_normal=white/black menu_color_highlight=black/white END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ### menuentry "Ubuntu, Linux 2.6.31-20-generic" { recordfail=1 if [ -n ${have_grubenv} ]; then save_env recordfail; fi set quiet=1 insmod ext2 set root=(hd0,7) search --no-floppy --fs-uuid --set 8954fa66-e11f-42dc-91f0-b4aa480fa103 linux /boot/vmlinuz-2.6.31-20-generic \ root=UUID=8954fa66-e11f-42dc-91f0-b4aa480fa103 ro quiet splash initrd /boot/initrd.img-2.6.31-20-generic

} menuentry "Ubuntu, Linux 2.6.31-20-generic (recovery mode)" { recordfail=1 if [ -n ${have_grubenv} ]; then save_env recordfail; fi insmod ext2 set root=(hd0,7) search --no-floppy --fs-uuid --set 8954fa66-e11f-42dc-91f0-b4aa480fa103 linux /boot/vmlinuz-2.6.31-20-generic root=UUID=8954fa66-e11f-42dc-91f0-b4aa480fa103 ro single initrd /boot/initrd.img-2.6.31-20-generic }

Arranque de GRUB 2 desde Grub Legacy Hemos mencionado que no es posible cargar GRUB 2 en cadena desde el registro de arranque de una particin. Sin embargo, una vez que su imagen principal y su archivo de configuracin han sido creados, usted puede agregar una entrada a su archivo GRUB Legacy grub.conf or menu.lst para arrancar la imagen principal de GRUB 2, la cual luego desplegar el men de GRUB 2 que usted ha creado. El Listado 18 muestra la entrada que hemos utilizado en el Listado 8. Desde que este archivo de configuracin existe para GRUB Legacy, la entrada raz especifica (hd0,6) para /dev/sda7. Listado 18. La entrada de configuracin de Grub Legacy para arrancar la imagen principal de GRUB 2
# Ubuntu 9.10 uses GRUB 2, so use kernel to drive GRUB 2 menu. title Ubuntu 9.10 (sda7) root (hd0,6) kernel /boot/grub/core.img

Cuando usted selecciona esta entrada desde el men de GRUB Legacy, ver un men similar al que se observa en la Figura 7, en la cual la primera entrada est resaltada. sta entrada y la entrada siguiente han sido ilustradas en el Listado 17.

Figura 7. Ejemplo de men de GRUB 2

Usted podra tentarse a tratar de instalar GRUB 2 en el registro de arranque de una particin. Si usted trata de hacerlo, probablemente ver datos de salida similares a los que se observan en el Listado 19. Listado 19. Intento de instalar GRUB 2 en el registro de arranque de una particin
ian@pinguino:~$ sudo grub-install /dev/sda7 grub-setup: warn: Attempting to install GRUB to a partition instead of the MBR. This is a BAD idea. grub-setup: warn: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and its use is discouraged. Installation finished. No error reported. This is the contents of the device map /boot/grub/device.map. Check if this is correct or not. If any of the lines is incorrect, fix it and re-run the script `grub-install'. (hd0) /dev/sda

Esto explica porqu mi intento de instalar GRUB 2 en la particin de /dev/sda7 mientras estaba instalando Ubuntu 9.10 fracas. Vale la pena resaltar que esta versin de Ubuntu instalar GRUB 2 en una nueva instalacin, pero mantendr

el administrador de arranque actual si usted est actualizando una instalacin Ubuntu existente. Medios de rescate para GRUB 2 GRUB 2 incluye un comando grub-mkrescue para ayudarlo a crear un disquete o una imagen de CD de rescate. Consulte la ayuda o las pginas de los manuales para obtener ms detalles Volver arriba Resumen Ahora conoce los dos cargadores principales de los sistemas tradicionales Linux, incluso el modo de solucionar errores y problemas de arranque. Tambin ha recibido una introduccin a GRUB 2, el cual no se encuentra en los objetivos LPI pero est comenzando a aparecer en las principales distribuciones de Linux.

Volver arriba Descargar Descripcin Configuration files used in this article Nombre tamao Metodo de descarga HTTP

l-lpic1-v3-102-2-samples.zip 8KB

Informacin sobre mtodos de descarga

Recursos Aprender Utilice developerWorks roadmap for LPIC-1 para encontrar los artculos de developerWorks que lo ayuden a estudiar para la certificacin para LPIC-1 basada en los objetivos de abril de 2009. En el sitio LPIC Program, encuentre los objetivos detallados, las listas de tareas, y ejemplos de las preguntas para los tres niveles de la certificacin en administracin del sistema Linux del Linux Professional Institute. En particular, vea los objetivos de abril de 2009 para LPI exam 101 y LPI exam 102. Siempre consulte el sitio del Programa LPIC para ver los ltimos objetivos. Consulte toda la LPI exam prep series en developerWorks para aprender lo ms importante de Linux y prepararse para la certificacin en

administracin del sistema Linux conforme a los objetivos para el examen LPI anteriores a abril de 2009. Aprenda sobre GRUB legacy y GRUB 2 en la GNU GRUB home page. GNU GRUB es un cargador de arranque multiarranque derivado de GRUB, GRand Unified Bootloader. La Multiboot Specification para una interfaz permite cualquier cargador de arranque que cumpla con los requisitos para cargar el sistema operativo que se desee. En "Basic tasks for new Linux developers" (developerWorks, marzo de 2005), aprenda a abrir una ventana terminal o un prompt del shell y mucho ms. El Linux Documentation Project tiene varios documentos tiles, especialmente los HOWTOs. En la developerWorks Linux zone , encuentre cientos de how-to articles and tutorials , as como descargas, foros de discusin, y una gran cantidad de recursos para desarrolladores y administradores de Linux. Permanezca al da con developerWorks technical events and webcasts especializadas en varios productos IBM y en la industria IT topics. Asista a free developerWorks Live! briefing para actualizarse de manera sencilla sobre los productos y las herramientas de IBM y sobre las tendencias de la industria IT. Mire developerWorks on-demand demos, las cuales contienen explicaciones sobre la instalacin de los productos y las presentaciones de configuracin para los principiantes, hasta las funcionalidades avanzadas para los desarrolladores experimentados. Mantngase actualizado con developerWorks on Twitter, o suscrbase a un canal de Linux tweets on developerWorks. Obtener los productos y tecnologas Descargue el System rescue CD-Rom, una de muchas herramientas disponibles en lnea para ayudarlo a recuperar el sistema tras una cada del mismo. Evaluate IBM products de la manera que mejor le convenga: descargue un producto de prueba, pruebe un producto en lnea, use un producto en un entorno nube, o pase algunas horas en el SOA Sandbox aprendiendo como implementar de manera eficiente la arquitectura orientada al servicio.