Volver al índice


grub2

Gestor de arranque. Los dispositivos empiezan por 0 y las particiones empiezan con 1. “sda1” es “hd0,1” y no “hd0,0” como en el antiguo grub.

1.-

Modificación de parámetros generales:

# gedit /etc/default/grub

GRUB_DEFAULT= 0/saved (0 selecciona primera entrada, 1 la segunda... "saved" selecciona la última entrada  ejecutada.)

GRUB_TIMEOUT=10 (tiempo de espera antes de arrancar)

GRUB_HIDDEN_TIMEOUT=0  (esconder el menú de entradas. Si hay varios sistemas comentarlo)

GRUB_HIDDEN_MENU_QUIET=true (oculta la cuenta atrás. "false" la muestra)

GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo Debian (determina el nombre del sistema)

GRUB_CMDLINE_LINUX="acpi_osi=Linux" (opciones concretas que pueden pasarse al arranque)

GRUB_CMDLINE_LINUX_DEFAULT="splash noapic" (otras opciones por defecto)

GRUB_GFXMODE=1024x768 (activa el grub gráfico)

GRUB_DISABLE_LINUX_RECOVERY="true" (muestra la opción de recovery mode en el menú. “false lo suprime)

# update-grub2 (hacer efectivos los cambios)

2.-

Para que no aparezca memtest en el menú:

# chmod -x /etc/grub.d/20_memtest86+

El mismo comando con “+x” lo restituye.

# update-grub2

3.-

Quitar lineas que hacen referencia a kernels antiguos:

# dpkg --get-selections | grep linux-image (averiguar los instalados)

# apt-get remove --purge linux-image-2.6.xx-xx-generic

El update-grub2 se hará de forma automática.

4.-

Cambiar la imagen de fondo [apt-get install grub2-splashimages]. Si se quieren hacer con gimp, estas han de tener un tamaño de 640×480 pixeles y extensión .tga

$ ls /usr/share/images/grub (directorio de la imágenes)

# gedit /etc/grub.d/05_debian_theme

Y modificamos en la linea:

WALLPAPER="/usr/share/images/grub/Lake_mapourika_NZ.tga"

# update-grub2

5.-

Reinstalar grub2 desde un live-cd o desde otra partición.

# fdisk -l (para saber la partición del grub que queremos instalar)

# mount /dev/sda2 /media/sda2 (motar la partición)

# mount -o bind /dev/ /media/sda2/dev/ (montar los sistemas de ficheros)

# mount -o bind /sys/ /media/sda2/sys/

# mount -o bind /proc/ /media/sda2/proc/

# chroot /media/sda2 (Chorootear la partición que alberga el grub que vamos a instalar)

# grub-install /dev/sda (instalar grub en el disco)

6.-

Para solucionar el problema de que al arrancar un sistema operativo la pantalla no muestra nada, editar el archivo:

# nano /etc/default/grub

Y en la linea:

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

Añadir el chipset de vuestra gráfica:

General (para cualquier gráfica): nomodeset

ATI (driver libre ati o radeon): radeon.modeset=0

ATI (driver privativo): nomodeset

nVidia: xforcevesa o nomodeset

Nvidia con driver libre (nouveau): nouveau.modeset=0

Intel: i915.modeset=0

Quedando la entrada, por ejemplo para una Intel; como sigue:

GRUB_CMDLINE_LINUX_DEFAULT="quiet i915.modeset=0"

7.-

Modificar los colores de las fuentes para adaptarlas a las imágenes mostradas.

# gedit /etc/grub.d/05_debian_theme

y modificar las líneas

set menu_color_normal=white/black

set menu_color_highlight=black/light-gray

color_normal (los que se utilizan por defecto)

color_highlight (los que se utilizan para la entrada seleccionada).

El primero de los 2 colores de cada uno de estos campos se refiere al color de la fuente, y el segundo, al color de fondo.

Colores permitidos:

red (rojo)

green (verde)

blue (azul)

yellow (amarillo)

cyan (cian)

magenta (magenta)

white (blanco)

black (negro)

light-gray (gris claro)

8.-

Colocar contraseña a grub2 para dos usuarios:

# nano /etc/grub.d/00_header

Colocar al final:

cat << EOF

set superusers=”usuario1”

password usuario1 la_contraseña

password usuario2 otra_contraseña

EOF

9.-

Para que en el grub2 salga la partición de windows del sistema pero no otras particiones ntfs (de recuperación, HP, ….)

$ gedit /boot/grub/grub.cfg

Copiar el menuentry perteneciente a la partición windows (no la de recuperación) y pastearla en:

# gedit /etc/grub.d/40_custom

Luego:

# gedit /etc/default/grub

Y añadir al final del archivo la linea:

GRUB_DISABLE_OS_PROBER=true

Recargar grub:

# update-grub

Nota.- Las entradas de 40_custom no se muestran en la salida de la consola pero quedan reflejadas en el grub.cfg

10.-

Poner contraseña a grub2

# grub-mkpasswd-pbkdf2 (Crear la contraseña encriptada en SHA512)

# nano /etc/grub.d/00_header

Y colocar al final del archivo:

cat << EOF

set superusers="usuario"

password_pbkdf2 usuario contraseña_SHA512

EOF

# nano /etc/grub.d/10_linux

Buscar la linea:

printf "menuentry '${title}' ${CLASS} {\n" "${os}" "${version}"

Y colocar al usuario al final de {CLASS}:

printf "menuentry '${title}' ${CLASS} --users usuario {\n" "${os}" "${version}"

# update-grub

11.-

Entrar como root desde grub sin contraseña:

1.- Cuando sale el menú de grub desplazarse al sistema que se quiere arrancar y pulsar la letra "e"

2.- moverse a la linea del kernel

En este punto puede optarse por dos soluciones:

a) borrar todo desde después de "ro" hasta el final y colocar init=/bin/bash [linux   /boot/vmlinuz-3.2.0-4-amd64 root=UUID=de1d7793-c3d2-4e03-b79d-1a76905619e6 ro init=/bin/bash ]. El teclado estará en inglés.

b) ponemos al final de la linea "single" [linux   /boot/vmlinuz-3.2.0-4-amd64 root=UUID=de1d7793-c3d2-4e03-b79d-1a76905619e6 ro  quiet single ]

Y proseguir con el arranque pulsando F10 o Ctrl+x con lo que el sistema iniciará con una consola root.

12.-

Otra forma de entrar en el sistema cuando se ha perdido la contraseña de root y no se dispone de un live CD:

1.- Reiniciar y cuando aparece grub, pulsar la tecla "e"

2.- Buscar la linea en la que aparece algo como "init=/bin/bash" y modificar el parámetro de read-only (ro) por read-write (rw).

3.- Pulsar F10 para guardar cambios y reiniciar el equipo.

4.- Aparecerá un prompt shell en el que pondremos:

    mount -n -o remount,rw /

    passwd root (ponemos nueva contraseña)

    exec /sbin/init (reiniciamos)

13.-

Modificar el sistema que arranca primero.

# gedit /boot/grub/grub.cfg

Y modificar la linea que pone:

set default="2"

Arrancará el sistema situado en la 3ª linea que aparece en el menú (La primera linea es la 0)


Volver al índice