Làm cho grub giữ khởi động mặc định của nó dưới bản cập nhật kernel


11

Tôi khởi động kép máy của mình và tôi muốn nó mặc định khởi động vào windows để bất cứ khi nào tôi khởi động lại máy từ xa từ nhà tôi sẽ có thể quay lại Windows (thay vì Ubuntu).

Vấn đề là mỗi khi Ubuntu nâng cấp kernel, tôi phải đặt lại mục khởi động mặc định của grub trở lại windows. Điều này là do trình tải menu grub sử dụng các vị trí tức là 6 cho hệ điều hành mặc định để khởi động. Và khi Ubuntu cài đặt kernel mới, nó sẽ thay đổi thứ tự đó.

Tôi đang tìm cách để cấu hình grub để ghi nhớ mục khởi động mặc định của nó trong các bản cập nhật kernel.

Câu trả lời:


9

Grub 1 (Ubuntu 9.04 trở về trước)

Tôi thấy cách dễ nhất để làm điều này là di chuyển mục khởi động Windows lên trên các mục Ubuntu /boot/grub/menu.lst. Theo mặc định, tệp cấu hình Grub được trình bày như sau:

  1. tùy chọn cơ bản
  2. cấu hình kernel tự động ma thuật debian (bao gồm các tiện ích như memtest86 + theo mặc định)
  3. hệ điều hành khác được phát hiện

Phần 2 được phân định bởi các dòng này trong tệp cấu hình:

### BEGIN AUTOMAGIC KERNELS LIST
(lots of stuff here)
### END DEBIAN AUTOMAGIC KERNELS LIST

Các mục nhập cho hệ điều hành tự động (ví dụ: Windows) được đặt sau phần này. Khi bạn cài đặt kernel mới, phần 2 là phần duy nhất được thay đổi. Vì vậy, di chuyển hệ điều hành autodetected đến một nơi nào trước khi các BEGINdòng sẽ đặt nó ở đâu số entry sẽ không thay đổi khi một hạt nhân mới được cài đặt.


Grub 2 (Ubuntu 9.10 trở lên)

Với Grub2, toàn bộ tệp cấu hình được tạo lại bất cứ lúc nào update-grubđược chạy, vì vậy chỉnh sửa /boot/grub/grub.cfgsẽ không phải là một sửa chữa vĩnh viễn. Làm thế nào tập tin đó được tạo ra được xử lý bởi các tập tin /etc/default/grubvà các tập lệnh trong /etc/grub.d/*. Vì vậy, chúng tôi sửa đổi cấu hình bằng cách sửa đổi các tệp kiểm soát các phần riêng lẻ của cấu hình, sau đó chạy update-grublại.

Của tôi /etc/grub.dbao gồm các tập tin:

  • 00_ tiêu đề
  • 05_debian_theme
  • 10 giờ
  • 10_linux
  • 20_memtest86 +
  • 21_memt86
  • 30_os-prober
  • 40 tùy

Đây là những shellscripts mà có được chạy theo thứ tự để tạo ra các tập tin cấu hình. Mục khởi động Windows được tạo bởi 30_os-prober, được chạy sau khi mục khởi động linux được tạo 10_linux. Vì vậy, chỉ cần đổi tên 30_os-proberthành một cái gì đó ít hơn 10 và chạy lạiupdate-grub

mv /etc/grub.d/30_os-prober /etc/grub.d/09_os-prober
update-grub

Bây giờ mục nhập Windows của bạn phải là mục nhập đầu tiên và bạn có thể đặt mục nhập đó làm mục nhập khởi động mặc định ( GRUB_DEFAULT=) /etc/default/grub.


2

Làm theo các hướng dẫn trên blog của tôi ở đây để sử dụng bộ tải khởi động Windows sạch cho công việc của bạn. Tôi sử dụng nó bây giờ và khi tôi khởi động PC, tôi có hai tùy chọn:

Windows Vista Ubuntu 10.04

Không có sự lộn xộn khác. Bạn có thể thiết lập nhiều tùy chọn khác nhau cho nó quá. Nếu tôi không nhấn bất cứ thứ gì trong 5 giây, Windows sẽ khởi động.

Chúc may mắn.


liên kết đó gần như đã chết
tshepang
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.