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

– 38 –

11.2 Tải, xả và vá

Các miếng vá thường được nén ở hai dạng:

.gz

hoặc

.bz2

như gói mã nguồn. Bạn có

thể tùy chọn và có thể tải các miếng vá này về bất cứ nơi nào trên máy. Sau khi tải chúng
về, bạn có thể thực hiện quy trình tương tự như sau:

Giả định các bản vá được nén ở dạng

.bz2

, nơi chứa mã nguồn của nhân Linux ở

/usr/src

và thực tính của các miếng vá này đã được kiểm tra. Trong ví dụ này, giả định

phiên bản đang dùng trên máy là 2.4.20 và phiên bản cần được vá sẽ là 2.4.26.

Chuyển vào thư mục

/usr/src

:

$ cd /usr/src

xả nén các miếng vá ở dạng

.bz2

vào thư mục

/usr/src

. Lặp lại cho đến khi xả hết

các miếng vá:

$ tar xfvj /path/to/patch/patch-x.xx.xx ./

Dọn dẹp sạch sẽ mã nguồn nhân hiện có trên máy, giả định phiên bản mã nguồn hiện có
là 2.4.20:

$ cd ./kernel-2.4.20

$ make mrproper

Lưu một bản mã nguồn kernel 2.4.20 trong thư mục

/usr/src

đề phòng cho sự cố trong

quá trình vá (nếu bạn không lưu một bản mã nguồn nguyên thủy của nhân 2.4.20 trên
máy, hoặc bản mã nguồn 2.4.20 này cũng đã được vá trước đây).

$ tar cvf ../linux-2.4.20.tar ./

Vá các miếng vá theo đúng thứ tự và theo dõi bất cứ lỗi nào được báo:

$ patch -p1 < ../patch-2.4.21

$ patch -p1 < ../patch-2.4.22

$ patch -p1 < ../patch-2.4.23

$ patch -p1 < ../patch-2.4.24

$ patch -p1 < ../patch-2.4.25

$ patch -p1 < ../patch-2.4.26

hoặc thực hiện kiểu "lười" như sau: tạo một biến môi trường

PATCH

40

tạm thời chứa tên

các miếng vá theo đúng thứ tự, tách rời bằng khoảng trống

41

:

việc định nghĩa biến PATCH trong 2 dòng chỉ là thuận tiện khi dàn trang, tác giả dùng duy nhất 1 hàng.

40

Kết quả hoàn toàn như nhau.
space

41

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.