thay đổi menu khởi động - GRUB [trùng lặp]


1

Có thể trùng lặp:
Làm cho grub giữ khởi động mặc định của nó dưới các bản cập nhật kernel

Tôi đã có hệ thống khởi động kép - Ubuntu 9.10 và Windows 7.

Bất cứ khi nào GRUB được tải, menu hiển thị rất nhiều tùy chọn, ví dụ, các hạt nhân trong quá khứ, kiểm tra bộ nhớ và windows 7.

Tôi muốn làm cho menu này nhỏ hơn, vì tôi cần nhấn mũi tên xuống khoảng 6 lần để đi đến tùy chọn Windows 7. Tôi biết rằng GRUB là phiên bản 1.97 ~ beta4 và sau khi dành một chút thời gian trên trang web chính thức của Ubuntu, tôi vẫn không thể tìm ra cách thay đổi nó.


trùng lặp (không chính xác cùng một câu hỏi, nhưng câu trả lời sẽ áp dụng cho cả hai): superuser.com/questions/102692/iêu
quack quixote

Câu trả lời:


2

Câu trả lời dường như là:

  • Loại bỏ các hạt nhân cũ thông qua Synaptic và mục khởi động của chúng sẽ tự động bị xóa
  • Bạn có thể tiêu diệt các mục không liên quan khác bằng cách thực hiện các mục nhập của chúng trong /etc/grub.d/ không thể thực thi

Vì vậy, để thoát khỏi mục memtest, bạn sẽ chạy:

sudo chmod -x /etc/grub.d/20_memtest86+
  • Việc đọc /etc/grub.d/README của tôi là Grub xác định thứ tự các mục menu dựa trên số lượng hàng đầu của tên tệp của nó. Tôi không có bất kỳ hệ thống khởi động kép nào để xác minh điều này, nhưng Windows nên có tệp nhập riêng ở đây. Vì vậy, nếu bạn muốn giữ mục nhập memtest, nhưng trước tiên hãy hiển thị mục nhập Windows, bạn sẽ đổi tên các tệp để mục nhập Windows có thẻ số thấp hơn trên tên tệp
  • Sau khi bạn thực hiện các thay đổi của mình, hãy chạy update-grub tại CLI để cam kết chúng.

Câu trả lời được lấy từ hướng dẫn này đến Grub 2 tại Diễn đàn Ubuntu .


0

Chỉnh sửa tập tin /boot/grub/menu.lstdưới dạng root với trình soạn thảo văn bản yêu thích của bạn. Tìm phần trông giống như thế này:

  • title Debian
  • root (hd0,0)
  • kernel /vmlinuz-2.6.26-2-686 root=/dev/sda2 ro
  • initrd /initrd.img-2.6.26-2-686
  • title Debian (single-user mode)
  • root (hd0,0)
  • kernel /vmlinuz-2.6.26-2-686 root=/dev/sda2 ro single
  • initrd /initrd.img-2.6.26-2-686

Mỗi titletương ứng với một mục trên menu khởi động. Để vô hiệu hóa một mục, chỉ cần bình luận ra các dòng thích hợp. Vì vậy, để loại bỏ mục trong ví dụ của tôi ở trên có tên Debian (single user mode)tôi sẽ chỉnh sửa tệp để trông như thế này:

  • title Debian
  • root (hd0,0)
  • kernel /vmlinuz-2.6.26-2-686 root=/dev/sda2 ro
  • initrd /initrd.img-2.6.26-2-686
  • # title Debian (single-user mode)
  • # root (hd0,0)
  • # kernel /vmlinuz-2.6.26-2-686 root=/dev/sda2 ro single
  • # initrd /initrd.img-2.6.26-2-686

Làm điều này cho tất cả các mục bạn muốn ẩn khỏi menu khởi động. Để khôi phục một mục, chỉ cần loại bỏ #.

Chỉnh sửa: Chỉ bây giờ tôi mới nhận ra bạn đang sử dụng Grub 2. Xin lỗi về điều đó, những điều trên chỉ áp dụng cho Grub 1 (còn gọi là Grub Legacy). Trên Grub Wiki tôi đã tìm thấy cấu hình ví dụ grub.cfg này . Giải thích nó, bạn sẽ có thể nhận xét các mục thích hợp giống như tôi đã trình bày ở trên.

Chỉnh sửa

  • menuentry "My Linux Kernel on (hd0,1)" {
  • set root=(hd0,1)
  • linux /vmlinuz root=/dev/hda1
  • initrd /initrd
  • }
  • menuentry "Chainload my OS" {
  • set root=(hd0,3)
  • chainloader +1
  • }

vào

  • menuentry "Linux" {
  • set root=(hd0,1)
  • linux /vmlinuz root=/dev/hda1
  • initrd /initrd
  • }
  • # menuentry "Other OS" {
  • # set root=(hd0,3)
  • # chainloader +1
  • # }

Tôi nên làm việc . Xin lưu ý rằng tôi không biết liệu nó có hoạt động không và có thể gây hại theo một cách nào đó. Tiến hành thận trọng.


Anh ấy đang sử dụng GRUB2, chỉnh sửa menu.lst sẽ không thay đổi gì cả.
Bobby

thay đổi grub.cfg của Grub2 sẽ không tồn tại vĩnh viễn, vì nó được tạo tự động từ các tập lệnh trong /etc/grub.d , được chạy từ update-grub (thủ công hoặc tự động từ trình quản lý gói, ví dụ: khi cài đặt gói kernel mới) .
quack quixote
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.