Mostrando entradas con la etiqueta Grub y Grub2. Mostrar todas las entradas
Mostrando entradas con la etiqueta Grub y Grub2. Mostrar todas las entradas

jueves, 16 de abril de 2015

Recuperar el Grub-2 en modo gráfico, sin ejecutar ningún comando en la terminal

Si has perdido el gestor de arranque múltiple (Grub-2), este tema trata de su recuperación, sin tener que saberse de memoria o buscar las líneas de comandos que normalmente se indican para recuperarlo (Recuperar el Grub2) , sino a través de programas con interfaz gráfica y unos pocos cliks.
Solo se necesita tener un livecd o pendrive iniciable con SuperGrub2Disk, y tener instalado el programa Grub Customizer ( si no se tiene cuando se ha perdido el Grub2, lo podremos instalar cuando con SGD volvamos a la sesión gráfica del sistema )
 
Pasos Previos a ejecutar en el sistema antes de que se te pierda el Grub-2: 

1) Tener previamente instalado en el sistema el programa Grub-Customizer : se puede instalar mediante la herramienta Y-ppa-manager, o ejecutando unas lineas en la terminal:
sudo add-apt-repository ppa:danielrichter2007/grub-customizer 
sudo apt-get update 
sudo apt-get install grub-customizer

Es conveniente tener instalado este programa en el sistema para estar preparado por si se pierde el grub-2, pero si cuando se ha perdido no lo tenias instalado, no te preocupes, lo puedes instalar cuando vuelvas, gracias al SuperGrub-Disk, a la interfaz gráfica del sistema como se indica mas abajo

2) Tener un live-cd ( o pendrive iniciable ) con SuperGrub2-Disk: descargándolo por ejemplo desde:
http://super-grub2-disk.softonic.com/linux o
http://forja.cenatic.es/frs/download.php/file/1757/super_grub2_disk_hybrid_2.00s2.iso 
o https://forja.cenatic.es/frs/?group_id=204
o en la página ( al final de ella )  http://barrapunto.com/articles/14/05/28/0913205.shtml hay varios enlaces a distintas versiones de supergrub2disk.
Si estos enlaces no funcionan correctamente, buscando en Google hay varios enlaces mas que nos permiten descargar la .iso del live-cd , y o bien grabarlo como live-cd, o  creando un pendrive iniciable como se indica en Crear un pendrive iniciable

---------------------------------------------------------------------------------------------------
Pasos para recuperar el Grub-2 en modo gráfico, sin ejecutar ningún comando en la terminal

A) Iniciar el pc desde Supergrub2-Disk (SGD) y llegar hasta la sesión gráfica del sistema:
Una vez descargado el archivo .iso del SGD y grabado en un live-cd o en un pendrive iniciable, reiniciamos el PC desde el SGD. Nos aparece una serie de opciones ( en ingles) para la recuperación/arreglo del Grub2.

1º-En este caso, elegimos la primera opción "Detect any SO" (Detectar varios sistemas operativos).





2-Te detecta lo que tienes y aparece un menú de Grub2 con el que arrancas desde en tu kernel de Linux



3-Cuando esté cargado el sistema operativo en modo gráfico y tal como lo hubieras hecho si no se hubiera perdido el Grub2, continuas con el siguiente paso:

B) Recuperar el grub desde Grub-customizer: 
Si se perdió el Grub2 antes de que instalaras este programa, ahora que con el SGD has vuelto a la sesión gráfica del sistema, puedes instalarlo tal y como harías antes de que se hubiera perdido el Grub2 ( véase mas arriba ).

Ejecutar el programa, y tras cargarse completamente su ventana principal, hacer click sobre File->Install to MBR , tras lo cual se abre una ventana en la que hay que poner en donde queremos que se instale el Grub2: habitualmente el Master Boot Record (mbr) esta en el primer sector del disco duro ( no en una partición ), por lo que normalmente hay que poner /dev/sda ( no /dev/sda1 , que se correspondería a la primera partición del disco duro )



y damos al botón OK, tras unos momentos, cuando se haya terminado este paso, nos avisa de que se ha instalado el bootloader; tras ello se hace el click en File->Save, con lo cual se actualiza la configuración del Grub2, creándose un nuevo archivo grub.cfg



Una vez hecho esto, ya podemos apagar el pc y volverlo a iniciar desde el disco duro, y nos volverá a salir de nuevo la pantalla del Grub2 desde la que podremos elegir con que sistema operativo queremos disfrutar.

viernes, 15 de abril de 2011

Probando una distro desde el menú del Grub2, con Unetbootin

Con el método indicado en Iniciar una imagen.iso de Ubuntu guardada en el disco duro desde el Grub2 no he conseguido iniciar la imagen.iso de algunas distros, por ejemplo la de Guadalinex, pero he encontrado otro método con el que si que consigo iniciar dicha imagen.iso desde una nueva entrada en el menú del Grub2

Instalación de Unetbootin: Lo primero es ir a la página del programa:  http://unetbootin.sourceforge.net/ y desde Aquí bajarse el archivo unetbootin-linux-502.bin, al que hay que seleccionarlo y desde Preferencias-Permisos, hay que añadirle permisos de ejecución, y luego hacer doble clisk en él para que se instale y ejecute ( aparecerá una nueva entrada en el Menú de aplicaciones-Herramientas del sistema-Unetbootin ) tras lo cual tras pedirnos la contraseña de root, se abre la ventana de Configuración.



Configuración de Unetbootin: Elegimos Diso Imagen: .iso , la imagen .iso que queremos usar ( en el ejemplo Guada7cd.iso ), en donde queremos instalarla ( en el disco duro ) y la Unidad ( / , ya que la imagen .iso la tenemos guardada en / )


Le damos a Aceptar, y se abre otra ventana en la que vemos el progreso de ejecución del programa



y al acabar nos indica que reiniciemos el sistema,



al hacerlo vemos que en el menú del Grub2 hay una línea nueva (Unetbootin), la seleccionamos y  se inicia la distro correspondiente a la imagen.iso que hayamos instalado con Unetbootin.

------------------------------------

Si después de probar la distro que hayamos añadido al menú del Grub2, volvemos a reiniciar el pc desde la entrada de  la distro que tengamos instalada en el disco duro, y luego volvemos a ejecutar el programa Unetbootin se nos borrara la línea Unetbootin en el Grub2 correspondiente a la imagen .iso que habíamos puesto anteriormente, de forma que ya no tengamos dicha linea, o bien podemos ahora poner de nuevo dicha linea con otra .iso de otra distro que queramos probar.

-----------------------------------------------------


jueves, 16 de septiembre de 2010

Quitar el Grub2 y volver al Grub

Si tenias una versión de Ubuntu ( o derivadas) que usaba Grub y te has actualizado a una que usa el Grub2, quizás te puedas plantear si mantener el Grub2, o quitarlo y volver a usar el Grub de versiones anteriores de Ubuntu ( o derivadas ). Se me ocurren las siguientes causas tanto para cambiar el Grub2 por el Grub, como para mantener el Grub2:

Por que quitar el Grub2 y volver al Grub:

- Si sabes editar/manejar el grub y cubre tus necesidades, y no te apetece tener que aprender a hacer lo mismo con el grub2  ( Ver edición de grub y grub2 , en el Índice (1), apartado Grub y Grub2 )

- Si consideras que es mas fácil hacer una copia de seguridad  de la configuración del  grub ( un solo archivo: /boot/grub/menu.lst ) que del grub2 ( hay que copiar varios archivos/directorios:   Copia de seguridad de la configuración de Grub2)


Por que mantener el Grub2:

- Si te es útil la posibilidad del grub2 de iniciar una imagen.iso:  iniciar una imagen iso de Ubuntu (o derivadas )  guardada en el disco duro desde el grub2

- Si te es útil la posibilidad de usar Unetbootin para probar una distro desde el menú del grub2:  Probando una distro desde el menú del grub2 con Unetbootin

- Si no sabias sabes editar/manejar el grub, y puestos a aprender algo prefieres aprender a manejar la versión mas actual.

- Si te da igual tener el grub o el grub2, pues ni uno ni otro pensabas modificarlo

