Quelle est la différence entre update-grub et update-grub2?


51

Je fais des changements sur mon fichier grub sous /etc/default/grub. Dans certains tutoriels que j'ai vus sudo update-grubet d'autres sudo update-grub2. Quelle est la différence?

Réponses:


66

Il n'y a pas de différence.

GRUB2 a été installé dans Ubuntu 9.10 et versions ultérieures, mais il sudo update-gruba toujours prévalu comme commande standard.

sudo update-grubet sudo update-grub2sont équivalents, donc peu importe celui que vous exécutez. /usr/sbin/update-grub2est juste un lien symbolique vers /usr/sbin/update-grub.

ek@Del:~$ ls -l `which update-grub update-grub2`
-rwxr-xr-x 1 root root 64 May 17 03:07 /usr/sbin/update-grub
lrwxrwxrwx 1 root root 11 May 17 03:22 /usr/sbin/update-grub2 -> update-grub
  • En fait, en général , une commande peut parfois être un lien symbolique d’une autre, et pourtant leur comportement est différent, car l’exécutable vérifie comment il a été appelé (c’est-à-dire par quel nom) et se comporte en conséquence.

    Ce n'est pas le cas pour update-grub2et update-grubbien, qui sont tous deux fournis par des paquets comme grub-pcceux-ci fournissent GRUB2. En outre, /usr/sbin/update-grubn’est en fait qu’un court script shell qui effectue la plupart de son travail à travers une autre commande. Nous pouvons examiner son code source complet de 3 lignes (dans Ubuntu 12.04) pour voir que le nom utilisé pour l’appeler n’est pas vérifié:

    #!/bin/sh
    set -e
    exec grub-mkconfig -o /boot/grub/grub.cfg "$@"
    

    "$@"étend à tous les arguments de ligne de commande passés après le nom update-grubou update-grub2, mais pas ce nom lui-même. Et c’est le seul endroit du script où la syntaxe de ligne de commande est vérifiée.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.