Hạt nhân mới nhất đang gây ra sự cố với âm thanh của tôi, hoạt động tốt với phiên bản cũ hơn. Vì tôi chỉ cài đặt Ubuntu, Grub không được hiển thị khi khởi động. Làm cách nào tôi có thể tự chọn phiên bản kernel trong khi khởi động?
Hạt nhân mới nhất đang gây ra sự cố với âm thanh của tôi, hoạt động tốt với phiên bản cũ hơn. Vì tôi chỉ cài đặt Ubuntu, Grub không được hiển thị khi khởi động. Làm cách nào tôi có thể tự chọn phiên bản kernel trong khi khởi động?
Câu trả lời:
Cách đơn giản nhất để hiển thị Grub của bạn là nhấn và giữ SHIFTnút trong khi khởi động.
Thay vào đó, bạn luôn có thể hiển thị Grub mà không cần khởi động bất kỳ kernel cụ thể nào:
gksudo gedit /etc/default/grub
thay đổi GRUB_TIMEOUT
thành -1 và nhận xétGRUB_HIDDEN_TIMEOUT
kết thúc bằng cách chạy
sudo update-grub
GRUB_HIDDEN_TIMEOUT
được định nghĩa trong/etc/default/grub
Giữ phím shift trong khi khởi động, sẽ hiển thị menu Grub. Bây giờ bạn có thể chọn một phiên bản kernel cũ hơn.
Để chọn kernel cũ làm kernel mặc định, vui lòng xem bài đăng này
Trong khi khởi động khi GRUB xuất hiện với các mục, hãy chọn mục thứ hai, tức là Tùy chọn nâng cao cho Ubuntu , bạn có thể thấy các phiên bản kernel cũ hơn đã được cài đặt trước đó, bạn có thể chọn một trong số chúng phù hợp với bạn. Nếu không, bạn vào grub.cfg và dán phiên bản kernel yêu cầu của bạn lên trên mục nhập kernel hiện được cài đặt. Trong cả hai cách nó hoạt động
Nếu bạn có một vài Kernels trong hệ thống, bạn có thể đặt thủ công phiên bản Kernel nào sẽ bắt đầu:
Khởi động lại PC của bạn bằng cách nhấn nút Shift để hiển thị GRUB sau khi BIOS sẽ khởi động. Bạn sẽ thấy một cái gì đó như: trang bắt đầu GRUB
Chọn "Tùy chọn nâng cao cho Ubuntu" và ghi nhớ chỉ mục của dòng menu này (số bắt đầu từ 0) Trên chỉ mục hình ảnh là 1
Chọn kernel cụ thể để khởi động và cũng ghi nhớ chỉ mục của dòng menu này (đếm bắt đầu từ 0) Trên chỉ mục hình ảnh của Kernel được chọn là 2
Hệ thống khởi động. Hành động này là cho một khởi động trên kernel cụ thể. Nếu bạn muốn bắt đầu từ Kernel cụ thể mọi lúc, bạn nên thực hiện các bước tiếp theo:
4.1. Mở và chỉnh sửa tệp cài đặt GRUB:
sudo nano /etc/default/grub
4.2. Tìm dòng GRUB_DEFAULT = ... (theo mặc định GRUB_DEFAULT = 0) và đặt trong đường dẫn menu trích dẫn đến Kernel cụ thể (Ghi chỉ mục menu từ bước 2 và 3). Trong hệ thống của tôi, chỉ số đầu tiên là 1 và thứ hai là 2. Tôi đặt thành GRUB_DEFAULT
GRUB_DEFAULT="1>2"
Lưu tập tin.
4.3. Cập nhật thông tin GRUB cho các thay đổi áp dụng:
sudo update-grub
4.4. Sau khi khởi động lại, bạn tự động khởi động trên Kernel bằng đường dẫn menu đã chọn. Một ví dụ trên máy của tôi 1 -> 2
4.5. Kiểm tra phiên bản Kernel sau khi khởi động lại:
uname -r
Bởi https://help.ubfox.com/community/Grub2 :
GRUB_HIDDEN_TIMEOUT = 0
Cài đặt này xác định thời lượng màn hình không có menu GRUB 2 sẽ được hiển thị. Trong khi màn hình trống, người dùng có thể nhấn bất kỳ phím nào để hiển thị menu.
Hành vi mặc định là ẩn menu nếu chỉ có một hệ điều hành. Nếu người dùng chỉ có Ubuntu muốn hiển thị menu, hãy đặt ký hiệu # ở đầu dòng này để tắt tính năng menu ẩn.
Hạ cấp hạt nhân: Cách hạ cấp hạt nhân vào ngày 11.10
Nâng cấp kernel: Làm cách nào tôi có thể nâng cấp kernel lên 3.1?
Vui lòng cài đặt kernel trước bằng lệnh sau:
sudo apt-get install linux-image-3.0.0-12-generic linux-headers-3.0.0-12-generic
Sau đó khởi động lại. Bạn sẽ được nhắc chọn kernel của bạn.
Ngay sau màn hình giật gân BIOS / UEFI trong khi khởi động, với BIOS, nhanh chóng nhấn và giữ Shiftphím, sẽ hiển thị menu GNU GRUB. (Nếu bạn thấy logo Ubuntu, bạn đã bỏ lỡ điểm bạn có thể vào menu GRUB.) Với UEFI nhấn (có thể vài lần) Escphím để vào menu GRUB. Đôi khi, màn hình giật gân của nhà sản xuất là một phần của bộ tải khởi động Windows, vì vậy khi bạn bật nguồn máy, nó sẽ chuyển thẳng đến màn hình GRUB, sau đó nhấn Shiftlà không cần thiết.
Từ màn hình GRUB, chọn Tùy chọn nâng cao cho Ubuntu và nhấn Enter.
Một màn hình màu tím mới sẽ xuất hiện hiển thị danh sách các hạt nhân. Sử dụng các phím và to để chọn mục nào được tô sáng. Nhấn Enter để khởi động kernel đã chọn, 'e' để chỉnh sửa các lệnh trước khi khởi động hoặc 'c' cho một dòng lệnh. Nhấn Esc để trở về menu trước.
Shift
chìa khóa để đưa ra grub ở vị trí đầu tiên.
Câu trả lời của Jackkobec mô tả một phương pháp xem grub.cfg
và cuộn qua mã nguồn để tìm số menu. Một cách dễ dàng hơn là với kịch bản này :
Grub Version: 2.02~beta2-36ubuntu3.22
┌───────────┤ Use arrow, page, home & end keys. Tab toggle option ├────────────┐
│ Menu No. ----------- Menu Name ----------- │
│ │
│ 1>3 Ubuntu, with Linux 4.15.0-55-generic ↑│
│ 1>6 Ubuntu, with Linux 4.15.0-54-generic ▒│
│ 1>9 Ubuntu, with Linux 4.14.134-0414134-generic ▒│
│ 1>12 Ubuntu, with Linux 4.14.120-0414120-generic ▮│
│ 1>15 Ubuntu, with Linux 4.14.114-0414114-generic ▒│
│ 1>18 Ubuntu, with Linux 4.14.110-0414110-generic ▒│
│ 1>21 Ubuntu, with Linux 4.14.98-041498-generic ▒│
│ 1>24 Ubuntu, with Linux 4.14.89-041489-generic ▒│
│ 1>27 Ubuntu, with Linux 4.14.78-041478-generic ▒│
│ 1>30 Ubuntu, with Linux 4.14.70-041470-generic ▒│
│ 1>33 Ubuntu, with Linux 4.4.0-157-generic ▒│
│ 1>36 Ubuntu, with Linux 3.16.60-031660-generic ▒│
│ 1>36 Ubuntu, with Linux 3.16.60-031660-generic ▒│
│ 2 Ubuntu 18.04.1 LTS (18.04) (on /dev/nvme0n1p10) ▒│
│ 3 Advanced options for Ubuntu 18.04.1 LTS (18.04) (on /dev/nvme0n1p10) ▒│
│ 3>0 Ubuntu (on /dev/nvme0n1p10) ↓│
│ │
│ │
│ [Display Grub Boot] Exit │
│ │
└──────────────────────────────────────────────────────────────────────────────┘
Lưu ý: Trong ví dụ này grub-menu.sh short
đã được sử dụng để gọi tập lệnh. Các short
tham số ngăn chặn những dòng này:
│ 1>10 Ubuntu, with Linux 4.14.134-0414134-generic (upstart) ▒│
│ 1>11 Ubuntu, with Linux 4.14.134-0414134-generic (recovery mode) ▒│
Sau khi cuộn qua các mục (bạn có thể sử dụng bánh xe cuộn chuột hoặc phím mũi tên) nhấn Escapeđể trở về dòng lệnh.
Nếu bạn nhấn Entercác lệnh liên kết grub cho mục nhập được hiển thị:
menuentry 'Ubuntu, with Linux 4.14.134-0414134-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.14.134-0414134-generic-advanced-b40b3925-70ef-447f-923e-1b05467c00e7' {
recordfail
savedefault
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root b40b3925-70ef-447f-923e-1b05467c00e7
else
search --no-floppy --fs-uuid --set=root b40b3925-70ef-447f-923e-1b05467c00e7
fi
echo 'Loading Linux 4.14.134-0414134-generic ...'
linux /boot/vmlinuz-4.14.134-0414134-generic root=UUID=b40b3925-70ef-447f-923e-1b05467c00e7 ro noplymouth fastboot acpiphp.disable=1 pcie_aspm=force vt.handoff=7 i915.fastboot=1 nopti nospectre_v2 nospec mem_sleep_default=deep
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-4.14.134-0414134-generic
}
Press <Enter> to continue
Một tập hợp các lệnh grub tồn tại cho mỗi mục menu. Các mục biên dịch được lưu trữ trong /boot/grub/grub.cfg
tập tin.
Trong ví dụ này, chúng tôi muốn số menu `1> 9> được đặt làm mặc định để chúng tôi sử dụng:
sudo -H gedit /etc/default/grub
và tìm dòng này:
GRUB_DEFAULT=0
và thay đổi nó thành này:
GRUB_DEFAULT="1>9"
Sau đó lưu tệp và chạy
sudo update-grub
Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
Tôi đã nhận xétGRUB_HIDDEN_TIMEOUT
và thiết lậpGRUB_TIMEOUT=0