Quitar el Grub2 y volver al viejo Grub: Para recuperar el Grub y olvidarse de la complicada configuración del Grub2, seria algo así: Con la terminal en modo root:
( con ésto se hará una copia de seguridad  de los archivos de configuración del grub2, por si nos arrepentimos y queremos volver a tener el grub2 tal y como lo tenemos antes de lo hacer lo que sigue. )
cp /etc/default/grub /etc/default/grub.back
cp -R /etc/grub.d /etc/grub.d.back
cp -R /boot/grub /boot/grub.back

( con esto se desinstala el grub2 )
apt-get purge grub2 grub-pc
( con esto se instala el paquete grub )
apt-get install grub
( con esto se actualiza el grub )
update-grub
( con esto se instala el Grub en la en la partición sda - la 1ª partición del disco )
grub-install /dev/sda
( con esto se reiniciara el sistema, con el grub en vez del grub2 )
reboot

Si falla alguna entrada del Grub, se puede, una vez estas en la sesión gráfica, editar el Grub: http://hatteras-blog.blogspot.com.es/2008/11/edicionrecuperacion-del-grub.html

----------------------------------------------------------------------




martes, 3 de agosto de 2010

Recuperar el Grub2

Si has perdido el gestor de arranque múltiple, asegúrate que versión tienes, antes de intentar recuperarlo: si la versión Grub o la versión mas reciente Grub2.
La recuperación de la versión Grub2 es de lo que trata este tema.

Con un livecd de linux: Consiste en usar una distribución en modo LiveCD para instalar nuevamente el Grub2. Usaremos el LiveCD de cualquier  distribución que use Grub2 como gestor de arranque, y no Lilo ni Grub1 (por ejemplo Ubuntu 10.04, Mint8 o Mint9, Guadalinex v7 ) .

1- Lo primero que debemos hacer es arrancar el live-cd y abrir una terminal. Despues escribimos los siguiente para ver las particiones de los distintos discos duros:
sudo fdisk -l

2- Despues vemos cual es la partición donde tenemos linux y la montamos en /mnt (en la mayoría de los casos esta partición será sda1, el ejemplo lo haré con esa partición pero mira cual es tu partición con el comando fdisk -l):
sudo mount /dev/sda1 /mnt

( Nota. Si tienes la /boot en partición independiente:
Despues de montar el sistema de archivos en /mnt (con el comando sudo mount /dev/sda1 /mnt), debes montar también la partición boot con el siguiente comando:
sudo mount /dev/sda2  /mnt/boot )

3-Ahora, monta el resto de los dispositivos:
sudo mount --bind /dev /mnt/dev

4-Y ejecuta el comando chroot de forma que accedemos como root al sistema de archivos de nuestro linux:
sudo chroot /mnt

5-Por último cargamos el Grub en el MBR ejecutando el siguiente comando:
grub-install --recheck /dev/sda ( sda lo debemos substituir por el disco duro que utilizamos para arrancar los sistemas operativos, casi siempre es sda. Ojo!! no poner el número de partición, solo sda)

6-Reiniciamos y cuando vuelva a arrancar el linux desde el disco duro (no el del live-cd), podemos ajustar en el menú del grub2 manualmente para que aparezca en el menú de arranque el nuevo sistema operativo que nos borró el Mbr, o dejar que lo haga el automáticamente con el siguiente comando:
sudo update-grub2

7- Si el comando no te funciona, quizás necesites instalar el paquete grub2:
sudo aptitude install grub2

-----------------------------

Con Super Grub Disk: La aplicación Super Grub Disk (SGD) se puede encontrar en esta dirección http://www.supergrubdisk.org ( su versión más reciente que da soporte a Grub2, es la 1.98 http://developer.berlios.de/project/showfiles.php?group_id=10921 ).

Una vez descargado el archivo .iso del SGD y grabado en CD, reiniciamos el PC con boot en CD. Nos aparece una serie de opciones ( en ingles) para el arreglo del grub.

1º-Elegimos la primera opción "Detect any SO" (Detectar varios sistemas operativos).



2-Te detecta lo que tienes y aparece un menú de grub con el que arrancas en tu partición/kernel de linux



3-Cuando esté cargado el sistema operativo ( en modo gráfico y tal como lo hubieras hecho si no se hubiera perdido el grub2 ) abrimos la Terminal para teclear lo siguiente:

sudo grub-mkconfig (esperamos unos segundos...este comando no hace nada, solo nos da una salida de como quedara el fichero grub.cfg.)
después esto:
sudo grub-install /dev/sda ( Cuidado: en mi caso mi disco duro es sda, en tu caso puede ser hda...o averigualo antes)
después esto:
sudo update-grub2
Cuando termine  tecleamos lo siguiente :
sudo reboot
(se reinicia la máquina)
... y ya tienes tu Grub2 sano y salvo.

---------------------------

Con el Recuperador del Menú de Arranque (Gru) del cd live de Guadalinex v7

Este método en teoría es especifico para Guadalinex v7, pero debería valer para Mint9 y Ubuntu 10.04, ya que las dos primeras estan basadas en la última.

-- Al igual que con los métodos anteriores, averigua antes de nada como tienes las particiones con sudo fdisk -l

-- Inicia el pc con el cd live de Guadalinex v7: el programa recuperador del Grub2 está en Sistema-Administración-Recuperador del menú de arranque (Gru):

-- Al iniciar el programa, te pide la contraseña de root; la tecleas y continuas.

-- Aparece una 1ª ventana en la que te pide que indiques la partición en la que esta instalado el sistema ( la partición / )  ( si tienes dudas, puedes averiguarlo ejecutando gparted, o sudo fdisk -l )

-- Y luego aparece otra 2ª ventana en la que eliges donde instalar el grub: en el mbr ( osea en la 1ª partición del disco - del disco 1º si tienes varios - esto es lo recomendado ) o en el inicio de la partición / donde esta instalado el sistema.

—————————————-

Si en el pc tenemos varios sistemas Linux y un Windows, y ocurre un fallo y tenemos que recuperar el grub2: el que se tiene que recuperar, tanto si se estropea el arranque de Linux, como si tienes que recuperarlo tras reinstalar Windows, es el grub2 de el último sistema Linux que se instalo, el cual debe reconocer y mostrar las entradas correspondientes al otro sistema Linux, y a Windows.

-------------------------------------------

miércoles, 28 de julio de 2010

Copia de seguridad de la configuración del Grub2

Resumiendo, para usar una copia de seguridad de la configuración del  grub2 hay que copiar/restaurar estos tres elementos:
- el archivo /etc/default/grub
- el directorio /etc/grub.d/ ( y todos los archivos - scripts - que contiene )
- y el archivo /boot/grub/grub.cfg .
Puedes copiarlos en donde consideres oportuno para tenerlos a mano por si te hacen falta en algún momento.

