BIÊN DỊCH NHÂN LINUX - Trang 30

– 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

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

/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

9.2

) 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

22

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

22

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.