– 28 –
9.1 Cài đặt với "
make install
"
Ít người dùng đến chức năng "
make install
" này vì một số bản phân phối không có
các tiện ích cần thiết để thực hiện trọn vẹn bước này. "
make install
" tiện lợi và an
toàn hơn cài bằng tay vì nó thao tác các bước cần thiết để thiết lập nhân mới trên hệ
thống. Các bước này bao gồm quy trình lưu trữ nhân cũ (trong thư mục
/boot
), copy
nhân mới, copy
System.map
mới, điều chỉnh boot loader configuration (
lilo.conf
hoặc
grub.conf
) và cập nhật boot loader.
Bước "
make install
" dựa trên hồ sơ
Makefile
và
install.sh
, một shell script
thuộc thư mục
./arch/$ARCH/boot
. Shell script
install.sh
"gọi" một số shell script
khác như
/sbin/installkernel
và
/sbin/new-kernel-pkg
, ngoài ra các shell
scripts
này còn dựa vào một binary có tên là "
grubby
" để tạo thông tin trong
grub.conf
nếu bạn dùng GRUB. Các shell scripts "
installkernel
" và "
new-kernel-install
"
thuộc gói
mkinitrd
của RedHat, các bản phân phối khác có những ứng dụng tương tự.
Nếu bản phân phối bạn dùng không có gói tương tự, bạn phải cài kernel bằng tay (phần
) hoặc tạo các script tương tự để thực hiện bước này. Trong khuôn khổ giới hạn của
bài viết, tôi không đi sâu vào vấn đề tạo các script tiện ích.
Để cài nhân Linux mới, bạn chỉ đơn giản chạy lệnh
make install
ở chế độ super user
từ trong thư mục chứa mã nguồn của nhân Linux kernel. Sau khi hoàn tất bước "
make
install
" bạn nên kiểm tra lại cấu hình của trình khởi động
trên máy và chạy các lệnh
tương ứng (nếu cần) để chỉnh định trình khởi động cho chính xác.
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