Làm thế nào để xây dựng một hạt nhân tùy chỉnh trên Ubuntu
Ý nghĩ biên dịch các hạt nhân của riêng bạn gây ra nỗi sợ hãi trong trái tim của những người dùng Linux mới. Nghe có vẻ đáng sợ, xây dựng phần quan trọng nhất của hệ thống của bạn từ đầu. Sự thật là, mặc dù, xây dựng hạt nhân Linux là thực sự dễ dàng.
Xây dựng hạt nhân Linux không yêu cầu lập trình. Một số lập trình viên giỏi nhất thế giới đã viết tất cả mã. Bạn chỉ cần chọn các tính năng mà bạn muốn và đặt tất cả lại với nhau.
Nhận phụ thuộc
Trước khi bạn chạm vào một hạt nhân, bạn cần những công cụ thích hợp để xây dựng nó. Sử dụng Apt để tải xuống từ kho lưu trữ của Ubuntu.
sudo apt install install git build-essential kernel-package fakeroot libncurses5-dev libssl-dev ccache
Lấy nguồn hạt nhân
Bây giờ bạn có thể lấy nguồn mà bạn muốn xây dựng. Tất cả các hạt nhân có sẵn từ kho lưu trữ Linux chính thức. Bạn có thể xem các bản phát hành ổn định mới nhất trong kho git của họ. Tại thời điểm bài viết này, phiên bản mới nhất là 4.11. Nhánh đó được liệt kê là linux-4.11.y, và đó là một nhánh sẽ được nhân bản với lệnh dưới đây.
cd ~ mkdir kernelbuild cd kernelbuild git clone -b linux-4.11.y git: //git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
Nó sẽ mất một thời gian để nhân bản hạt nhân, vì vậy hãy kiên nhẫn.
Thiết lập cho xây dựng của bạn
Bắt đầu thiết lập của bạn bằng cách thay đổi thư mục vào thư mục mới được nhân bản. Sau đó, sao chép cấu hình của hạt nhân hiện tại của bạn vào đó.
cd linux-ổn định cp / boot / config-`uname -r` .config
Bây giờ bạn phải điều chỉnh cấu hình cũ cho nhân mới.
có '' | làm cho oldconfig
Thông thường, tập lệnh sẽ hỏi bạn phải làm gì với mọi tính năng mới. Bằng cách này, chấp nhận các giá trị mặc định. Nếu bạn muốn được hỏi, chỉ cần sử dụng make oldconfig
.
Cấu hình hạt nhân
Bạn có thể để lại cấu hình của bạn theo cách của nó, và bạn có lẽ sẽ ổn thôi. Không có điểm trong việc xây dựng một hạt nhân tùy chỉnh nếu bạn sẽ không tùy chỉnh nó, mặc dù.
Để tùy chỉnh cấu hình của bạn, hãy mở make menuconfig
.
Một menu màu xanh sẽ mở ra với một danh sách các loại. Các danh mục đó chứa các tính năng mà bạn có thể chọn để xây dựng vào hạt nhân của bạn.
Ví dụ, nếu bạn thực sự muốn xây dựng hỗ trợ cho hệ thống tệp BTRFS trực tiếp vào hạt nhân và kích hoạt các tính năng khác, bạn hãy vào “Hệ thống tệp ->.” Sau đó, cuộn xuống đến nơi bạn thấy “Hỗ trợ hệ thống tập tin Btrfs”. Chọn tùy chọn mà bạn muốn và nhấn vào thanh Space. Thanh dấu cách Space giữa “M, ” “*, ” và trống. “M” biểu thị rằng tính năng sẽ được xây dựng như một mô-đun sẽ được tải nếu cần khi Ubuntu khởi động. “*” Nghĩa là tính năng sẽ được tích hợp vào hạt nhân và luôn được tải. Tập lệnh không bao gồm các tùy chọn trống trong sản phẩm cuối cùng.
Khi bạn đã thiết lập xong mọi thứ, hãy dọn dẹp thư mục.
Làm sạch
Bây giờ hạt nhân của bạn đã sẵn sàng để xây dựng.
Xây dựng gói hạt nhân
Có một phương pháp được sử dụng bởi Ubuntu để xây dựng hạt nhân của họ, nhưng nó buộc bạn phải sử dụng các kịch bản được viết cho các phiên bản cũ hơn. Đôi khi điều đó không sao; những người khác nó phá vỡ khủng khiếp. Vì vậy, nó thường tốt hơn để chỉ sử dụng các phương pháp Linux chung chung hơn với GNU thực hiện.
make -j `getconf _NPROCESSORS_ONLN` deb-pkg LOCALVERSION = -custom
Tất cả các dòng đó là biên dịch kernel thành các gói .deb bằng cách sử dụng lượng lõi CPU trên hệ thống của bạn cộng với một. Nó cũng thêm vào "tùy chỉnh" vào cuối phiên bản gói để phân biệt hạt nhân tùy chỉnh của bạn với người khác.
Lưu ý : có thể mất một giờ để biên dịch hạt nhân. Kiên nhẫn.
Cài đặt hạt nhân
Bạn sẽ tìm thấy các gói hạt nhân mới của bạn một thư mục. Họ sẽ dễ dàng nhận dạng được bằng số phiên bản của họ. Bạn có thể sử dụng dpkg
để cài đặt chúng.
cd .. sudo dpkg -i linux-firmware-image-4.11.1-custom_4.11.1-custom-1_amd64.deb sudo dpkg -i linux-libc-dev_4.11.1-custom-1_amd64.deb sudo dpkg -i linux-tiêu đề -4.11.1-custom_4.11.1-custom-1_amd64.deb sudo dpkg -i linux-image-4.11.1-custom-dbg_4.11.1-custom-1_amd64.deb sudo dpkg -i linux-image-4.11.1-custom_4 .11.1-custom-1_amd64.deb
Khi quá trình cài đặt kết thúc, hãy khởi động lại máy tính của bạn. Ubuntu sẽ tự động khởi động vào hạt nhân mới của bạn. Bạn có thể kiểm tra kỹ xem nó có hoạt động không bằng cách chạy uname -r
trong terminal khi nó khởi động. Nếu bạn thấy phiên bản của bạn, xin chúc mừng! Bạn đang chạy hạt nhân riêng của mình.