Cài đặt kernel PREEMPT-RT trên Ubuntu 22.04 LTS

Giới thiệu các phương pháp cài đặt PREEMPT-RT trên Ubuntu 22.04 LTS

Ubuntu 22.04 LTS hỗ trợ nhiều cách để triển khai nhân (kernel) thời gian thực PREEMPT-RT, phù hợp với nhu cầu sử dụng từ cơ bản đến nâng cao. Dưới đây là ba phương án phổ biến.

Phương pháp 1: Kích hoạt realtime-kernel thông qua Ubuntu Pro (khuyên dùng)

Ubuntu Pro cung cấp phiên bản kernel thời gian thực được hỗ trợ chính thức, đảm bảo tính ổn định và dễ dàng cập nhật.

  1. Cài đặt hệ điều hành chuẩn: Đảm bảo hệ thống đã chạy Ubuntu 22.04 LTS.
  2. Đăng ký tài khoản Ubuntu One:
    • Truy cập trang chủ Ubuntu Pro.
    • Tạo tài khoản và đăng ký gói dịch vụ miễn phí cho cá nhân (tối đa 5 máy).
  3. Kết nối thiết bị với dịch vụ:
    sudo pro attach <mã-token-cá-nhân>
  4. Bật gói realtime-kernel:
    sudo pro enable realtime-kernel
  5. Cài đặt gói kernel thời gian thực:
    sudo apt update && sudo apt install linux-realtime
  6. Khởi động lại hệ thống: Sau khi khởi động, chọn dòng "Ubuntu, with Linux realtime" trong menu GRUB.

Phương pháp 2: Cài đặt kernel RT từ kho phần mềm không cần đăng ký Pro

Nếu không muốn sử dụng Ubuntu Pro, bạn có thể cài đặt trực tiếp gói kernel đã được biên dịch sẵn từ kho APT.

  1. Cài đặt gói kernel thời gian thực:
    sudo apt install linux-image-rt-generic
  2. Khởi động lại: Vào GRUB và chọn kernel có nhãn generic-rt.

Phương pháp 3: Tự biên dịch kernel với bản vá PREEMPT-RT

Phương pháp này phù hợp nếu bạn cần tuỳ chỉnh sâu hoặc sử dụng phiên bản cụ thể của bản vá thời gian thực.

  1. Tạo thư mục làm việc:
    mkdir ~/build-rt-kernel && cd ~/build-rt-kernel
  2. Tải mã nguồn và bản vá:
    wget https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.15.96.tar.gz
    wget https://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt/5.15/patch-5.15.96-rt61.patch.xz
  3. Giải nén và áp dụng bản vá:
    tar -xzf linux-5.15.96.tar.gz
    xz -d patch-5.15.96-rt61.patch.xz
    cd linux-5.15.96
    patch -p1 < ../patch-5.15.96-rt61.patch
  4. Sao chép cấu hình hiện tại và cấu hình lại:
    cp /boot/config-$(uname -r) .config
    sudo apt install build-essential libncurses-dev libssl-dev bison flex libelf-dev
    make menuconfig

    Trong giao diện cấu hình, điều hướng đến General setup → Preemption Model và chọn Full Preemptible Kernel (RT).

  5. Biên dịch và cài đặt:
    make -j$(nproc)
    sudo make modules_install
    sudo make install
  6. Cập nhật GRUB và khởi động lại:
    sudo update-grub
    reboot

Lưu ý quan trọng sau khi cài đặt

  • Xung đột với trình điều khiển NVIDIA: Các driver proprietory của NVIDIA thường không tương thích với kernel RT. Khuyến nghị sử dụng trình điều khiển mở Nouveau hoặc kiểm tra tính tương thích trước khi triển khai.
  • Xác minh hoạt động của kernel RT: Sau khi khởi động, chạy lệnh sau để kiểm tra:
    uname -a
    Nếu kết quả hiển thị chứa chuỗi rt hoặc PREEMPT_RT, nghĩa là kernel đang hoạt động đúng.

Tùy theo yêu cầu về độ trễ, mức độ tùy biến và khả năng bảo trì, hãy lựa chọn phương pháp phù hợp nhất.

Thẻ: linux-kernel real-time ubuntu-22.04 preempt-rt ubuntu-pro

Đăng vào ngày 20 tháng 6 lúc 08:36