9 Cài đặt nhân
9.1.1 Đối với GRUB
Ví dụ bạn có hai phiên bản nhân trên máy 2.4.20 (phiên bản đang chạy) và 2.4.26 (phiên bản vừa được biên dịch). Sau khi chạy "make install",grub.conf có nội dung như sau: default=1 timeout=20 splashimage=(hd0,0)/boot/grub/splash.xpm.gz title Linux (2.4.26) root (hd0,0)
kernel /boot/vmlinuz-2.4.26 ro root=/dev/hda1 initrd=/boot/initrd-2.4.26.img
title Linux (2.4.20) root (hd0,0)
kernel /boot/vmlinuz-2.4.20 ro root=/dev/hda1 initrd=/boot/initrd-2.4.20.img
boot loader
• Chi tiết cần chú ý là biếndefault. Trong ví dụ trên, bạn có hai nhân trong cấu hình GRUB cho các phiên bản 2.4.26 và 2.4.20. Nếu bạn muốn khởi động nhân 2.4.26 theo mặc định thì giá trị của default phải là 0 (grub đếm thứ tự các nhân từ 0). Khi chạy "make install", các tiện ích của "install" tự động đưa vào các chi tiết thuộc kernel mới vào cấu hình GRUB. Tuy nhiên, giá trị default vẫn giữ ở giá trị chỉ định cho nhân hiện đang hoạt động trên máy. Bạn cần chỉnh giá trị này để buộc trình khởi động tải lên phiên bản nhân mới. Một chi tiết hết sức quan trọng bạn cần chú ý là giá trị root (hdX,Y). Nếu GRUB đã được cài trong lúc cài đặt hệ thống từ CD và đã hoạt động hoàn chỉnh, bạn không nên thay đổi giá trị này. Giá trị này chỉ cần thay đổi nếu bạn thêm đĩa cứng và thay đổi các phân vùng23trên máy.
• sau khi chỉnh định và lưu trữgrub.conf thích hợp, bạn chỉ cần khởi động lại máy. Nếu bạn dùng GRUB làm trình khởi động thì công tác biên dịch lại nhân Linux hoàn thành ở đây.
• giải pháp phòng bị: trường hợp không thể boot vào nhân mới rất đơn giản nếu dùng GRUB làm trình khởi động. Bạn chỉ cần thêm một dòngfallback 1vào cấu hình
grub.conf là đủ. Tùy chọn này cho GRUB biết nếu dùng "default=0" để khởi động nhân mới nhất (2.4.26 trong ví dụ này) nhưng không thành công vì lý do nào đó thì thử khởi động lại với nhân cũ hơn (2.4.20). Xem thêm ở phần10nếu không thể khởi động được vào Linux vì trình khởi động bị hỏng.