Wi-Fi không hoạt động trên Lenovo ThinkPad E570 (Realtek RTL8821CE)


17

Chúng tôi vừa mua một chiếc Lenovo ThinkPad E570 (được cho là có Intel 8265 cho không dây). Máy tính xách tay này được mua một phần bởi vì nó được chứng nhận để chạy Ubuntu và như vậy với tôi ít nhất nó sẽ có ý nghĩa cho mọi thứ hoạt động tốt ... nhưng không có may mắn như vậy.

Đầu tiên, tôi đã cài đặt Ubuntu 17.10 và sau khi cài đặt, nhận ra Wi-Fi không hoạt động. Tôi cũng đã thử Ubuntu 16.04 từ ổ USB vì đó là phiên bản Ubuntu được chứng nhận, nhưng cũng không có may mắn.

Chip không dây không được phát hiện bởi lshw(hoặc thậm chí lspcibởi vẻ ngoài của nó), ip linkkhông hiển thị giao diện không dây và iwlwifimô-đun hạt nhân không được tải khi khởi động (Tôi có thể tự tải nó bằng cách sử dụng modprobe iwlwifinhưng điều này không làm cho Wi-Fi hoạt động) . Tôi nghĩ rằng đó là một con chip Wi-Fi / Bluetooth kết hợp và Bluetooth dường như hoạt động (hoặc ít nhất là Bluetooth hiển thị trong Gnome và rfkill list).

modinfo iwlwifi | grep 8265hiển thị cho tôi một tệp kết thúc bằng -34 được cho là đã tải nhưng chỉ có một tệp kết thúc bằng -33 (và một số số thấp hơn khác) có mặt /lib/firmware, nếu điều đó có ích).

Tôi cũng đã cài đặt kernel Linux 4.14.9 trong nỗ lực để mọi thứ hoạt động, nhưng điều này cũng không giải quyết được vấn đề.

Thêm thông tin

root@ThinkPad-E570:~# modinfo iwlwifi | grep 8265
firmware:       iwlwifi-8265-34.ucode
root@ThinkPad-E570:~# rfkill list all
0: tpacpi_bluetooth_sw: Bluetooth
    Soft blocked: no
    Hard blocked: no
1: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no
root@ThinkPad-E570:~# dmesg | grep iwl
root@ThinkPad-E570:~# lspci -nnk | grep 0280 -A3
05:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. Device [10ec:c821]
    Subsystem: Lenovo Device [17aa:c024]

Cập nhật

Tôi chỉ nhận thấy rằng máy tính xách tay hoàn toàn không có chip không dây Intel, nhưng thực tế là có Realtek ... điều đó có nghĩa là thông số kỹ thuật được trình bày trên trang sản phẩm của cửa hàng tôi đã mua máy tính xách tay này không chính xác ... Thở dài. Tuy nhiên, vấn đề tương tự cũng xảy ra với chip không dây crappier.


1
Đối với nhân viên Google trong tương lai, tôi muốn lưu ý rằng câu trả lời được chọn cũng hoạt động trên Linux Mint 19.1
LondonRob

Trang web của Lenovo chỉ định nó có thẻ WiFi Intel, vì vậy nếu bạn mua nó đã sử dụng, bạn sẽ gặp trường hợp chống lại cửa hàng. Xem các liên kết web được thêm ở trên để xác nhận.
K7AAY

1
Điều này làm việc cho tôi youtube.com/watch?v=vPfLVsyQU_A
Dagang

cảm ơn @Dagang, bạn đã lưu giờ của tôi Tôi đã thử nó trên lenovo ideapad 130 15ikb.
Hridaynath

Câu trả lời:


15

Đầu tiên, tôi sẽ đề xuất rằng các hướng dẫn này có nhiều khả năng hoạt động với Ubuntu 17.10. Nếu bạn hiện không chạy nó, tôi khuyên bạn nên cài đặt lại nó.

Nhấp vào liên kết này để tải xuống tệp trình điều khiển: https://minhaskamal.github.io/DownGit/#/home?url=https://github.com/endlessm/linux/tree/master/drivers/net/wantly/rtl8821ce

