¿Es un ejemplo que has copiado por ahí o realmente esa es la partición Linux de tu equipo? ¿Seguro que el arranque de tu Linux está en una partición extendida de un disco clásico MBR?
Puedes listar las particiones con ls
dentro de GRUB. Los discos serán (hd0), (hd1), (hd2)…etc. En aquellos discos formateados con esquema MBR, aparecerán particiones etiquetadas como "msdos" (aunque no estén relacionadas con MS-DOS) y en aquellos discos formateados con esquema GPT, aparecerán particiones etiquetas como "gpt", por ejemplo (hd0,gpt1), (hd0,gpt2), etc…
Si el PC es moderno y sus sistemas operativos también, lo más probable es que el disco esté formateado en esquema GPT y arranque desde una partición pequeña (100-300 MB) de tipo EFI que luego salte a la partición Linux. Si no la localizas, desde la terminal de un Linux "live" de la distribución en curso, lanza un fdisk -l
para ver exactamente cuáles son tus particiones, y podrás definir los nombres correctos en las etiquetas root y prefix en GRUB.
Puede que la salida del comando fdisk -l
etiquete los discos como sda, sdb, nvme0n1… y no como hd0, hd1… que es la forma que te va a proporcionar GRUB. Lo que debes es identificar cuál es exactamente el disco y la partición de Linux donde está la carpeta /boot/grub. Obviamente si solo existiese un disco duro en el equipo pues no va a haber mucho misterio.
Por ejemplo, en mi PC tengo los Linux en un SSD NVMe. Desde una terminal me aparece el disco como /dev/nvme0n1 y mis Linux están en la cuarta partición /dev/nvme0n1p4 (Manjaro) y la quinta /dev/nvme0n1p5 (Ubuntu) pero sin embargo dentro de GRUB, éstas aparecen como (hd2,gpt4) y (hd2,gpt5) respectivamente. La carpeta /boot de cada Linux está en dichas particiones, pero ese es mi caso, que no tiene por qué coincidir con el tuyo. La cosa es que identifiques dónde tienes el arranque en tu equipo, y a las malas, vuelve a generar el GRUB desde disco del Linux Live.
En mi caso, que repito solo aplicaría a mi equipo, si por casualidad se me jodiese el GRUB del Manjaro, debería teclear los comandos:
set prefix=(hd2,gpt4)/boot
set root=(hd2,gpt4)
insmod linux
insmod normal
normal
pero eso solo funcionaría en un Linux que estuviese bien instalado y los ficheros vmlinuz e initrd/initramfs estén localizados en esa carpeta /boot. Si no, tocaría reinstalar GRUB desde el Live.