Ubuntu中update-grub2與update-grub的區別


沒有區別。

Ubuntu 9.10及更高版本已安裝GRUB2,但sudo update-grub仍然以標准命令為准。

sudo update-grubsudo update-grub2是等同的,所以運行哪一個並不重要。 /usr/sbin/update-grub2僅僅是一個符號鏈接到/usr/sbin/update-grub

ls -l `which update-grub update-grub2`
#output
-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腳本,通過另一個命令完成大部分工作,我們可以看看它的完整的3行源代碼(在Ubuntu 12.04中),看看用於調用它的名稱沒有被檢查:

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

"$@"擴展到所有的名字后,通過命令行參數update-grubupdate-grub2,但不是這個名字本身。而這是腳本中唯一一個檢查命令行語法的地方。

所以,一般情況直接運行sudo update-grub即可。

 

參考:

https://askubuntu.com/questions/167763/what-is-difference-between-update-grub-and-update-grub2

https://askubuntu.com/questions/591873/why-is-there-an-update-grub-and-a-update-grub2-command


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM