– 31 –
tiếp sẽ dùng nhân 2.4.20 (nhân này chắc chắn phải làm việc được vì nó đã dùng để
biên dịch nhân 2.4.26).
•
Lệnh thứ nhì chỉ đơn giản ra lệnh cho máy khởi động lại.
•
Nếu dùng lệnh "
/sbin/lilo -R linux-x.xx.xx
" và khởi động vào nhân mới
thành công thì bạn cần chỉ định cho nhân x.xx.xx làm nhân mặc định rồi mới chạy
"
/sbin/lilo -v
" như đã nói ở trên (trong phần biến "
default
" của
lilo.conf
).
9.2 Các bước cài đặt bằng tay
Các bước cài đặt "bằng tay" tương tự như các bước "
make install
" ở trên nhưng được
thao tác "bằng tay". Thật ra quy trình này rất đơn giản, điều bạn cần lưu ý là phải thực
hiện chính xác để tránh những trở ngại trong bước này và trong giai đoạn khởi động vào
nhân mới.
9.2.1 Tạo initrd
Trường hợp bạn biên dịch các drivers quan trọng ở dạng modules có liên hệ đến quy
trình khởi động của Linux (như SCSI driver, RAID driver, các loại filesystem mà root
filesystem dùng như ext3, jbd...) thì chắc chắn bạn phải cần đến
initrd
. Mục đích
chính của
initrd
là tải sẵn các driver cần thiết cho nhân trong quá trình khởi động.
Nếu không muốn dùng
initrd
, bạn phải biên dịch các driver trực tiếp vào nhân
. Nên
chú ý một số bản phân phối Linux không dùng
initrd
. Họ khuyến khích biên dịch các
driver
liên hệ đến quy trình khởi động trực tiếp vào nhân. Muốn tham khảo thêm chi tiết
về RAM disk cho trường hợp này, xem <KERNEL SRC>/Documentation/ramdisk.txt.
Quy trình tạo
initrd
rất đơn giản, chỉ cần chạy lệnh:
# /sbin/mkinitrd /boot/initrd-<KERNEL_VERSION>.img <KERNEL_VERSION>
trong đó:
•
Tham số thứ nhất
/boot/initrd-<KERNEL_VERSION>.img
chỉ định cho hồ sơ và
thư mục chứa hồ sơ
initrd
. Thông thường
initrd
của nhân được chứa trong thư
mục
/boot
cùng với các thông tin và hồ sơ khác cần thiết cho quy trình khởi động.
•
Tham số
<KERNEL_VERSION>
thứ nhì chính là nhân nào bạn muốn tạo
initrd
cho nó. Tất nhiên thư mục chứa các modules cho phiên bản nhân này phải có trong
/lib/modules/
, nếu không bạn được system báo có lỗi.
INITial Ram Disk
hay còn gọi là static compile