Pero esto no sirve para recuperar el grub2 que se haya perdido, ( eso es otro tema   http://hatteras-blog.blogspot.com.es/2010/08/recuperar-el-grub2.html ) sino que esto sirve para, una vez restaurado el grub2, volverlo a tener como lo teníamos antes del desastre.

Con el comando ejecutado en la terminal:
sudo tar zcvf grub2_`date +%d-%B-%Y-%H-hora-%M-minutos`.tar /etc/default/grub /etc/grub.d/  /boot/grub/grub.cfg
se crea un archivo comprimido grub2_fecha.tar ( por ejemplo: grub2_06-febrero-2011-02-hora-07-minutos.tar  ) con el contenido de los archivos y directorios  arriba indicados.

Con solo eso ya podríamos dar por terminado el tema, y si no te interesa saber mas, ni el porque de tener que copiar esos tres elementos no hace falta que sigas leyendo, pero si quieres saber algo mas, continua...

---------------------

Así como la configuración del antiguo grub se guardaba en este único archivo ( /boot/grub/menu.lst) la configuración del grub2 se guarda en varios archivos que se encuentran en tres lugares principales:

1- archivo /boot/grub/grub.cfg - Este es el principal archivo de configuración que reemplaza a menu.lst.
A diferencia de menu.lst, este archivo no se debe editar a mano; si lo abres con gedit, él mismo te lo advierte:

# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub

es decir, traducido:

# NO editar este archivo
#
# Se genera automáticamente por /usr/ sbin/grub-mkconfig usando plantillas
# de /etc/grub.d y la configuración de /etc/default/grub



2- directorio /etc/grub.d/ - Este directorio contiene scripts del nuevo grub2. Estos scripts son bloques de construcción de los que nace el archivo de grub.cfg. Cuando se ejecuta el comando de grub2 (update-grub) , los guiones se leen en una cierta secuencia y se crea grub.cfg .

Los scripts que contiene, entre otros, son:
00_header es el script que carga la configuración de GRUB en / etc / default / grub, incluyendo tiempo de espera, la entrada de arranque por defecto, y otros
05_debian_theme define el fondo, los colores y temas. El nombre de este script  seguramente cambiara en otras distribuciones cuando adopten el grub2.
10_linux se encarga del kernel de linux en la partición principal.
20_memtest86+ carga la utilidad memtest86+
30_os-prober es el guión que analizará los discos duros para otros sistemas operativos y añadirlas al menú de arranque.
40_custom es una plantilla que puede utilizar para crear entradas adicionales que se añadirán al menú de arranque.

3- archivo /etc/default/grub - Este archivo contiene los ajustes de menú de grub2 que son leídos por las secuencias de comandos de grub2  y escrita en grub.cfg. El directorio /etc/default/ contiene muchos otros archivos no relacionados con el grub2, no se emplea únicamente para el grub2.

--------------------------

El archivo /etc/default/grub contiene la personalización del grub2; el directorio /etc/grub.d/ tiene scripts que contienen la información del menú grub2 y el sistema operativo scripts de arranque.
Cuando se ejecuta el comando update-grub, se lee el contenido del archivo de arranque y los scripts de /etc/grub.d/ , y se acaba el proceso creandose el archivo grub.cfg.

Una vez comprendido esto, ya sabemos que no basta con hacer una copia de seguridad del archivo /boot/grub/grub.cfg ya que si no tenemos también el /etc/default/grub y  el /etc/grub.d/ de forma adecuada, al ejecutar update-grub se creará un archivo /boot/grub/grub.cfg distinto al que habíamos recuperado desde la copia de seguridad.

———————–

viernes, 23 de julio de 2010

Iniciar una imagen .iso de Ubuntu guardada en el disco duro desde el grub2

Una de las grandes ventajas que trae el Grub2 es poder bootear una imagen .iso sin necesidad de grabarla a un CD/DVD, es decir utilizar una imagen .iso de un LiveCD sin grabarla en un CD . Con ello podemos tener instalado en nuestro disco duro una versión de Ubuntu o de Mint ( las dos distros con las que he probado que este sistema funciona ) e ir probando sucesivas versiones de ellas, sin tener que malgastar cd/dvd, por ejemplo podemos tener instalado en el disco duro la versión Gnome e ir probando la versión Kde, Lxde, etc o tener una versión de Gnome  e ir probando las siguientes versiones en Gnome antes de decidir si actualizar o no a una versión posterior.

Voy a explicar como añadir al Grub2 dos opciones para desde él poder iniciar el pc desde dos imágenes.iso guardadas en nuestro disco duro. Explico como añadir dos opciones, pero se pueden añadir de forma similar todas las líneas de entrada a imágenes.iso que se quieran, con tal de que haya espacio en la partición / para que quepan las imagenes.iso

Para este ejemplo las imágenes.iso que usaré las llamo: livecd.iso  ( que en mi caso es una iso de Mint9 en español ) y ubuntu.iso ( que en mi caso es una iso de Ubuntu 10.04 )

I- Las imágenes livecd.iso y ubuntu.iso deben estar guardadas en el directorio raiz /  (para copiarlas en ese directorio hay que hacerlo desde el administrador de archivos Nautilus ejecutado con permisos de root: alt+f2 y luego gksu nautilus )

II- Deberemos editar el archivo /etc/grub.d/40_custom, con sudo gedit /etc/grub.d/40_custom y agregar unas nuevas entradas al menú, para ello copiamos y pegamos este texto tal cual y sin modificarlo en la linea vacía inmediata al final del texto inicial de forma que quede:   ( los números puestos delante de cada linea no hay que copiarlos, solo los he puesto para ayudar a ver lo que es cada linea, ya que una de ellas aparece en el blog como si fueran dos; solo copiar el texto en verde)

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

1- menuentry “Livecd” {
2- set root=(hd0,7)
3- loopback loop /livecd.iso
4- linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/livecd.iso locale=es
_ES bootkbd=es console-setup/layoutcode=es --
5- initrd (loop)/casper/initrd.lz


6- }


1- menuentry “Ubuntu” {

2- set root=(hd0,7)
3- loopback loop /ubuntu.iso
4- linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu.iso locale=es
_ES bootkbd=es console-setup/layoutcode=es --
5- initrd (loop)/casper/initrd.lz


6- }

Teniendo en cuenta que:
1– menuentry “Livecd” { -> pone el título en el menú de grub2 para poder escogerlo como opción de arranque. Esta linea podemos modificarla cambiando “Livecd” por otro nombre que nos parezca mejor.

Editado, tras un comentario: He estado probando, y a mi, me funciona con la línea:
menuentry “Ubuntu” {
(usando la combinación de teclas mayúscula+2 para que se escriban las comillas)
Pero también he visto que con los corchetes en vez de las comillas:
menuentry [Ubuntu] {
también me funciona.
2– la línea set root: nos indica en que partición esta el archivo.iso; esta linea es la única que tenemos que modificar según donde tengamos el directorio raiz, es decir en que partición tenemos instalado el sistema.

Ten en cuenta que (hd0,7) significa disco primero (sda) y partición 7 (sda7); antiguamente la partición 7 se indicaba restando 1, es decir, (hd0,6). Mucho cuidado con no equivocarte pues no encontraría la partición correcta.

3– la linea loopback loop: nos indica la ruta dentro de la partición donde esta el archivo.iso ( directorio raiz / ): livecd.iso y ubuntu.iso son  los nombres de las imágenes iso que he empleado para este ejemplo.

4– La línea linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu.iso locale=es_ES bootkbd=es console-setup/layoutcode=es – debe ir en una sola linea en el archivo /etc/grub.d/40_custom aunque aquí parezca que son dos líneas) es para indicarle que arranque el kernel y que es una imagen iso que debe montar y usar como sistema raiz, y que la monte con todo ( los menús, los programas, y la distribución del teclado ) en español.

Cuidado: si en vez de
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu.iso locale=es_ES bootkbd=es console-setup/layoutcode=es --
ponemos
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu.iso --
el resultado será que en vez de en español el sistema aparecerá en ingles.
5– la línea initrd(loop): nos indica donde esta el initrd

III- Guardamos los cambios realizados en el archivo /etc/grub.d/40_custom

IV- Actualizamos el grub2 con el comando: sudo update-grub2

V- Reiniciamos el pc y veremos que en el menú Grub2 aparecen dos nuevas opciones ( Livecd y Ubuntu ) de forma que al elegir una de ellas arrancamos, en mi caso un Mint9 en español o un Ubuntu 10.04 también en español.

Una vez hechos estos cambios: En mi caso la imagen livecd.iso hace referencia a un archivo .iso de mint9, pero si quieres que arranque otra imagen.iso no hace falta que modifiques el archivo /etc/grub.d/40_custom, basta con que renombres la imagen .iso que quieres arrancar poniéndole el nombre livecd.iso ( o ubuntu.iso ), y que la copies al directorio raiz /

------------------------------

Este sistema tiene sus limitaciones: he probado este método, desde Mint9, con varias imágenes .iso de varias distros, pero de las que he probado solo funciona para las isos de Ubuntu y de su derivada Mint, para otras derivadas, como por ejemplo para Guadalinex, no funciona;  y tampoco para otras distros de linux como PcOnLinux.

No sé si desde un Guadalinex v7 instalado en el disco duro se puede hacer lo mismo de forma que se pueda iniciar una imagen.iso de Ubuntu o de Mint; si algún usuario de Guadalinex v7 prueba este método me gustaría que me indicara tanto si le funciona como si no, y también seria bueno que lo comunicara al servicio técnico de Guadalinex.

( Editado [15-Abril-2011 ]: Con el método que se indica, con Unetbootin, en  Probando una distro desde el menú del Grub2 con Unetbootin  ya he conseguido poder ejecutar la .iso de Guadalinex v7  que tengo en /  , sin necesidad de grabarla en un dvd.  Pero curiosamente en vez de en español me salen en inglés.

Unetbootin nos permite crear ISOs que puedan ejecutarse directo desde el disco duro. ¿Qué hay que hacer? Simplemente abre el programa, busca la imagen .iso que descargaste y selecciona Type > Hard Disk y haz clic en OK.
Reinicia la máquina y cuando aparece el menú del Grub2, selecciona la entrada “Unetbootin”.
Lamentablemente, cada vez que actualices la .iso (porque descargaste una versión nueva) vas a tener que ejecutar de nuevo Unetbootin para actualizar la entrada en el menú del Grub2. )
--------------------------------

Una vez configurado dicho archivo /etc/grub.d/40_custom de esta forma, y actualizado el grub2 con sudo update-grub2, una sola vez, para que se inicie cualquier livecd en vez de ir modificando dicho archivo con el nombre de la .iso, lo que hago es copiar la .iso en el directorio raiz /  y cambiarle el nombre: por ejemplo linuxmint-9-gnome-cd-i386.iso lo renombro a livecd.iso.

Por lo que dado que con esto lo único que habría que cambiar en /etc/grub.d/40_custom seria la partición en la que esta el directorio raiz /  ( en mi caso hd0,7 )  y copiar en / la imagen.iso que quisiéramos iniciar, pero cambiándole el nombre a livecd.iso ¿ no se podría hacer esto con un simple ( o complicado, no lo sé... )  script ?

Un script que nos hiciera dos simples preguntas:
--- ¿ en que partición se tiene instalado el sistema ( la partición / ) ?
al contestar a esto, el script escribiría la contestación adecuada en el archivo /etc/grub.d/40_custom
y luego el script actualizaría el grub2 con sudo update-grub2
--- ¿ dirección donde tenemos la imagen.iso que queremos iniciar con el grub2 ?
al contestar a esto nos la copiaría, desde esa dirección al directorio raiz / , cambiándole el nombre por livecd.iso

¿ Alguien sabe como hacer un script semejante ?
-------------------------------

lunes, 19 de julio de 2010

Edición básica del Grub2

En Ubuntu 9.10/10.04 ( y Mint 8/9 y Guadalinex v7 ) el Grub de versiones anteriores ha sido sustituido por el Grub2 como "gestor de arranque múltiple" para elegir que sistema operativo iniciar.

En este tema solo expongo lo que considero que es necesario conocer cuando el único sistema operativo que se tiene instalado en el pc es Linux. ( Lo siento si te interesa información sobre como añadir la entrada para el Windows, pero hace ya tiempo que no lo tengo en mi portátil - el xp fué el último que tuve - pero en Google hay información al respecto...ademas si ellos no dan información ni facilidades para que se use Linux, ¿ porque ibamos a dar los usuarios de Linux información para el uso de Windows ?)

Al contrario que con el Grub en el que solo hay que editar un archivo /boot/grub/menu.lst, para editar Grub2 hay que modificar varios archivos, según lo que queramos cambiar.

En todo caso, todos los archivos que hay que editar hay que hacerlo con permisos de root: sudo gedit nombre_del_archivo.

Siempre, después de la edición del archivo correspondiente: guardamos los cambios del fichero que hayamos modificado, lo cerramos y ejecutamos el siguiente comando para actualizar el Grub2: sudo update-grub2

Hacer que aparezca el menú del grub2: Si con el sistema recién instalado no te aparece el menú del Grub2, y se inicia automáticamente la sesión normal del sistema, es conveniente/altamente recomendable que cambies la situación para que te aparezca el menú del Grub2, para que puedas elegir por ejemplo iniciar en el "recovery mode".

Para ello edita el fichero /etc/default/grub ( con lo siguiente en la terminal: sudo gedit /etc/default/grub ) de forma que aparezca el símbolo # delante de las siguientes entradas:

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=" splash"


Guarda los cambios realizados en el archivo, y luego recuerda ejecutar en la terminal el comando sudo update-grub2

Cambiar la resolución de la pantalla del Grub2:

Se ejecuta: sudo gedit  /etc/grub.d/00_header para editarlo: se busca la linea que empieza por set gfxmode=  y a continuación del signo = se pone la configuración que se quiera ( en este ejemplo 640x480) ; se guardan los cambios realizados a dicho archivo, y se ejecuta la orden sudo update-grub2 para que se actualice el grub2.

set gfxmode=640x400
insmod gfxterm
insmod vbe
terminal gfxterm

Cambiar la imagen de fondo del menú:

Obtienes de donde quieras una imagen que te guste, ( por ejemplo instalando el paquete grub2-splashimages - se instalaran varias imágenes.tga en el directorio /usr/share/images/grub/ ) o incluso la creas tú.
- la abres con Gimp y la editas para asegurarte que tiene esta dimensión 640 x 480 pixels ( Gimp-imagen-escalar imagen ), la guardas con el nombre linuxmint.png ( asegúrate que la extensión es .png )
- abres nautilus en modo root y vas a la carpeta /boot/grub y en ella veras que hay una imagen llamada linuxmint.png, bueno pues esta imagen que viene por defecto la sobreescribes con tu imagen linuxmint.png
- cierras el nautilus en modo root
- reinicias el sistema y veras que ya tienes como imagen de fondo del Grub2 la imagen que tu hayas puesto de la forma anterior.

A mi me ha funcionado perfectamente, y he cambiado varias veces la imagen del Grub2, sobreescribiendo la imagen linuxmint.png con una nueva con el mismo nombre.
Ademas este método tiene la ventaja de que no toca "archivos sensibles" del sistema.

En este caso he puesto como se hace en Mint9, que es donde lo he probado, donde la imagen del Grub2 se llama por defecto linuxmint.png , lógicamente en otras distros este nombre variará, pero el método de cambiar la imagen de fondo del Grub2 debe ser similar.

En varios foros he visto que hay otro método de cambiar la imagen de fondo del grub2, ( editando el archivo /etc/grub.d/05_debian_theme ) pero me parece mas complicado.

Cambiar el color del texto de las líneas del menú:
Antes de modificar los colores del texto debemos tener una imagen de fondo. Para modificar los colores del texto abrimos el archivo /etc/grub.d/05_debian_theme ejecutando en la terminal: sudo gedit /etc/grub.d/05_debian_theme. Y buscamos en la sección:



# set the background if possible

if background_image `make_system_path_relative_to_its_root ${bg}` ; then
set color_normal=yellow/blue
set color_highlight=green/black

Donde: --- en "set color_normal" yellow es el color del texto sin seleccionar y blue es el color del fondo la línea del texto sin seleccionar, del menú del grub2

--- en "set color_highlight", "green" es el color del texto seleccionado y "black" es el color del fondo en la línea de texto seleccionado. ( Hay que tener en cuenta que el color black colocado en este segundo lugar no hace que el fondo sea negro, sino transparente) .

Los colores que se pueden utilizar son: rojo = red ; verde = green; azul =blue;  amarillo = yellow ; cian = cyan ; magenta = magenta ;  blanco = white ; negro = black ( transparente = black , si se pone como color en el segundo lugar ).

Después de modificar el archivo, y guardar los cambios, debemos como siempre  actualizar el menú del Grub2 con el comando: sudo update-grub2


Eliminar la entrada de memtest:  
Basta con quitarle los permisos de ejecución, con la línea de comandos:
sudo chmod -x /etc/grub.d/20_memtest86+
Y si quieres volver a recuperarlo, solo tienes que cambiar la opción -x por +x en la orden anterior.
sudo chmod +x /etc/grub.d/20_memtest86+

Añadir y Quitar líneas correspondientes a un kernel

A) Añadir lineas correspondientes a un nuevo kernel: se añaden de forma automática al instalar un nuevo kernel, bien con synaptic o bien con el gestor de actualizaciones.

B) Añadir lineas que hacen referencia a un kernel antiguo:  Desinstalar un  kernel

Primero averiguar que kernels tenemos instalados, ejecutando en la terminal: sudo dpkg --get-selections | grep linux-image

Luego eliminamos los kernels antiguos, por ejemplo para eliminar el 2.6.20-14-generic,  sudo apt-get remove --purge linux-image-2.6.20-14-generic 

Con esto se habrá desinstalado completamente el kernel antiguo, y además se realizara un update del grub de forma automática, eliminando la entrada del kernel antiguo, pero aún podemos para asegurarnos que el grub2 esta actualizado, ejecutar : sudo update-grub2

Editar el tiempo que se mantiene activa la pantalla del grub2 hasta que se inicia el sistema (timeout ):

Se ejecuta en la terminal: sudo gedit /etc/default/grub , y se edita la entrada GRUB_TIMEOUT=5 se cambia 5 por el tiempo en segundos que se quiera. Guardamos los cambios hechos en el fichero y ejecutamos en la terminal para actualizar el Grub2: sudo update-grub2 .

Cambiar el sistema que se inicia por defecto:
En el archivo: /etc/default/grub se edita GRUB_DEFAULT=0
teniendo en cuenta que GRUB_DEFAULT= corresponde a la línea del menú por defecto: 0 es la primera, 1 la segunda, 2 la tercera, etc. etc.
Guardamos los cambios hechos en el  fichero, cerramos el archivo,  y ejecutamos el siguiente comando para actualizar el grub:
sudo update-grub2

Iniciar una iso de Ubuntu guardada en el disco duro desde el grub2: Esto es una nueva opción que tiene el Grub2, que no tenia el Grub. De esto trata el tema: iniciar-una-imagen-iso-de-Ubuntu-guardada-en-el-disco-duro-desde-el-Grub2

----------------------------------

Algunas opciones se pueden cambiar con el programa Startupmanager: pero varias de las opciones que se podían cambiar con Grub+Startupmanager no están disponibles con Grub2+Startupmanager...quizás si sacan un Startupmanager2.

—————--------------——–

lunes, 12 de julio de 2010

Cambiar las imágenes de Inicio (Grub2, Plymouth, y de Acceso-Login)

Desde que iniciamos el pc hasta que llegamos a la imagen del escritorio vamos pasando por varias imágenes: - imagen de fondo del gestor de arranque múltiple ( Grub2 )  - imagen de inicio del sistema (Plymouth )  - pantalla de acceso GDM o "login".

I- Cambiar la imagen de fondo del Grub2:

Siempre que cambiamos algo del Grub2, después, para que se guarden los cambios y se actualice hay que ejecutar en la terminal: sudo update-grub2


Si queremos instalar unas cuantas imágenes mas podemos ejecutar: sudo apt-get install grub2-splashimages con lo que se instalara un paquete de imágenes.tga para el grub2 desde los repositorios oficiales, dichas imágenes se instalan en el directorio  /usr/share/images/grub/

Desde mi punto de vista la forma mas fácil de cambiar la imagen del grub2 es esta:

- Obtienes de donde quieras una imagen que te guste, por ejemplo del paquete de imágenes para el grub2 o incluso la creas tu.
- La abres con Gimp y la editas para asegurarte que tiene esta dimensión 640 x 480 pixels ( Gimp-imagen-escalar imagen ), la guardas con el nombre linuxmint.png ( asegúrate que la extensión es .png )
- Abres nautilus en modo root y vas a la carpeta /boot/grub y en ella veras que hay una imagen llamada linuxmint.png, bueno pues esta imagen que viene por defecto la sobreescribes con tu imagen linuxmint.png
- Cierras el nautilus en modo root
- Reinicias el sistema y veras que ya tienes como imagen de fondo del grub2 la imagen que tu hayas puesto de la forma anterior.

En este caso he puesto como se hace en Mint9, que es donde lo he probado, donde la imagen del grub2 se llama por defecto linuxmint.png , lógicamente en otras distros este nombre variará, pero el método de cambiar la imagen de fondo del grub2 debe ser similar.


( En varias webs hay otra forma de cambiar la imagen  de fondo del grub2, editando el fichero /etc/grub.d/05_debian_theme con: sudo gedit /etc/grub.d/05_debian_theme pero me parece mas difícil de hacer y de recordar como se hace ).

Antes de elegir la imagen que vayas a poner fíjate de que color son las letras, tanto las que se ven normalmente como las que se ven cuando las seleccionas, para que se vean bien, hagan contraste, sobre la nueva imagen que vas a poner. Por ejemplo yo tengo las letras en blanco y en negro cuando las selecciono, y por lo tanto mi imagen del grub2 no debe ser una imagen con fondo blando pues sino no se verían las letras.

También se puede cambiar el color de las letras de las líneas del menú del grub2:

Antes de modificar los colores del texto debemos tener una imagen de fondo. Para modificar los colores del texto abrimos el archivo /etc/grub.d/05_debian_theme con sudo gedit /etc/grub.d/05_debian_theme


En la sección siguiente:

set menu_color_normal=white/black
set menu_color_highlight=blue/white

cambiar los colores como se indica:

-- En "set menu_color_normal" el color "white" es el color del texto sin seleccionar y "black" es el color de fondo de la linea sin seleccionar. ( curiosamente si queremos que el color de fondo sea transparente y deje ver el color de la imagen de fondo del menú de grub2 hay que poner black, es decir el fondo no sera negro sino transparente )

-- En "set menu_color_highlight", "blue" es el color del texto seleccionado y "white" es el color del fondo en la línea de texto seleccionado.

Los colores que se pueden utilizar son:   rojo=red --verde=green--azul=blue--amarillo=yellow--cian=cyan--magenta=magenta--blanco=white--negro=black

Después de modificar el archivo /etc/grub.d/05_debian_theme, debemos, como siempre que se modifica el grub2,  actualizar grub.cfg con el comando: sudo update-grub2

--------------------------

A mi me ha funcionado perfectamente, y he cambiado varias veces la imagen del grub2, sobreescribiendo la imagen linuxmint.png con una nueva con el mismo nombre.
Ademas este método tiene la ventaja de que no toca "archivos sensibles" del sistema.

Esta es ahora la imagen de mi grub2:




Para que la imagen se vea con mas nitidez, asegúrate que en el programa Startupmanager está seleccionada una profundidad de color de 24 bits.

----------------------------------

II- Cambiar la imagen de inicio del sistema ( Plymouth ) :

Esto solo sirve para Mint9/Ubuntu 10.04 ( y Guadalinex v7), ya que:
Mint 7 / Ubuntu 9.04 usaba usplash
Mint 8 / Ubuntu 9.10 ya no usaba usplash sino xplash
Mint 9/ Ubuntu 10.04 ya no usa xplash sino plymouth

He averiguado como cambiar la imagen del inicio/apagado del sistema ( tema Plymouth ), la que aparece después de la imagen de fondo del grub2, y que es también la imagen que aparece justo antes de apagarse el sistema.

Siempre que cambiamos algo del tema Plymouth, después, para que se guarden los cambios y se actualice hay que ejecutar en la terminal: sudo update-initramfs -u

El tema de plymouth por defecto en Mint9 ( ubuntu-logo ) esta en /lib/plymouth/themes/ubuntu-logo. Se puede modificar dicho tema, modificando sus tres componentes. ( Como todos ellos están en un directorio del sistema para su edición hay que ejecutar sudo nautilus para acceder a ellos con permisos de root, para luego poderlos modificar -por ejemplo poder abrir con permisos de root una imagen con el programa gimp - )

1- Modificar la imagen:
- Se modifica/cambia la imagen /lib/plymouth/themes/ubuntu-logo/ubuntu_logo.png por otra que nos guste mas: dicha imagen nueva debe conservar el nombre de la original (ubuntu_logo)  y puede tener el mismo tamaño -en pixeles- que la original, o puede ser algo mayor.

2- Modificar el color del fondo:
- Instalar con synaptic el programa gcolor2
- Ejecutar dicho programa y elige el/los color/es que quieras poner de fondo en el tema de Plymouth
- Anota el valor de red, green y blue para dicho color: por ejemplo: 125, 238, 162   ( color verde claro )
- Divide dichos valores entre 255 ( en este ejemplo: 0.49, 0.93, 0,63 )
- Abre con permisos de root: sudo gedit /lib/plymouth/themes/ubuntu-logo/ubuntu-logo.script
- busca en él los siguientes lineas:
Window.SetBackgroundTopColor (1.00, 1.00, 1.00);
Window.SetBackgroundBottomColor (1.00, 1.00, 1.00);
- Sustituye los valores entre paréntesis por los que has hallado: puedes poner los valores de dos colores, uno para la mitad superior (BackgroundTopColor) de la pantalla de plymouth, y otro para la mitad inferior (BackgroundBottomColor ) , de forma que la pantalla tendrá dos colores que pasan del uno al otro en degradación; o puedes poner en ambas lineas los mismos valores, de forma que el tema de plymouth tendrá un solo color.
De forma que queden, por ejemplo:
Window.SetBackgroundTopColor (0.49, 0.93, 0,63);
Window.SetBackgroundBottomColor (1.00, 1.00, 1.00);


( Los valores:
1.00, 1.00, 1.00 son del color blanco
0.50, 0.50, 0.50 son del color gris
0.00, 0.00, 0.00 son del color negro )

- Guarda los cambios realizados en el archivo, y ciérralo.

3- Modificar los puntos de colores parpadeantes:
-- selecciona el archivo /lib/plymouth/themes/ubuntu-logo/progress_dot_off.png y ábrelo con permisos de root con gimp:
- puedes aumentar el tamaño del punto de color: gimp ->imagen-> escalar imagen: cambiar el tamaño a por ejemplo 63x63 ( el triple de su tamaño original)
- puedes cambiar el color del punto
- guardas los cambios y cierra gimp.
-- selecciona el archivo /lib/plymouth/themes/ubuntu-logo/progress_dot_on.png y lo  abres con permisos de root con gimp, y lo modificas de forma similar; guardas los cambios y cierras gimp.

Una vez modificado a tu gusto el tema de Plymouth, para actualizarlo:
- ejecuta en la terminal : sudo update-initramfs -u
- en el próximo reinicio ya tendrás el nuevo tema de Plymouth tanto al inicio como al final.

Esta es la imagen de la pantalla de Plymouth por defecto en Mint9:



Y, luego de los cambios, esta es ahora mi imagen de Plymouth:



Para que se vea bien tanto la imagen del grub2 como la de Plymouth lo mejor es ponerlas, con el programa Startupmanager, con una profundidad de color de 24 bits.

-------------------

Además del tema de plymouth que viene por defecto, se pueden con synaptic instalar otros temas (buscando "plymouth-theme") , y luego de instalar el/los que se quieran:

- para elegir el tema de plymoutn a usar: sudo update-alternatives --config default.plymouth

- para actualizar el tema: sudo update-initramfs -u

Los temas plymouth se instalan en /lib/plymouth/themes, de forma que por ejemplo el tema "plymoth-solar" se instala en /lib/plymouth/themes/solar y se puede modificar de forma similar a como se modifica el tema de /lib/plymouth/themes/ubuntu-logo.

------------------

Si lo que se desea es Saltar la animación del Plymouth y arrancar sin la animación Splash, viendo todos los procesos que se van cargando.
1) Editar el archivo /etc/default/grub: ejecutando en la terminal: sudo gedit /etc/default/grub

