Khắc phục sự cố Wi-Fi Realtek RTL8821AU trên Ubuntu 24.04 bằng driver rtw88

❓ Vấn đề Sau khi nâng cấp lên Ubuntu 24.04, tôi gặp vấn đề với kết nối Wi-Fi: Máy khởi động xong thì không tự kết nối được Wi-Fi. Phải kết nối thủ công bằng tay mỗi lần (dù không cần nhập lại mật khẩu). Tốc độ kết nối rất chậm, và đôi khi mất ổn định. Qua lệnh lshw -C network, tôi phát hiện máy đang dùng USB Wi-Fi với chip Realtek RTL8821AU, sử dụng driver: ...

tháng 7 4, 2025

Driver trong Linux: Giao tiếp giữa Kernel Space và User Space

🧠 Kernel Space vs User Space – Driver hoạt động ở đâu trong Linux? Khi mới bắt đầu tìm hiểu hệ điều hành, mình từng nghĩ “ứng dụng chạy thì kernel xử lý” là đủ hiểu rồi. Nhưng khi đụng đến thiết bị, driver, và đặc biệt là Linux, thì hóa ra mọi thứ được chia rất rõ ràng thành hai “vùng thế giới”: User Space và Kernel Space. Vậy driver nằm ở đâu trong bức tranh này? Và ứng dụng thực sự giao tiếp với thiết bị như thế nào? ...

tháng 6 26, 2025

Quá trình load firmware của Driver trong Linux

Để các kernel module sử dụng được các firmware thì cần 2 điều kiện sau: Khi kernel được build, các tham số sau phải được bật (ENABLE) CONFIG_FW_LOADER : Cho phép load firmware CONFIG_EXTRA_FIRMWARE > CONFIG_EXTRA_FIRMWARE_DIR : Đường dẫn chưa các firmware. Các firmware phải được copy vào thư mục CONFIG_EXTRA_FIRMWARE_DIR đã set ở trên. Một số điều lưu ý liên quan đến firmware: Các firmware là binary(closed source) được cung cấp từ các nhà sản xuất thiết bị, nó không nằm trong luồng chính của kernel, được maintain ở địa chỉ sau: (http://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git)[http://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git] ...

tháng 9 5, 2016

Driver và Firmware trong Linux

Gần đây, khi tìm hiểu cách cài đặt driver cho USB Wifi, mình có tìm hiểu thêm về quá trình tạo nhân Linux. Đặc biệt, việc thiết lập cấu hình trước khi build tạo ảnh của kernel. Mình thấy ngoài Driver, tức là thành phần trung gian giữa ứng dụng và phần cứng, còn có 1 khái niệm nữa. Đó là Firmware. Bài này sẽ dịch lại trang, để hiểu qua về Firmware trong Linux Kernel. ...

tháng 8 29, 2016

Tìm Driver cho Linux

Trong quá trình tìm cách cài đặt driver cho bản build Raspberry PI sử dụng Yocto, mình có tìm hiểu driver trong Linux và tìm được cuốn sách Linux in A Nutshell (link tại đây ) của pro này. Chương 7, chương mà tác giả đặc biệt “tự hào”, nói về Customize một Linux Kernel. Trong chương này, tác giả cũng nói đến việc xác định các driver đang được sử dụng trên hệ thống hiện tại. ...

tháng 8 19, 2016

Một chút về Driver cho USB Device trong Linux

Trong loại bài dịch trước đây nói về USB, tôi có nhắc một chút đến việc load đúng driver thì phía Host làm thế nào? Như ta đã biết, khi một thiết bị USB được cắm vào máy (Host), phía Host sẽ thực hiện một loạt thao tác từ xác định nguồn (bus, hay self), lấy thông tin tốc độ, các thông tin về descriptor (thiết bị, giao diện, các Endpoint). Cuối cùng để sử dụng các tính năng chính mà thiết bị cung cấp, thì hệ điều hành phía Host, dù là Windows, hay Linux, hay MacOS sẽ phải load driver tương ứng với thiết bị. ...

tháng 8 15, 2016

Cài thêm driver usb-wifi adapter cho bản build Raspbery PI sử dụng Yocto Project

Như ta đã làm trong bài trước, sau khi thực hiện việc setup các biến môi trường bằng lệnh source, ta thực hiện build tạo image có có tên là rpi-basic-image thông qua lệnh: $bitbake rpi-basic-image Thực ra còn 2 image khác ta có thể build đó là rpi-hwup-image rpi-test-image. Ta có thể thấy 2 file bb cho 2 image ở thư mục meta-raspberrypi/recipes-core/images/. rpi-hwup-image : là image nhỏ nhất (có dịp sẽ thử) rpi-basic-image: là image ta vấn dùng đến bây giờ. rpi-test-image : là image dùng cho việc test. (có dịp sẽ thử) ...

tháng 8 11, 2016