Sự khác biệt giữa update-grub và update-grub2 là gì?


51

Tôi đang thực hiện một số thay đổi trên tệp grub của tôi dưới /etc/default/grub. Trong một số hướng dẫn tôi đã thấy sudo update-grubvà những người khác sudo update-grub2. Sự khác biệt là gì?

Câu trả lời:


66

Không có sự khác biệt.

Ubuntu 9.10 trở lên đã cài đặt GRUB2, nhưng sudo update-grubvẫn chiếm ưu thế như lệnh tiêu chuẩn.

sudo update-grubsudo update-grub2tương đương nhau, vì vậy không quan trọng bạn chạy cái nào. /usr/sbin/update-grub2chỉ là một liên kết tượng trưng đến /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
  • Trên thực tế, nói chung đôi khi một lệnh có thể là một liên kết tượng trưng của một lệnh khác, nhưng chúng hoạt động khác nhau, bởi vì thực thi kiểm tra cách nó được gọi (nghĩa là bằng tên gì) và hành xử tương ứng.

    Đó là không phải là trường hợp cho update-grub2update-grubmặc dù, đó đều được cung cấp bởi các gói như grub-pccung cấp GRUB2. Hơn nữa, /usr/sbin/update-grubthực sự chỉ là một tập lệnh shell ngắn thực hiện hầu hết các lệnh của nó thông qua một lệnh khác và chúng ta có thể xem mã nguồn 3 dòng hoàn chỉnh của nó (trong Ubuntu 12.04) để thấy rằng tên được sử dụng để gọi nó không được kiểm tra:

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

    "$@"mở rộng cho tất cả các đối số dòng lệnh được truyền sau tên update-grubhoặc update-grub2, nhưng không phải tên đó. Và đây là nơi duy nhất trong kịch bản kiểm tra cú pháp dòng lệnh.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.