2) Buscar las líneas:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=" splash vga=795"

y cambiarlas por:
GRUB_CMDLINE_LINUX_DEFAULT=

GRUB_CMDLINE_LINUX=


3) Guardar los cambios, cerrar el archivo y teclear: sudo update-grub

Después de los cambios el siguiente arranque será como en la imagen:



Si nos arrepentimos y queremos Volver a ver la animación de Plymouth, lógicamente debemos deshacer los cambios hechos en el archivo /etc/default/grub, volver a actualizar el grub.

sudo gedit /etc/default/grub

volvemos a poner las lineas como estaban:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=" splash vga=795"

Guardamos los cambios, cerramos el archivo y tecleamos: sudo update-grub

Después de los cambios el siguiente arranque será de nuevo con la animación de Plymout.

-------------------------------------------------------------------------------------

Si lo que queremos es que entre la imagen del Grub2 y la Pantalla de Acceso al Sistema no aparezca nada mas que una pantalla en negro con un cursor parpadeante, es decir si queremos deshabilitar completamente el Plymouth podemos hacerlo de la siguiente forma:

Para desactivar Plymouth:
Renombramos el fichero /etc/init/plymouth-splash.conf a /etc/init/plymouth-splash.conf.disable

Para volver a activar el Plymouth:
Borrar el sufijo .disabled

