Jul 10

Introducción.

Después de instalar Windows sucedió lo que se esperaba, el MBR del disco duro fue sobreescrito por el instalador y el GRUB fue removido.  Como consecuencia de esto ya no es posible acceder a Linux, únicamente a Windows.

Este es el procedimiento necesario para recuperar el GRUB de un GNU/Linux Ubuntu 10.04 instalado previamente a la instalación de Windows 7.

Recuperar el GRUB.

Para hacer esto es necesario iniciar el equipo con una versión en vivo de GNU/Linux Ubuntu 10.04, esto se logra con el CD de instalación o con su respectiva LiveUSB.  Se debe especificar durante su inicio que la intención es la de probar el sistema operativo mas no de instalarlo nuevamente.

A continuación es necsario identificar cual es el disco y la partición raíz (donde se encuentre /boot) de GNU/Linux. La forma mas simple de hacer esto es utilizando el administrador de unidades y medios (Disk Utility) ejecutando el siguiente comando o seleccionando el menú System > Administration > Disk Utility.

$ /usr/bin/palimpsest

Particiones del disco duro

Particiones del disco duro

En este caso, el directorio raíz se encuentra en la partición 5 del primer disco duro, es decir, su dispositivo es /dev/sda5.

Desde una terminal se procede a montar la partición mencionada anteriormente con mediante als siguientes instrucciones.

$ mkdir /tmp/raiz

$ sudo mount /dev/sda5 /tmp/raiz

Finalmente se solicita que se recree el GRUB en el MBR basado en la información encontrada.

$ sudo grub-install --root-directory=/tmp/raiz /dev/sda

Importante: es necesario tener en cuenta que el GRUB se crea sobre el disco duro elegido (sda), no sobre una partición específica (sda5).

Al reiniciar el sistema operativo ya deberá aparecer el GRUB permitiéndole elegir cual de los sitemas operativos registrados iniciar.

Agregar Windows a la lista de selección.

En este caso primero instalé Ubuntu y después instalé Windows lo que motivó en primera instancia que se perdiera el MBR.  Esto trae consigo un problema secundario: al recuperar el GRUB este no contiene una referencia a Windows ya que cuando fue creado aún no se había instalado el segundo sistema operativo.

Para solucionar este problema se deben instalar las herramientas del GRUB de la siguiente manera.

$ sudo aptitude install grub-pc

Con ellas, cada vez que se actualice su información se revisarán las particiones existentes en búsqueda de nuevos sistemas operativos que se configurarán automáticamente para aparecer en el GRUB la próxima vez que se reinicie el sistema.

$ sudo update-grub2

Para este caso específico, la partición de Windows 7 (NTFS) corresponde con el dispositivo /dev/sda2 motivo por el cual se agrega automáticamente la siguiente opción en el archivo /boot/grub/grub.cfg.

menuentry “Windows 7 (loader) (on /dev/sda2)” {
insmod ntfs
set root=’(hd0,2)’
search --no-floppy --fs-uuid --set 4a3c22f43c22db29
chainloader +1
}

Tagged with:



En July 10 de 2010, Jorge Iván Meza Martínez escribió acerca de Recuperar el GRUB de GNU/Linux Ubuntu 10.04 después de instalar Windows.
Apr 03

