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
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
# 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
# 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
# mount /dev/sda2 /media/sda2
# mount -o bind /dev/ /media/sda2/dev/
# mount -o bind /sys/ /media/sda2/sys/
# mount -o bind /proc/ /media/sda2/proc/
# chroot /media/sda2
# grub-install /dev/sda
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
# 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)