-------------------------------------------------------------------------------------

III- Cambiar la Pantalla de Acceso o "Login": vale lo dicho en: http://hatteras-blog.blogspot.com.es/2010/03/modificar-la-de-acceso-login-en-ubuntu.html
-------------------------

En la actualidad he modificado a mi gusto todas las pantallas de inicio del sistema, y demás detalles gráficos:
- la imagen de fondo del grub2
- la imagen de plymouth
- la imagen de la pantalla de login
- la imagen del fondo del escritorio ( bueno en realidad uso escritorios con fondos dinámicos, que cada x tiempo cambia la imagen )
- la imagen del salvapantallas
- el tema de escritorio, con iconos nuevos, no me gustan las carpetas verdes, las prefiero en azul

Esto me da bastante rabia, el sistema lo puedes modificar bastante a tu gusto, pero las pantallas de inicio te las tienes que tragar al gusto "del fabricante", o tener que averiguar como hacerlo, y en cada versión nueva hay que empezar de nuevo a aprender como modificar las pantallas de inicio.
A ver si ya se están quietos, y en próximas versiones se dedican a mejorar la distro una vez que ya esta funcionando y dejan de tocarnos las... con modificaciones de pantallas de inicio distintas, o que hagan herramientas gráficas para modificarlas.
—————————-