Trừ khi bạn đã chỉ định khác trong trình duyệt của mình, tải xuống sẽ vào thư mục Tải xuống . Mở một thiết bị đầu cuối và làm:

cd ~/Downloads
unzip rtl8821ce.zip
cd rtl8821ce
nano Makefile

Cuộn xuống dòng 152 và thay đổi dòng hiện đang đọc:

export TopDIR ?= $(srctree)/drivers/net/wireless/rtl8821ce

Đến giờ hãy đọc:

export TopDIR ?= $ ~/Downloads/rtl8821ce

Đọc kỹ, hai lần và lưu (Ctrl + o theo sau là Enter) và đóng (Ctrl + x) trình chỉnh sửa văn bản.

Bây giờ làm:

make
sudo make install
sudo modprobe 8821ce

Mạng không dây của bạn sẽ hoạt động.

EDIT: Bạn đã biên dịch mô-đun cho phiên bản kernel hiện đang chạy. Khi Trình quản lý cập nhật cung cấp phiên bản kernel mới hơn, được gọi là hình ảnh linux, sau khi khởi động lại được yêu cầu, bạn phải biên dịch lại:

cd rtl8821ce
make clean
make
sudo make install
sudo modprobe 8821ce

Hãy giữ lại các tập tin và các hướng dẫn cho thời gian đó.


Đây là những gì tôi đã tìm thấy ngày hôm qua và nó đã hoạt động :) Tuy nhiên, một điều tôi tò mò là liệu điều này có tiếp tục hoạt động trên các bản cập nhật kernel hay không.
RobinJ

Bắt rất tốt! Xin vui lòng xem chỉnh sửa của tôi ở trên trong một vài khoảnh khắc.
ớt555

Sau khi chỉnh sửa tập tin, tôi đã cố chạy lệnh make, nhưng nó báo lỗi. tôi chạy "make" trong thư mục "rtl8821ce", lỗi là / bin / sh: 1 cc: không tìm thấy. Bất kỳ ý tưởng . Là làm cho một tiện ích mặc định đi kèm với hệ điều hành?
BẮT ĐẦU THOMAS

@DILEEPTHOMAS Hãy bắt đầu câu hỏi mới của riêng bạn.
chili555

Đối với tôi chỉnh sửa các tập tin là không cần thiết. Chỉ cần tải về trình biên dịch cài đặt và kích hoạt mod khi đủ. Cảm ơn!!!
Diego Andrés Díaz Espinoza

15

Đây là phần tiếp theo câu trả lời của stason , người đề nghị sử dụng dkms .

Theo như tôi có thể nói, tại thời điểm viết bài này, vẫn chưa có Trình điều khiển Wifi cho Realtek RTL8821CE trong Kho lưu trữ Ubuntu chính thức.

Trên github có một kho lưu trữ với trình điều khiển RTL8821CE nhắm vào các hạt nhân 4.14 trở lên và đặc biệt dành cho Arch Linux mà không có hỗ trợ nào được cung cấp cho các Bản phân phối Linux khác: https://github.com/tomaspinho/rtl8821ce

(Lưu ý nhỏ: kể từ tháng 2 năm 2019, tomaspinho buồn bã không còn có thể duy trì trình điều khiển vì anh ta không còn có quyền truy cập vào máy tính với chipset này, và vì vậy có thể cần một người bảo trì mới , nhưng trình điều khiển vẫn hoạt động với Ubuntu 18.04 như tại thời điểm đó.)

Tuy nhiên, nó đã được báo cáo là chỉ hoạt động tốt với Ubuntu 18.04.

Sẽ cần kết nối internet tạm thời (chẳng hạn như cáp ethernet , USB wifi dongle hoặc kết nối điện thoại của bạn với cáp usb và ' kết nối ' nó để sử dụng Wifi điện thoại của bạn)

Các giải pháp được lấy trực tiếp từ bài # 4 bởi Praseodym (nhiều lời khen ngợi cho sự khôn ngoan của họ!): Https://ubuntuforums.org/showthread.php?t=2398917 và sẽ cài đặt một số gói cho việc xây dựng các mô-đun điều khiển wifi (git , DKMS, build-essential & linux-header) và bản sao các rtl8821ce kho git từ tomaspinho (nhiều lời khen ngợi cũng!).

