La variable prefix contient une valeur incorrecte.
Voilà l'idée:
GRUB loading.
error: no such disk
grub rescue> set
prefix=(UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX)/boot/grub
root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
grub rescue> ls
(hd0) (hd0,6) (hd0,5)
grub rescue> ls (hd0,5)/
error: unknown filesystem
grub rescue> ls (hd0,6)/
./ ../ lost+found/ boot/
grub rescue> set prefix=(hd0,6)/boot/grub
grub rescue> insmod sh
...//...
rescue:grub> ls (hd0,6)/boot
./ ../ vmcoreinfo-2.6.31-20-generic System.map-2.6.31-20-generic initrd.img-2.6.31-20-generic
vmlinuz-2.6.31-20-generic config-2.6.31-20-generic grub/ memtest86+.bin abi-2.6.31-20-generic
rescue:grub> set root=hd0,6
rescue:grub> insmod linux
rescue:grub> linux /boot/vmlinuz-2.6.31-20-generic root=/dev/sda6 quiet
[Linux-bzImage, setup=0x3400, size=0x3c400]
rescue:grub> initrd /boot/initrd.img-2.6.31-20-generic
[Initrd, addr=0x177fb000, size=0x83874e]
rescue:grub> boot
...//...
Le "insmod sh" n'est pas indispensable, mais il rend la frappe plus aisée, parce qu'il permet de revenir sur ce qu'on a déjà tapé via les touches flêchées.
Si vous pensez que le fichier de config est encore bon, vous pouvez utiliser après le "insmod sh" la commande "normal" pour reprendre l'exécution de grub, ou bien la commande configfile (comme décrit précédemment) si vous souhaitez pointer vers un fichier de config alternatif créé par vos soins.
"ls" est la seule commande disponible en mode rescue pour lire le contenu d'une partition ou d'un dossier, ce qui en fait l'outil à connaître quand on doit localiser l'installation de grub. Une fois la variable prefix correctement créée, et après un "insmod search" on a accès à la commande search pour localiser des fichiers, mais à ce stade on a généralement déjà trouvé...