lunes, 29 de diciembre de 2008

Poner contraseña al Menú del Grub

El gestor de arranque Grub en Guadalinex viene configurado de serie de forma que permite arrancar el Sistema en el "modo recovery" sin pedir la contraseña de root (administrador), con lo que tiene eso de inseguro, ya que una vez en el recovery mode puedes actuar como root sin que se te haya pedido ninguna contraseña, y también lo inseguro que desde la misma pantalla del menú del Grub se puedan editar las líneas de arranque. Para evitar esto, tienes la posibilidad de proteger Grub con su propia contraseña, o con la misma de root:1- poniendo una contraseña que evite la edición del propio menú 2- poniendo una contraseña que bloquee el acceso al modo recovery y/o a cualquiera de las otras líneas del menú 3- bloqueando totalmente el acceso, sin posibilidad de desbloquearlo con una contraseña, a alguna de las opciones del menú del Grub.  Si has instalado Guadalinex en un pendrive este método lo puedes usar también en él, dificultara el acceso a tus archivos personales si se te pierde.

Grub soporta dos formas diferentes para añadir una contraseña de acceso: la primera usa texto sin cifrado, y la segunda utiliza cifrado md5.  También se puede bloquear una entrada concreta del menú del Grub, con el comando "lock".
Para ponerle una contraseña debes editar (como root) el fichero /boot/grub/menu.lst de la siguiente forma ( sudo gedit /boot/grub/menu.list ):

1- Poner contraseña al Menú del Grub: justo antes del title del primer menú añades la línea: password xxx ( Donde xxx es  una contraseña en modo texto) o la línea password --xxx ( donde xxx es una contraseña cifrada ). Para esto último en una consola y como root escribimos el siguiente comando: grub-md5-crypt
Te pedirá una contraseña y su verificación (en nuestro ejemplo es "usuario22n" ), como resultado te dará unos caracteres ( en el ejemplo: $1$f/Nfq$1YrrUM0adYBh/xHCj2UEB1  ) ,los copias,los pegas en el fichero /boot/grub/menu.lst antes de la lista de entradas de arranque añade:
password --$1$f/Nfq$1YrrUM0adYBh/xHCj2UEB1
Con esto ya tienes el menú Grub con contraseña, de forma que no te aparece la posibilidad de editarlo ( tecleando "e" ) si antes no pones la contraseña, tecleando "p".

2- Poner una contraseña a una entrada concreta del Menú del Grub: Si quieres que por ejemplo la entrada al Modo Recovery tenga también una contraseña, pones la línea: password xxx entre la línea title y la línea root. En este caso recomiendo poner una contraseña en modo texto, y que sea la misma del root para no tener que recordar mas contraseñas. Se puede poner de la misma forma contraseñas a las demás líneas del menú del grub.

3- Bloquear una entrada concreta del menú del Grub: con el comando lock: por ejemplo para impedir que se pueda ejecutar la línea del menú "memtest86+" lo que se hace es poner entre la línea de title y la de root, el comando lock. Se puede bloquear la entrada de la misma forma a las demás líneas del menú del Grub.

4- Ejemplo en mi menú del Grub:  lo que tengo puesto es:
- una contraseña cifrada para impedir que se pueda editar el menú del Grub    ( esta  contraseña es más segura que la contraseña en modo texto, y no necesito acordarme de ella, pues si necesitase editar el menú del Grub no lo haría desde esa pantalla, sino una vez funcionando el sistema )
- una contraseña en modo texto ( la misma que la contraseña de root, para no tener que acordarme de mas contraseñas) , para impedir bajo contraseña el acceso al Modo Recovery.
- un bloqueo total al modo "memtest86+", con el comando lock

