update-grub和update-grub2有什么区别?


51

我正在的grub文件下进行一些更改/etc/default/grub。在某些教程中,我见过sudo update-grub其他教程sudo update-grub2。有什么区别?

Answers:


66

没有区别。

Ubuntu 9.10和更高版本已安装了GRUB2,但sudo update-grub仍然是标准命令。

sudo update-grub并且sudo update-grub2是等效的,因此您运行哪一个都没有关系。 /usr/sbin/update-grub2仅仅是一个符号链接/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
  • 实际上,通常来说,一个命令有时可以是另一个命令的符号链接,但是它们的行为却有所不同,因为可执行文件会检查该命令的调用方式(即,用什么名字命名)并相应地执行。

    这是不是这样update-grub2update-grub,虽然,这都是由像包提供grub-pc提供GRUB2。此外,/usr/sbin/update-grub它实际上只是一个简短的shell脚本,它通过另一个命令来完成其大部分工作,我们可以查看其完整的三行源代码(在Ubuntu 12.04中),以查看用于调用它的名称没有被检查:

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

    "$@"扩展到名称update-grub或之后传递的所有命令行参数update-grub2,但不扩展名称本身。这是脚本中唯一检查命令行语法的地方。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.