Hace ya largo tiempo no le cacharriaba a esto del Ubuntu y demas cositas, continuo ocupado con la maestria y con los nuevos proyectos lo cual me esta consumiendo en un 200% :( pero bueno todo marcha muy bien.

Hace poco instale la version Beta del Ubuntu 9.10 del cual estare publicando algunas cositas en proximas entradas y resulta que me encontre de nuevo con el problema de configurar el Grub 2 para que ejecutara por defecto Windows 7 al momento de arrancar, me acuerdo que lo habia hecho antes en Ubuntu 9.10 pero la verdad no me acordaba donde estaban los archivos y termine editando los del directorio /boot los cuales no se deben cambiar debido a que con el cambio a la version dos de Grub estos el archivo de configuracion quedo en /etc/default/grub y es este el que se debe cambiar antes de actualizar por comando el Grub, asi que aqui estan los pasos para editar la configuracion del Grub 2 en Ubuntu 9.10 y posiblemente en el 10.04

  1. Abrir una consola
  2. Editar el archivo de configuracion del Grub
    sudo vi /etc/default/grub
  3. Al momento de editarlo tendremos algo asi :

    # If you change this file, run 'update-grub' afterwards to update
    # /boot/grub/grub.cfg.

    GRUB_DEFAULT=0
    #GRUB_HIDDEN_TIMEOUT=0
    GRUB_HIDDEN_TIMEOUT_QUIET=true
    GRUB_TIMEOUT="10"
    GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
    GRUB_CMDLINE_LINUX=""

    # Uncomment to disable graphical terminal (grub-pc only)
    #GRUB_TERMINAL=console

    # The resolution used on graphical terminal
    # note that you can use only modes which your graphic card supports via VBE
    # you can see them in real GRUB with the command `vbeinfo'
    #GRUB_GFXMODE=640x480

    # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
    #GRUB_DISABLE_LINUX_UUID=true

    # Uncomment to disable generation of recovery mode menu entrys
    #GRUB_DISABLE_LINUX_RECOVERY="true"

  4. La opcion que seguramente estaremos buscando es :
    GRUB_DEFAULT=0
    La cual permite configurar que elemento del menu de sistemas operativos deseamos ejecutar por defecto al iniciar la maquina, cuente las opciones del menu comenzando desde cero y cambie el numero en el archivo
  5. Actualice la configuracion de boot ejecutando el comando :
    sudo update-grub2

Recuerde que el archivo de configuracion a cambiar es /etc/default/grub y que no se me olvide la proxima vez, aunque siempre se puede editar la configuracion del boot, siempre y cuando no se vuelva a actualizar el grub :p

Tagged with:



En April 3 de 2010, Marlon J. Manrique escribió acerca de Editar Configuracion Grub 2 en Ubuntu 9.10.
Jan 05

Introducción.

Después de instalar los paquetes del escritorio, el Ubuntu Server 9.10 quedó iniciando el login gráfico (gdm) automáticamente.  Se me ocurrió que sería interesante probar cuanto se demoraba en iniciar el sistema operativo hasta la consola sólo texto (nivel de ejecución 3 en la mayoría de Linux).  Para hacer esto sólo era necesario editar el archivo /etc/inittab y modificar la siguiente línea, pasando el nivel predeterminado de ejecución, del 5 al 3.

id:3:initdefault:

Pues bien, parece que muchas cosas han cambiado desde esto, Ubuntu 9.10 ya no tiene /etc/inittab.  Desde la versión 6.10 se está migrando paulatinamente a un nuevo esquema llamado Upstart donde los scripts de ejecución ya no vivirán en /etc/init.d como estabamos acostumbrados sino que ahora son archivos de configuración que se almacenan en /etc/init y que son interpretados con el comando service o initctl.

El nivel de ejecución predeterminado de Ubuntu se encuentra ahora definido por la variable DEFAULT_RUNLEVEL en /etc/init/rc-sysinit.conf y que tiene el valor por defecto de 2.

Otra cosa interesante que noté fue que Ubuntu 9.10 tampoco incluye un GRUB como el que conocía hasta ahora (versión 1) sino que trae una nueva versión (2, bueno 1.97~beta4 en realidad) y por ende presenta una distribución y ubicación de archivos diferente.

Basado en esta información y en las pruebas que realicé encontré dos soluciones para esta actividad, una basada en modificar el GRUB (mi preferida) y otra en modificar el nivel de ejecución en el que se activa el GDM.  Ambas aproximaciones parecen funcionar adecuadamente.

Solución #1: Modificación del GRUB.

Básicamente lo necesario es indicarle a Linux que se desea un inicio en modo texto y esto se hace especificando el parámetro text en la lista de parámetros por defecto del GRUB.

$ sudo vi /etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash text

Se actualiza la configuración del GRUB para generar un nuevo /boot/grub/grub.cfg.

$ sudo update-grub

Solución #2: Modificar el nivel de ejecución del GDM.

El nivel de ejecución por defecto de Ubuntu es el 2 así que el procedimiento se basa en indicarle al Upstart que ejecute al GDM en un nivel diferente a este: 3.

$ sudo vi /etc/init/gdm.conf

Reemplace la línea de la sección start on mostradas a continuación.

start on (filesystem

Por las siguientes.

start on (runlevel [3]
and filesystem

En ambos casos, reinicie el sistema operativo para verificar que los cambios surtan el efecto deseado.

Iniciar el manejador de ventanas.

Si tuvo éxito llevando a cabo la solución elegida, cuando inicie el sistema operativo lo dejará siempre en la consola basada en texto.  Si en algún momento desea iniciar el ambiente gráfico, puede hacerlo de las siguientes formas.

Para el usuario actual.

$ startx

Iniciar el GDM (temporalmente).

$ sudo service gdm start

Enlaces.

Tagged with:



En January 5 de 2010, Jorge Iván Meza Martínez escribió acerca de Iniciar Linux Ubuntu 9.10 en modo sólo texto.