Ejemplo de una parte de mi /boot/grub/menu.lst:

##splashimage=(hd0,1)/boot/grub/splah.xpm.gz
password --$1$f/Nfq$1YrrUM0adYBh/xHCj2UEB1
title        Guadalinex V5, kernel 2.6.24-19-generic
root        (hd0,1)
kernel        /boot/vmlinuz-2.6.24-19-generic root=UUID=2b2f1a9a-e73b-4750-a41a-bde927a8e141 ro quiet splash locale=es_ES
initrd        /boot/initrd.img-2.6.24-19-generic
quiet

title        Guadalinex V5, kernel 2.6.24-19-generic (recovery mode)
password usuario22n
root        (hd0,1)
kernel        /boot/vmlinuz-2.6.24-19-generic root=UUID=2b2f1a9a-e73b-4750-a41a-bde927a8e141 ro single
initrd        /boot/initrd.img-2.6.24-19-generic

title        Guadalinex V5, memtest86+
lock
root        (hd0,1)
kernel        /boot/memtest86+.bin
quiet

5- Poner contraseña usando un programa gráfico:
Hay un paquete que se llama starupmanager (se puede instalar desde Synaptic) que sirve para modificar estas opciones si no se quiere hacer editando el archivo /boot/grub/menu.lst.
Ejecutar con alt+f2: su-to-root -X -c /usr/sbin/startupmanager ( o desde en Sistema-Administración-Adminsitrador de Arranque -nos pide la contraseña de root- y en la pestaña seguridad se puede poner contraseña 1- al cargador de arranque  2- al modo recovery  3- a las opciones antiguas de arranque.

6- Deshacer el camino si se nos olvidan estas contraseñas:
Si nos olvidamos de estas contraseñas no podremos editar el menú del Grub o entrar en la parte que hayamos bloqueado con contraseña, para restaurar a la situación sin contraseñas, tendremos que iniciar el pc desde un cd live de la distro, y desde ahí editar de forma inversa el archivo /boot/grub/menu.lst del sistema ( cuidado no editar el /boot/grub/menu.lst  del cd live, ya que si editáramos éste no quitaríamos las contraseñas al menú del Grub del sistema instalado en el disco duro )

---------------------------------------

martes, 25 de noviembre de 2008

Edición/Recuperación del Grub

A = Editar el Grub:

1-Para la edición manual del grub

2-Para manejar y configurar el Grub en modo gráfico, instala el paquete startupmanager.  Con el puedes configurar:
-Opciones de arranque: tiempo de espera, kernel a arrancar, tamaño de la pantalla, mostrar o no el menú en el cargador de arranque, etc
-Aspecto: color del texto e imagen de fondo
-Seguridad: poner contraseña
-Avanzado; poner o no la opción de arranque de memtest86+, crear disco de rescate, etc

Desde: http://gnome-look.org/ http://art.gnome.org/ podemos bajarnos imágenes de fondo para el grub.

Si queremos hacernos nuestra propia imagen ha de tener los siguientes requerimientos:

- tipo de archivo: xpm.gz    - tamaño: 640x480        - 14 colores

Es decir debemos crear una imagen con solo 14 colores, del tamaño 640x480 y guardarla en un archivo comprimido con la extensión .gz y llamado xpm, es decir: xpm.gz . Este archivo lo hemos de copiar al directorio /boot/grub/splashimages

B = Reinstalar el Grub, ( por ejemplo perdido tras reinstalar Windows ): También se puede perder el grub original por otras causas, por ejemplo si te equivocas al instalar un linux en un pendrive e indicas que el grub se instale en el disco duro en vez de en el pendrive. A continuación pongo varios métodos de recuperar el grub original, que he ido sacando de varias fuentes.


1- con el cd SuperGrub disk:

Desde descargar supergrub disk puedes conseguir un livecd que te ayudara a reinstalar el grub. Con este disco se puede hacer muchas cosas:

= Sobre Linux
Restaurar Grub ( o Lilo en otras distros de linux) en MBR automáticamente
Activa la Partición de Linux y arranca Linux

= Sobre Windows:
Arregla el Arranque de Windows
Arranca Windows tanto si esta instalado en el 1º disco o en un 2º disco o en una 2ª partición

= Arranque Clásico
Arrancar MBRs y particiones
Arrancar particiones

= Sobre particiones
Activar particiones
Ocultar particiones
Desocultar particiones

Para saber algo mas...

2- con Gparted:

Puedes hacerlo bien usando el cd live de Guadalinex, o bajarte un cd live específico con esta herramienta: Gparted; en ambos casos:


1.- iniciar el pc desde live cd de guadalinex o gparted
2.- ejecuta la herramienta gparted
3.- elijes la particion donde tienes tu guadalinex
4.- click derecho y le pones en manage flags
5.- seleccionas donde dice boot
6.- reinicias tu pc
7.- ya tienes tu grub como antes

3- con el Recuperador del Menú de Arranque (Gru) del cd live de Guadalinex

Iniciar el pc con el cd live de guadalinex: en Sistema-Administración-Recuperador del menú de arranque (Gru): te pide la contraseña de root, aparece una ventana en la que eliges la partición en la que esta instalado el sistema  ( si tienes dudas, puedes averiguarlo ejecutando gparted ) y luego aparece otra en la que eliges donde instalar el grub: en el mbr ( esto es lo recomendado ) o en el inicio de la partición donde esta instalado el sistema.

El programa Gru se puede conseguir, para instalarlo desde el cd live de otra distro derivada de Ubuntu, desde http://ftp.cica.es/Guadalinex/guadalinex-lobo/pool/main/g/gru/

4- con la Terminal:
Iniciar el pc con el cd live de guadalinex, y ejecutar en la terminal los siguientes comandos:


-ejecuta grub como root con el siguiente comando: sudo grub y te aparecerá algo como esto en la pantalla:

[ 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>

Es decir ya estas utilizando la utilidad (programa) grub, entonces
-escribe lo siguiente y pulsa enter: find /boot/grub/stage1 y y te aparecerá algo como esto:
grub> find /boot/grub/stage1
(hd0,1) <- Este dato es el que necesitamos y varia según tu propio ordenador
- Luego indicamos cual va a ser el dispositivo raíz, recuerda que lo que esta entre paréntesis varia según sea tu caso.
grub> root (hd0,1)
- Instalamos el GRUB, en este paso solo indicamos en que disco duro lo vamos hacer, solo ponemos el primer dato entre paréntesis.
grub> steup (hd0)
y nos aparecerá algo como:
grub> setup (hd0)
Checking if “/boot/grub/stage1″ exists… yes
Checking if “/boot/grub/stage2″ exists… yes
Checking if “/boot/grub/e2fs_stage1_5″ exists… yes
Running “embed /boot/grub/e2fs_stage1_5 (hd0)”…  16 sectors are embedded…succeeded
Running “install /boot/grub/stage1 (hd0) (hd0)1+16 p (hd0,6)/boot/grub/stage2/boot/grub/menu.lst”…succeeded
Done.

- Salimos de la aplicación grub:  grub> quit
- Reinicia (desde el disco duro). Grub debería estar instalado y ambos sistemas operativos
(tanto Guadalinex como Windows) deberían ser automáticamente detectados.

------------------------------------------

Editado el 23-12-08: acabo de tener un desastre con el grub al intentar, y equivocarme, instalar otra distro de linux en un pendrive, y después de intentar recuperar el grub con el SuperGrubDisk, con Gparted, y con el Recuperador del Grub de Guadalinex, y fallarme todos esos métodos, al final lo he conseguido con el método 4, es decir con el cd live de guadalinex y usando la terminal:

sudo grub
grub> find /boot/grub/stage1
me salio hd0,1
grub> root (hd0,1)
grub> setup (hd0)
me salio: done
grub> quit

y reinicie el pc, y solucionado el problema
------------------------------------------



C = Reponer el Menú de Inicio de Windows, ( después de haber recuperado el Grub ), en Guadalinex, con Grubaker:

Ejecutando Guadalinex en el disco duro: En Sistema-Administración-Grubaker:
Pulsamos en el botón añadir y se abrirá una nueva ventana.
En la nueva pantalla tenemos que introducir los siguientes datos:
- Título: El nombre que se mostrará en la lista de opciones: windows .
- Disco: Generalmente pondremos 0, salvo si el sistema operativo se encuentra instalado en un segundo disco duro, en ese caso pondremos 1, si estuvieses en el tercero pondremos 2, y así.
- Partición: Pondremos el número de la partición donde se encuentra el sistema operativo. Si el disco no tiene particiones hechas entonces estará en 0. Si estuviese en la segunda sería 1, etc.
En opciones especificas para otros sistemas
- En Chainloader pondremos un +1
- Seleccionamos la casilla activar .
- Aceptamos y salimos de Grubaker

D = Errores del Grub:
En errores del grub hay un listado de los errores del grub que aveces salen al instalar Guadalinex.

E = Todo sobre el Grub:
En manual del grub hay una explicación del grub mucho mas amplia.
( También en esta otra página - en inglés - )




domingo, 17 de agosto de 2008

Edición básica del Menú Grub: archivo /boot/grub/menu.lst

Edición básica del archivo /boot/grub/menu.lst:

Modificando este archivo se puede modificar el menú grub que permite elegir que sistema se inicia al arrancar el pc. Para modificar ese archivo lo tienes que hacer con permisos de root: alt+f2... y teclear:

gksu gedit /boot/grub/menu.lst

Las dos partes mas importantes de este archivo estan formadas por las lineas que hacen referencia al:

1) Menú para que se pueda ejecutar Windows:

title         Windows
root          (hd0,0)
makeactive
chainloader   +1

La explicación de esta parte es mas sencilla, por lo que empezamos por ella:

- title: indica el nombre del sistema operativo que se va a iniciar

- root  (hd0,0) indica: disco duro 1 partición 1 que es donde se debe instalar Windows por defecto.

( Si Windows no se hubiera instalado en el disco duro 1, partición 1, leete: Instalar guadalinex y Windows en el mismo pc

- makeactive: para marcar la partición como activa

- chainloader   +1 :  el comando sirve para realizar una carga en cadena, y el signo +1 vale para indicar que  la carga la haga en el primer sector de la partición.

================

2) Menú de inicio de Guadalinex/Linux:

Normalmente en el menú Grub aparecen 3 opciones para iniciar Guadalinex:

-- inicio Normal:

title  Ubuntu 8.04.1, kernel 2.6.24-19-generic
root  (hd0,1)
kernel  /boot/vmlinuz-2.6.24-19-generic root=UUID=97b1b9f6-30c9-43a1-82d6-518e7e35e1ec ro quiet splash
initrd  /boot/initrd.img-2.6.24-19-generic
quiet

---------

-- inicio en Modo de Recuperación:

title  Ubuntu 8.04.1, kernel 2.6.24-19-generic (recovery mode)
root  (hd0,1)
kernel  /boot/vmlinuz-2.6.24-19-generic root=UUID=97b1b9f6-30c9-43a1-82d6-518e7e35e1ec ro single
initrd  /boot/initrd.img-2.6.24-19-generic

 ------------

-- inicio en Modo de Test de Memoria:

title  Ubuntu 8.04.1, memtest86+
root  (hd0,1)
kernel  /boot/memtest86+.bin
quiet

----------------------

 Ahora explicamos las opciones más importantes de las líneas que hacen referencia al inicio de Guadalinex/Linux:

1-- title: nombre de la selección que aparecerá en el menú Grub

2-- root: disco duro, partición   donde está instalado el sistema (en este caso disco 1 partición 2)

3-- kernel: esta opción tiene a su vez varios comandos:

== para saber el número del kernel: teclear en terminal: uname -r

aparecerá el número de kernel: en este ejemplo: 2.6.24-19-generic

== hay que poner:  /boot/vmlinuz-(numero del kernel): en este ejemplo: /boot/vmlinuz-2.6.24-19-generic

==  root=UUID=

para saber el uuid ( etiquetas identificativas únicas ) de la partición donde esta instalado el sistema: teclear en una terminal el comando:

ls -l  /dev/disk/by-uuid/

Elegir el número que aparezca en la partición donde esta instalado el sistema: en este ejemplo el uuid es:

97b1b9f6-30c9-43a1-82d6-518e7e35e1ec

== ro:  significa read only: solo lectura: el sistema solo se puede leer pero no modificar

== quiet:   si esta opción esta activada, evita que aparezcan en pantalla todo lo que se va cargando mientras se inicia el sistema; si quitas esa opción aparecen en pantalla todo lo que se va cargando mientras se inicia el sistema.

== splash:  muestra una imagen mientras se inicia el sistema: la imagen estará (o no-en Ubuntu no hay-) en /boot/grub/splashimages. Las imágenes que contiene el paquete grub-splashimages_1.0.0_all.deb tienen un formato *.xpm de 14 colores, con un tamaño de 640x480 y están comprimidas con el formato gz (imagen.xpm.gz). El programa creará una carpeta para depositar las imágenes en la ruta: /boot/grub/splashimages

== single: opción que hay que poner para poder acceder en el modo de recuperación: En Recovery Mode, prácticamente puedes utilizar la mayoría de los comandos que se utilizan para el Terminal, y una de las funciones que tiene Recovery Mode, es poder reparar nuestro sistema cuando por algún motivo no podemos acceder a la sesión normal de Guadalinex/Ubuntu, además de poder iniciarlo mediante la interfaz gráfica tecleando startx.

== /boot/memtest86+.bin: memtest86+

Realiza una comprobación del estado de la memoria si optamos a ello desde los gestores de arranque,para lo cual necesitamos editarlos añadiéndoles su ruta. Las opciones que hay que poner son:

title:  memtest86+
root (hd0,1)    ( si el sistema esta en el disco 1, partición 2)
kernel /boot/memtest86+.bin     suponiendo que /boot esté en la partición raiz (/)

4-- initrd: hay que poner /boot/initrd.img-(numero del kernel)

Este comando permite especificar un disco RAM inicial para utilizarlo al arrancar. Es necesario un initrd cuando el kernel necesita ciertos módulos para poder arrancar de forma adecuada, tales como cuando la partición se formatea con el sistema de archivos ext3.

5-- quiet: sirve lo anteriormente dicho.

 Si tenemos instalado solo un Linux ( por ejemplo Guadalinex) solo aparecerán esas 3 opciones de iniciar Linux; si después de instalar Guadalinex instalamos Ubuntu, y no aparecen las opciones para acceder a él, habrá que añadirlas al archivo /boot/grub/menu.lst  cambiando los parámetros que sean necesarios ( disco y partición en el que este instalado Ubuntu, número del kernel, etc)

==============

 3) otras opciones importantes en el archivo menu.lst