DKMS được sử dụng vì đó là "một hệ thống sẽ tự động biên dịch lại và cài đặt một mô-đun hạt nhân khi một hạt nhân mới được cài đặt hoặc cập nhật."


Mở một thiết bị đầu cuối và nhập các dòng sau (Bạn có thể cắt và dán nếu bạn muốn):

sudo apt-get install --reinstall git dkms build-essential linux-headers-$(uname -r)
git clone https://github.com/tomaspinho/rtl8821ce
cd rtl8821ce
chmod +x dkms-install.sh
chmod +x dkms-remove.sh
sudo ./dkms-install.sh

Sau khi hoàn thành thành công, bạn nên khởi động lại và thấy rằng Wifi của bạn đang hoạt động.

Bạn cũng muốn chắc chắn SecureBootDisabled trong các thiết lập BIOS hoặc nó sẽ không cho phép bạn nạp kernel module tự tuân unsigned.


Tôi có thể xác nhận rằng bạn không cần phải tắt SecureBoot . Nếu bạn đã bật SecureBoot, chỉ cần làm theo các hướng dẫn trong sudo ./dkms-install.shvà nhập cùng một mật khẩu mà bạn sẽ chọn trong quá trình khởi động lại.
Niel de Wet

1
Đã làm cho tôi. Tiết kiệm thời gian của tôi.
Iftakharul Alam

Tuyệt diệu. Cảm ơn bạn. Điều này làm việc cho tôi.
Bác sĩ Xorile

có cùng một vấn đề ... nhưng tồi tệ nhất. idePadS145 không có ethernet vì vậy tôi thậm chí không thể cài đặt apt-get .. Làm thế nào có thể lấy mô-đun vừa được biên dịch cho kernel mặc định trong eon: 5.3.0-18-generic?
Nico Grunfeld

2

Cập nhật 2018-02-27

Xin lưu ý rằng trình điều khiển được đề xuất là dành cho hệ điều hành vô tận và do đó nó có thể bị hỏng bất cứ lúc nào. Nếu bất kỳ cơ quan nào có trình điều khiển chính thức cho Ubuntu thì sẽ tốt hơn.

Câu trả lời gốc

Đây không phải là một câu trả lời mới, sẽ là một nhận xét tốt hơn.

Vì vậy, tôi đã cố gắng làm theo câu trả lời @ chili555 nhưng tôi vẫn bị lỗi trong khi cố gắng tạo mô-đun.

Các lỗi như:

/rtl8821ce/include/osdep_service_linux.h:294:2: error: implicit declaration of function ‘timer_setup’; did you mean ‘ether_setup’?
[-Werror=implicit-function-declaration]
   timer_setup(ptimer, pfunc, 0);
   ^~~~~~~~~~~   ether_setup

Vì vậy, tôi đã thử tải xuống một bản sửa đổi khác ( liên kết tải xuống trực tiếp lưu trữ zip ) mà tại thời điểm trả lời ban đầu cũng có thể là chính. Sau đó, tôi đã có thể tạo mô-đun và cài đặt theo các bước được cung cấp bởi @ chili555


2

xây dựng / cài đặt dkms cho rtl8821ce có thể được tìm thấy ở đây: https://github.com/tomaspinho/rtl8821ce

Khi bạn sử dụng phương pháp đó, bạn sẽ không cần phải xây dựng lại mô-đun mỗi khi kernel được cập nhật.

Tôi vừa mới xây dựng nó trên Lenovo Idea 720s với kubfox 18.04.


Ngoài ra tôi khuyên bạn nên chỉnh sửa Makefile để thay đổi cấp độ nhật ký từ 4 (thông tin) thành 3 (cảnh báo). Nếu không, bạn sẽ thấy việc /var/log/sysloglấp đầy của mình với tốc độ điên cuồng với những tin nhắn thông tin vô dụng từ người lái xe.

Vì vậy, chỉnh sửa Makefile, để thay đổi:

