web-dev-qa-db-fra.com

Erreur de syntaxe 'update-grub'

J'ai lu plusieurs questions précédentes et je n'ai trouvé aucune solution. Lorsque je lance la commande update-grub, le résultat est le suivant:

root@Agustin-Ubuntu:/home/agustin# update-grub
Generating grub.cfg ...
Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
Found linux image: /boot/vmlinuz-3.5.0-45-generic
Found initrd image: /boot/initrd.img-3.5.0-45-generic
Found linux image: /boot/vmlinuz-3.5.0-43-generic
Found initrd image: /boot/initrd.img-3.5.0-43-generic
Found linux image: /boot/vmlinuz-3.5.0-40-generic
Found initrd image: /boot/initrd.img-3.5.0-40-generic
Found linux image: /boot/vmlinuz-3.5.0-39-generic
Found initrd image: /boot/initrd.img-3.5.0-39-generic
Found linux image: /boot/vmlinuz-3.5.0-37-generic
Found initrd image: /boot/initrd.img-3.5.0-37-generic
Found linux image: /boot/vmlinuz-3.5.0-36-generic
Found initrd image: /boot/initrd.img-3.5.0-36-generic
Found linux image: /boot/vmlinuz-3.5.0-34-generic
Found initrd image: /boot/initrd.img-3.5.0-34-generic
Found linux image: /boot/vmlinuz-3.5.0-23-generic
Found initrd image: /boot/initrd.img-3.5.0-23-generic
Found Windows 8 (loader) on /dev/sda1
Found linux image: /boot/vmlinuz-3.5.0-45-generic
Found initrd image: /boot/initrd.img-3.5.0-45-generic
Found linux image: /boot/vmlinuz-3.5.0-43-generic
Found initrd image: /boot/initrd.img-3.5.0-43-generic
Found linux image: /boot/vmlinuz-3.5.0-40-generic
Found initrd image: /boot/initrd.img-3.5.0-40-generic
Found linux image: /boot/vmlinuz-3.5.0-39-generic
Found initrd image: /boot/initrd.img-3.5.0-39-generic
Found linux image: /boot/vmlinuz-3.5.0-37-generic
Found initrd image: /boot/initrd.img-3.5.0-37-generic
Found linux image: /boot/vmlinuz-3.5.0-36-generic
Found initrd image: /boot/initrd.img-3.5.0-36-generic
Found linux image: /boot/vmlinuz-3.5.0-34-generic
Found initrd image: /boot/initrd.img-3.5.0-34-generic
Found linux image: /boot/vmlinuz-3.5.0-23-generic
Found initrd image: /boot/initrd.img-3.5.0-23-generic
Found memtest86+ image: /boot/memtest86+.bin
Found linux image: /boot/vmlinuz-3.5.0-45-generic
Found initrd image: /boot/initrd.img-3.5.0-45-generic
Found linux image: /boot/vmlinuz-3.5.0-43-generic
Found initrd image: /boot/initrd.img-3.5.0-43-generic
Found linux image: /boot/vmlinuz-3.5.0-40-generic
Found initrd image: /boot/initrd.img-3.5.0-40-generic
Found linux image: /boot/vmlinuz-3.5.0-39-generic
Found initrd image: /boot/initrd.img-3.5.0-39-generic
Found linux image: /boot/vmlinuz-3.5.0-37-generic
Found initrd image: /boot/initrd.img-3.5.0-37-generic
Found linux image: /boot/vmlinuz-3.5.0-36-generic
Found initrd image: /boot/initrd.img-3.5.0-36-generic
Found linux image: /boot/vmlinuz-3.5.0-34-generic
Found initrd image: /boot/initrd.img-3.5.0-34-generic
Found linux image: /boot/vmlinuz-3.5.0-23-generic
Found initrd image: /boot/initrd.img-3.5.0-23-generic
Found Windows 8 (loader) on /dev/sda1
error: syntax error.
error: Incorrect command.
error: syntax error.
error: Incorrect command.
error: syntax error.
error: line no: 165
Syntax errors are detected in generated GRUB config file.
Ensure that there are no errors in /etc/default/grub
and /etc/grub.d/* files or please file a bug report with
/boot/grub/grub.cfg.new file attached.
done

Le problème ici est que le Customizer Grub n'est pas mis à jour après la mise à jour vers la version générique 3.5.0-45, de sorte que les entrées du menu sont toutes foirées et que je ne peux pas les obtenir dans l'ordre que je veux parce que le Customizer Grub n'a aucun effet, il affiche les nouvelles entrées appropriées mais il ne modifie pas le menu lorsque je démarre.

Voici mon fichier /etc/default/grub:

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT="1"
#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=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL="console"

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE="640x480"

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID="true"

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

GRUB_SAVEDEFAULT="false"
1
Agustin Marengo

Je viens de vérifier mon /etc/default/grub et il a le même aspect que dans votre Pastebin, mais je reçois également cet avertissement depuis l'installation par défaut d'Ubuntu 14.04 Trusty Thar.

Donc, cela ne m'aide pas. Le résultat est toujours le même. Et j'ai trouvé qu'il y avait déjà une grande discussion sur la table de lancement. Il suffit de regarder ici:

https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1258597

Mais le commentaire #10 sur ce lien montre l’astuce: comment régler le problème. Le fichier /etc/default/grub doit être édité à la deuxième ligne et à la troisième ligne comme indiqué dans le commentaire n ° 10 sur le lien ci-dessus du tableau de bord:

Sudo gedit /etc/default/grub
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=countdown
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.modeset=1"
GRUB_CMDLINE_LINUX=""

Alors fais:

Sudo update-grub

Cela trie les choses ...

2
Andrea

J'ai enregistré un fichier/etc/default/grub d'origine dans ma Pastebin pour de telles situations. Ouvrez un terminal et faites

Sudo cp /etc/default/grub ~/default-grub.bad
Sudo wget "http://Pastebin.com/raw.php?i=g3TMZgTP" -o /etc/default/grub 
Sudo update-grub 

Voir le fichier au format brut ici

Suggestion supplémentaire:

Vous avez un tas de noyaux installés. Essayez de supprimer les anciens. Vous pouvez utiliser un programme tel que Ubuntu-Tweak ou Synaptic.

1
NickTux

J'ai eu un problème similaire que j'ai résolu en supprimant simplement un menu que j'avais dans Grub Customizer. Après avoir supprimé ce menu, Grub Customizer a recommencé à enregistrer sans problèmes.

1
Paolo

Vous avez bousillé votre fichier/etc/default/grub en plaçant plusieurs commandes sur une seule ligne commentée, mais vous avez divisé la dernière en deux sur la ligne suivante sans en faire un commentaire. "echo Debian`" GRUB_CMDLINE_LINUX_DEFAULT = "quiet splash" "fait partie de la commande précédente et doit figurer sur la même ligne.

0
psusi