-default 0 indica que por defecto se cargue la 1ª opción que aparezca en el menú de Grub  ( si quisiéramos que por defecto se cargara la 2ª opción, habría que poner 1, etc)

-timeout: Indica el tiempo que esperará Grub antes de iniciar la opción por defecto (siempre que no se pulse ninguna tecla).

-hiddenmenu: Oculta las opciones de inicio y sólo muestra la cuenta atrás, para acceder al menú tendríamos que pulsar ESC (práctico cuando siempre iniciamos la misma opción).

Normalmente esta desactivada ( tiene el símbolo # delante ), si la quieres activar debes quitar # delante de ella.

-color: Mediante esta opción podemos cambiar los colores del texto y del fondo de Grub.

Por defecto, el menú del Grub tiene un fondo negro con letras blancas: Normalmente la linea correspondiente al color (# color cyan/blue white/blue ) esta desactivada ( tiene el símbolo # delante ), si la quieres activar debes quitar # delante de ella, tras lo cual nos aparecerá un menú del Grub con fondo azul, al estilo de varias aplicaciones con interfaz de línea de comandos. Si queremos, podemos cambiar los colores reemplazando las palabras cyan, blue y white por otras, que representen los nombres de distintos colores en inglés ( white, red, blue, yelow, green ).

Veréis que en algunas opciones aparece delante el símbolo #, esto significa que grub debe ignorar esa línea, con lo que Grub tomará el valor por defecto para esa opción.

------------------

Hay un paquete que se llama "starupmanager" (instalable desde synaptic) que sirve para modificar muchas de estas opciones si no se quiere hacer editando el archivo /boot/grub/menu.lst.

-----------------------

En este manual del Grub hay una explicación del Grub mucho mas amplia.  ( También en esta otra página - en inglés - )

En errores del Grub hay un listado de los errores del Grub que aveces salen al instalar el sistema.

------------------------------------