CONFIG_RTW_LOG_LEVEL = 4

đến:

CONFIG_RTW_LOG_LEVEL = 3

và sau đó xây dựng và cài đặt mô-đun theo hướng dẫn. Nếu bạn đã cài đặt nó, bạn cần gỡ cài đặt (sử dụng dkms-remove.sh) và sau đó cài đặt lại.

Ngoài ra, bạn có thể tự thay đổi cấp độ nhật ký cho đến khi khởi động lại tiếp theo với:

echo 3 > /proc/net/rtl8821ce/log_level

cập nhật: nhà bảo trì đã thay đổi Makefile để phản ánh đề xuất này, vì vậy nếu bạn thực hiện kiểm tra / tải xuống mới, nó sẽ có cài đặt (yên tĩnh) phù hợp.


1

Một giải pháp cho lỗi hẹn giờ.

Tôi quản lý để làm cho nó hoạt động cho lenovo E570 của tôi với Ubuntu 16.04 và đây là các bước của tôi: Đầu tiên, tôi nâng cấp phiên bản kernel của mình lên 4.15.4 bằng cách sử dụng hướng dẫn

Tôi tin rằng bất kỳ phiên bản kernel nào trên 4.15.4 đều hoạt động vì tôi phải nâng cấp kernel của mình lên 4.15.9 một lần nữa. Lưu ý trình điều khiển cần phải được cài đặt lại.

Sau đó, tôi làm theo các bước được đề cập trong câu trả lời @ chili555


Bạn có ý nghĩa gì khi "cài đặt trình điều khiển"?
pim

Nó có nghĩa là bạn cần phải sudo thực hiện cài đặt lại. vui lòng cho tôi biết nếu nó hoạt động cho bạn và bạn đang sử dụng phiên bản kernel nào. Phương pháp này đã làm việc cho tôi trước đây, nhưng gần đây tôi đã phải cài đặt lại Ubuntu vài lần và nó đã ngừng hoạt động đối với tôi.
Juichung_Kuo

Chuỗi sau đây bao gồm một trình điều khiển thay thế cho 8821ce, liên kết và nó hoạt động trở lại với tôi
Juichung_Kuo 17/03/18

Tôi dường như có cùng một máy giống như bạn, chạy 16.04 LTS và dường như có cùng một vấn đề, nhưng không có bất kỳ thành công nào. Bạn có thể đăng bài, từng dòng một, chính xác những gì bạn đã làm để giúp bạn làm việc: Tôi dường như đi vòng tròn và tiếp tục nhìn thấy phía sau đầu của tôi. Arrrrgh. Cảm ơn.
Piloti

uh .. đã được một lúc và tôi không nhớ chính xác những gì tôi đã làm để sửa nó. Nhưng bạn đã kiểm tra liên kết tôi đã đăng ở trên vì nó chứa những lệnh tôi đã sử dụng. bạn cũng đã thử điều này: github.com/lwfinger/rtlwifi_new
Juichung_Kuo

0

tín dụng cho praseodym từ ubfoxusers.de cho hướng dẫn ngắn này bằng cách sử dụng dkms để cài đặt trình điều khiển vì sau khi thử một số biến thể đã trả lời, chỉ có điều này hoạt động với tôi trên debian 10 (buster) mới cài đặt:

sudo apt-get install --reinstall git dkms build-essential linux-headers-$(uname -r)
git clone https://github.com/tomaspinho/rtl8821ce
cd rtl8821ce
chmod +x dkms-install.sh
chmod +x dkms-remove.sh
sudo ./dkms-install.sh 

loại bỏ hoạt động theo cách này:

sudo ./dkms-remove.sh 

nó cũng được đề cập để cuối cùng vô hiệu hóa khởi động an toàn, ngay cả trước khi cài đặt os. không chắc chắn nếu điều này tạo ra sự khác biệt bởi vì tôi đang cần điều này trên "Máy tính để bàn HP Slimline (290-a0512ng)" đã khởi động an toàn bị tắt theo mặc định tôi đã kiểm tra / nhận thấy sau khi cài đặt os.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.