Biên dịch nhân Linux trên CentOS7

Compile Linux Kernel Centos7



Trong bài viết này, tôi sẽ chỉ cho bạn cách tải xuống nguồn nhân Linux mới nhất từ ​​trang web chính thức của nền tảng Linux , biên dịch nhân Linux từ nguồn và sử dụng nhân đã biên dịch trên CentOS 7. Hãy bắt đầu.

Kiểm tra nhân được sử dụng hiện tại:

Bạn có thể thấy từ ảnh chụp màn hình sau rằng tôi đang sử dụng CentOS 7.









Và phiên bản hạt nhân hiện tại là 3.10







Cài đặt các điều kiện tiên quyết:

Để biên dịch hạt nhân Linux mới nhất từ ​​nguồn trên CentOS 7, bạn phải có một công cụ xây dựng và một số gói khác được cài đặt trên hệ điều hành CentOS 7 của mình.

Trước khi bạn cài đặt bất kỳ thứ gì, hãy chạy lệnh sau để cập nhật bộ nhớ cache của gói:



$sudo yum makecache

Bây giờ bạn có thể cài đặt các trình biên dịch và thư viện cần thiết để biên dịch hạt nhân bằng lệnh sau:

$sudo cài đặt yumncurses-develchế tạo gcc bcopenssl-devel

Nhấn ‘y’ rồi nhấn để tiếp tục.

Các công cụ xây dựng nên được cài đặt.

Bây giờ bạn phải cài đặt gói elfutils. Chạy lệnh sau để cài đặt nó:

$sudo cài đặt yumelfutils-libelf-devel

Nhấn ‘y’ và nhấn để tiếp tục.

'Elfutils' nên được cài đặt.

Bây giờ bạn phải cài đặt rpm-build bằng lệnh sau:

$sudo cài đặt yumrpm-build

Nhấn ‘y’ rồi nhấn để tiếp tục.

Gói ‘rpm-build’ sẽ được cài đặt.

Tải xuống Nguồn nhân Linux:

Truy cập trang web chính thức của Linux Kernel tại https://www.kernel.org và bạn sẽ là trang sau.

Nhấp vào nút Hạt nhân ổn định mới nhất như được đánh dấu trên ảnh chụp màn hình bên dưới.

Trình duyệt của bạn sẽ nhắc bạn lưu tệp. Chỉ cần nhấp vào Lưu tệp và nhấp vào OK.

Quá trình tải xuống của bạn sẽ bắt đầu.


Biên dịch Kernel:

Sau khi quá trình tải xuống hoàn tất, hãy điều hướng đến thư mục bạn đã tải xuống tệp. Trong trường hợp của tôi, đó là thư mục Tải xuống trong thư mục HOME của người dùng của tôi.

$đĩa CD~/Tải xuống

Từ kết quả đầu ra của ‘ls’, bạn có thể thấy rằng tệp đã tải xuống là ‘linux-4.14.10.tar.xz’. Đó là một tệp tar được nén.

Bây giờ giải nén tệp tar đã nén bằng lệnh sau:

$nhựa đườngxvf linux-4.14.10.tar.xz

tar đang giải nén tệp nén.

Sau khi tệp được giải nén, bạn sẽ thấy cửa sổ sau.

Sau khi giải nén, bạn sẽ thấy một thư mục mới được đánh dấu màu đỏ trong ảnh chụp màn hình bên dưới. Điều hướng đến thư mục bằng lệnh sau.

$đĩa CDlinux-4.14.10

Nếu bạn chạy lệnh sau, bạn sẽ thấy danh sách các tệp cấu hình được sử dụng bởi các hạt nhân được cài đặt trên hệ thống của bạn. Bạn có thể chạy lệnh ‘uname -r’ để tìm một lệnh mà bạn cần. Tên tệp phải khớp với đầu ra của lệnh ‘uname -r’.

Sau đó sao chép tệp cấu hình vào thư mục linux-4.14.10 bằng lệnh sau:

$sudo cp -v /khởi động/config-3.10.0-693.el7.x86_64 .config

Bây giờ hãy chạy lệnh sau:

$chế tạomenuconfig

Bạn sẽ thấy cửa sổ sau. Đây là nơi bạn bật hoặc tắt một số tính năng nhân nhất định. Nếu bạn không biết phải làm gì ở đây, thì hãy để mặc định.

Khi bạn đã hoàn tất, hãy nhấn nút nhiều lần và chuyển đến như được hiển thị trong ảnh chụp màn hình bên dưới. Sau đó nhấn .

Sau đó nhấn lại.

Nhấn lại lần nữa.

Bây giờ điều hướng đến và nhấn

Tệp .config được cập nhật cho hạt nhân mới.

Trước khi bạn bắt đầu biên dịch hạt nhân mới, hãy đảm bảo rằng bạn có hơn 20GB dung lượng trống trên hệ thống tệp nơi bạn đang biên dịch hạt nhân.

Bạn có thể kiểm tra dung lượng bạn có sẵn bằng lệnh sau:

$df -NS

Bây giờ hãy chạy lệnh sau để bắt đầu quá trình biên dịch:

$chế tạorpm-pkg

Kernel nên được biên dịch tốt. Nó sẽ mất một thời gian dài.

Sau khi hoàn thành, bạn sẽ thấy cửa sổ sau. Một số tệp gói rpm đã được tạo trên thư mục chính của người dùng như bạn có thể thấy từ ảnh chụp màn hình.

Các tệp gói rpm được tạo.

Bây giờ bạn có thể chạy lệnh sau để cài đặt các gói rpm:

$sudovòng / phút-iUv~/rpmbuild/RPMS/x86_64/ *.rpm

Sau khi cài đặt xong, hãy chạy lệnh sau để khởi động lại máy tính của bạn.

$khởi động lại

Sau khi máy tính của bạn khởi động, bạn có thể chạy lệnh sau để kiểm tra phiên bản của hạt nhân mà bạn hiện đang sử dụng.

$uname -NS

Bạn sẽ thấy rằng đó là phiên bản bạn vừa cài đặt. Đối với tôi, nó là ‘4,14.10’.

Vì vậy, đó là cách bạn biên dịch hạt nhân mới nhất từ ​​nguồn và sử dụng nó trên CentOS 7. Cảm ơn bạn đã đọc bài viết này.