Мы только что купили Lenovo ThinkPad E570 (который должен иметь Intel 8265 для беспроводной связи). Этот ноутбук был куплен отчасти потому, что он сертифицирован для запуска Ubuntu и, как таковой, по крайней мере, мне было бы разумно, что все будет работать из коробки ... но нет такой удачи.
Во-первых, я установлен Ubuntu 17.10, а после установки Wi-Fi не работал. Я также пробовал Ubuntu 16.04 с USB-накопителя, так как это версия Ubuntu, для которой она сертифицирована, но там тоже не повезло.
Беспроводной чип не обнаружен lshw (или даже lspci по внешнему виду он), ip link не показывает беспроводной интерфейс, а модуль ядра iwlwifi не загружается при загрузке (я могу загрузить это самостоятельно, используя modprobe iwlwifi, но это не делает работу Wi-Fi). Я думаю, что это комбинированный чип Wi-Fi / Bluetooth, и Bluetooth действительно работает (или, по крайней мере, Bluetooth появляется в Gnome и rfkill list).
modinfo iwlwifi | grep 8265 показывает мне файл, заканчивающийся на -34 предположительно загружен, но только файл, заканчивающийся на -33 (и некоторые другие более низкие номера), присутствует в /lib/firmware, если это помогает).
Я также установил ядро Linux 4.14.9 в попытке
Любая помощь была бы оценена ...
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]
Я только заметил, что у ноутбука нет беспроводного чипа Intel вообще, но на самом деле есть Realtek ... что означает, что спецификации, представленные на странице продукта в магазине, я купил этот ноутбук у не были точны ... Вздох. Тем не менее, одна и та же проблема стоит только с чипом беспроводной сети crappier.
Во-первых, я бы предположил, что эти инструкции с большей вероятностью будут работать с Ubuntu 17.10. Если вы сейчас его не используете, я предлагаю вам его повторно установить.
Нажмите эту ссылку, чтобы загрузить файл драйвера: https://minhaskamal.github.io/DownGit/#/home? url = https: //github.com/endlessm/linux/tree/master/drivers/net/wireless/rtl8821ce
Если вы не указали иное в своем браузере, загрузите его в каталог «Загрузки». Откройте терминал и выполните:
cd ~/Downloads
unzip rtl8821ce.zip
cd rtl8821ce
nano Makefile
Прокрутите вниз до строки 152 и измените строку, которая теперь читается:
export TopDIR ?= $(srctree)/drivers/net/wireless/rtl8821ce
Теперь читайте:
export TopDIR ?= $ ~/Downloads/rtl8821ce
Корректировка тщательно, дважды и сохранить (Ctrl + o, а затем Enter) и закрыть (Ctrl + x) текстовый редактор.
Теперь выполните:
make
sudo make install
sudo modprobe 8821ce
Ваш беспроводная связь должна работать.
EDIT: Вы собрали модуль только для текущей версии ядра. Если после запрошенной перезагрузки Update Manager предлагает более позднюю версию ядра, известную как linux-image, вы должны перекомпилировать:
cd rtl8821ce
make clean
make
sudo make install
sudo modprobe 8821ce
Сохраните файл и эти инструкции за это время.
Во-первых, я бы предположил, что эти инструкции с большей вероятностью будут работать с Ubuntu 17.10. Если вы сейчас его не используете, я предлагаю вам его повторно установить.
Нажмите эту ссылку, чтобы загрузить файл драйвера: https://minhaskamal.github.io/DownGit/#/home? url = https: //github.com/endlessm/linux/tree/master/drivers/net/wireless/rtl8821ce
Если вы не указали иное в своем браузере, загрузите его в каталог «Загрузки». Откройте терминал и выполните:
cd ~/Downloads
unzip rtl8821ce.zip
cd rtl8821ce
nano Makefile
Прокрутите вниз до строки 152 и измените строку, которая теперь читается:
export TopDIR ?= $(srctree)/drivers/net/wireless/rtl8821ce
Теперь читайте:
export TopDIR ?= $ ~/Downloads/rtl8821ce
Корректировка тщательно, дважды и сохранить (Ctrl + o, а затем Enter) и закрыть (Ctrl + x) текстовый редактор.
Теперь выполните:
make
sudo make install
sudo modprobe 8821ce
Ваш беспроводная связь должна работать.
EDIT: Вы собрали модуль только для текущей версии ядра. Если после запрошенной перезагрузки Update Manager предлагает более позднюю версию ядра, известную как linux-image, вы должны перекомпилировать:
cd rtl8821ce
make clean
make
sudo make install
sudo modprobe 8821ce
Сохраните файл и эти инструкции за это время.
Во-первых, я бы предположил, что эти инструкции с большей вероятностью будут работать с Ubuntu 17.10. Если вы сейчас его не запускаете, я предлагаю вам его повторно установить.
Нажмите эту ссылку, чтобы загрузить файл драйвера: https://minhaskamal.github.io/DownGit/# /home?url=https://github.com/endlessm/linux/tree/master/drivers/net/wireless/rtl8821ce
Если вы не указали иначе в своем браузере, загрузите go в каталог Загрузки . Откройте терминал и выполните:
cd ~/Downloads
unzip rtl8821ce.zip
cd rtl8821ce
nano Makefile
Прокрутите вниз до строки 152 и измените строку, которая теперь читается:
export TopDIR ?= $(srctree)/drivers/net/wireless/rtl8821ce
Теперь читайте:
export TopDIR ?= $ ~/Downloads/rtl8821ce
Корректируйте внимательно, дважды и сохраните (Ctrl + o, затем Enter) и закройте (Ctrl + x) текстовый редактор.
Теперь выполните:
make
sudo make install
sudo modprobe 8821ce
Ваш беспроводная связь должна теперь работать.
EDIT: вы собрали модуль только для текущей версии ядра. Когда Update Manager предлагает более позднюю версию ядра, известную как linux-образ, после запрошенной перезагрузки, вы должны перекомпилировать:
cd rtl8821ce
make clean
make
sudo make install
sudo modprobe 8821ce
Сохраните файл и эти инструкции за это время.
Во-первых, я бы предположил, что эти инструкции с большей вероятностью будут работать с Ubuntu 17.10. Если вы сейчас его не запускаете, я предлагаю вам его повторно установить.
Нажмите эту ссылку, чтобы загрузить файл драйвера: https://minhaskamal.github.io/DownGit/# /home?url=https://github.com/endlessm/linux/tree/master/drivers/net/wireless/rtl8821ce
Если вы не указали иначе в своем браузере, загрузите go в каталог Загрузки . Откройте терминал и выполните:
cd ~/Downloads
unzip rtl8821ce.zip
cd rtl8821ce
nano Makefile
Прокрутите вниз до строки 152 и измените строку, которая теперь читается:
export TopDIR ?= $(srctree)/drivers/net/wireless/rtl8821ce
Теперь читайте:
export TopDIR ?= $ ~/Downloads/rtl8821ce
Корректируйте внимательно, дважды и сохраните (Ctrl + o, затем Enter) и закройте (Ctrl + x) текстовый редактор.
Теперь выполните:
make
sudo make install
sudo modprobe 8821ce
Ваш беспроводная связь должна теперь работать.
EDIT: вы собрали модуль только для текущей версии ядра. Когда Update Manager предлагает более позднюю версию ядра, известную как linux-образ, после запрошенной перезагрузки, вы должны перекомпилировать:
cd rtl8821ce
make clean
make
sudo make install
sudo modprobe 8821ce
Сохраните файл и эти инструкции за это время.
Во-первых, я бы предположил, что эти инструкции с большей вероятностью будут работать с Ubuntu 17.10. Если вы сейчас его не запускаете, я предлагаю вам его повторно установить.
Нажмите эту ссылку, чтобы загрузить файл драйвера: https://minhaskamal.github.io/DownGit/# /home?url=https://github.com/endlessm/linux/tree/master/drivers/net/wireless/rtl8821ce
Если вы не указали иначе в своем браузере, загрузите go в каталог Загрузки . Откройте терминал и выполните:
cd ~/Downloads
unzip rtl8821ce.zip
cd rtl8821ce
nano Makefile
Прокрутите вниз до строки 152 и измените строку, которая теперь читается:
export TopDIR ?= $(srctree)/drivers/net/wireless/rtl8821ce
Теперь читайте:
export TopDIR ?= $ ~/Downloads/rtl8821ce
Корректируйте внимательно, дважды и сохраните (Ctrl + o, затем Enter) и закройте (Ctrl + x) текстовый редактор.
Теперь выполните:
make
sudo make install
sudo modprobe 8821ce
Ваш беспроводная связь должна теперь работать.
EDIT: вы собрали модуль только для текущей версии ядра. Когда Update Manager предлагает более позднюю версию ядра, известную как linux-образ, после запрошенной перезагрузки, вы должны перекомпилировать:
cd rtl8821ce
make clean
make
sudo make install
sudo modprobe 8821ce
Сохраните файл и эти инструкции за это время.
Во-первых, я бы предположил, что эти инструкции с большей вероятностью будут работать с Ubuntu 17.10. Если вы сейчас его не запускаете, я предлагаю вам его повторно установить.
Нажмите эту ссылку, чтобы загрузить файл драйвера: https://minhaskamal.github.io/DownGit/# /home?url=https://github.com/endlessm/linux/tree/master/drivers/net/wireless/rtl8821ce
Если вы не указали иначе в своем браузере, загрузите go в каталог Загрузки . Откройте терминал и выполните:
cd ~/Downloads
unzip rtl8821ce.zip
cd rtl8821ce
nano Makefile
Прокрутите вниз до строки 152 и измените строку, которая теперь читается:
export TopDIR ?= $(srctree)/drivers/net/wireless/rtl8821ce
Теперь читайте:
export TopDIR ?= $ ~/Downloads/rtl8821ce
Корректируйте внимательно, дважды и сохраните (Ctrl + o, затем Enter) и закройте (Ctrl + x) текстовый редактор.
Теперь выполните:
make
sudo make install
sudo modprobe 8821ce
Ваш беспроводная связь должна теперь работать.
EDIT: вы собрали модуль только для текущей версии ядра. Когда Update Manager предлагает более позднюю версию ядра, известную как linux-образ, после запрошенной перезагрузки, вы должны перекомпилировать:
cd rtl8821ce
make clean
make
sudo make install
sudo modprobe 8821ce
Сохраните файл и эти инструкции за это время.
Во-первых, я бы предположил, что эти инструкции с большей вероятностью будут работать с Ubuntu 17.10. Если вы сейчас его не запускаете, я предлагаю вам его повторно установить.
Нажмите эту ссылку, чтобы загрузить файл драйвера: https://minhaskamal.github.io/DownGit/# /home?url=https://github.com/endlessm/linux/tree/master/drivers/net/wireless/rtl8821ce
Если вы не указали иначе в своем браузере, загрузите go в каталог Загрузки . Откройте терминал и выполните:
cd ~/Downloads
unzip rtl8821ce.zip
cd rtl8821ce
nano Makefile
Прокрутите вниз до строки 152 и измените строку, которая теперь читается:
export TopDIR ?= $(srctree)/drivers/net/wireless/rtl8821ce
Теперь читайте:
export TopDIR ?= $ ~/Downloads/rtl8821ce
Корректируйте внимательно, дважды и сохраните (Ctrl + o, затем Enter) и закройте (Ctrl + x) текстовый редактор.
Теперь выполните:
make
sudo make install
sudo modprobe 8821ce
Ваш беспроводная связь должна теперь работать.
EDIT: вы собрали модуль только для текущей версии ядра. Когда Update Manager предлагает более позднюю версию ядра, известную как linux-образ, после запрошенной перезагрузки, вы должны перекомпилировать:
cd rtl8821ce
make clean
make
sudo make install
sudo modprobe 8821ce
Сохраните файл и эти инструкции за это время.
Во-первых, я бы предположил, что эти инструкции с большей вероятностью будут работать с Ubuntu 17.10. Если вы сейчас его не запускаете, я предлагаю вам его повторно установить.
Нажмите эту ссылку, чтобы загрузить файл драйвера: https://minhaskamal.github.io/DownGit/# /home?url=https://github.com/endlessm/linux/tree/master/drivers/net/wireless/rtl8821ce
Если вы не указали иначе в своем браузере, загрузите go в каталог Загрузки . Откройте терминал и выполните:
cd ~/Downloads
unzip rtl8821ce.zip
cd rtl8821ce
nano Makefile
Прокрутите вниз до строки 152 и измените строку, которая теперь читается:
export TopDIR ?= $(srctree)/drivers/net/wireless/rtl8821ce
Теперь читайте:
export TopDIR ?= $ ~/Downloads/rtl8821ce
Корректируйте внимательно, дважды и сохраните (Ctrl + o, затем Enter) и закройте (Ctrl + x) текстовый редактор.
Теперь выполните:
make
sudo make install
sudo modprobe 8821ce
Ваш беспроводная связь должна теперь работать.
EDIT: вы собрали модуль только для текущей версии ядра. Когда Update Manager предлагает более позднюю версию ядра, известную как linux-образ, после запрошенной перезагрузки, вы должны перекомпилировать:
cd rtl8821ce
make clean
make
sudo make install
sudo modprobe 8821ce
Сохраните файл и эти инструкции за это время.
Во-первых, я бы предположил, что эти инструкции с большей вероятностью будут работать с Ubuntu 17.10. Если вы сейчас его не запускаете, я предлагаю вам его повторно установить.
Нажмите эту ссылку, чтобы загрузить файл драйвера: https://minhaskamal.github.io/DownGit/# /home?url=https://github.com/endlessm/linux/tree/master/drivers/net/wireless/rtl8821ce
Если вы не указали иначе в своем браузере, загрузите go в каталог Загрузки . Откройте терминал и выполните:
cd ~/Downloads
unzip rtl8821ce.zip
cd rtl8821ce
nano Makefile
Прокрутите вниз до строки 152 и измените строку, которая теперь читается:
export TopDIR ?= $(srctree)/drivers/net/wireless/rtl8821ce
Теперь читайте:
export TopDIR ?= $ ~/Downloads/rtl8821ce
Корректируйте внимательно, дважды и сохраните (Ctrl + o, затем Enter) и закройте (Ctrl + x) текстовый редактор.
Теперь выполните:
make
sudo make install
sudo modprobe 8821ce
Ваш беспроводная связь должна теперь работать.
EDIT: вы собрали модуль только для текущей версии ядра. Когда Update Manager предлагает более позднюю версию ядра, известную как linux-образ, после запрошенной перезагрузки, вы должны перекомпилировать:
cd rtl8821ce
make clean
make
sudo make install
sudo modprobe 8821ce
Сохраните файл и эти инструкции за это время.
Обратите внимание, что предлагаемый драйвер предназначен для Endless OS, и поэтому он может сломаться в любой момент. Если у какого-либо органа есть официальный драйвер для Ubuntu, это будет лучше.
Это не новый ответ, было бы лучше комментарий.
Итак, я попытался ответить на @ chili555, но я продолжал получать ошибки, пока пытаясь сделать модуль.
Ошибки вроде:
/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
Итак, я попробовал загрузить другую Endless OS (прямую ссылку на zip-архив), которая время оригинального ответа может быть и мастером. Затем я смог сделать модуль и установить следующие шаги, предоставленные @ chili555
Решение для ошибки таймера.
Мне удалось заставить его работать для моего lenovo E570 с помощью ubuntu 16.04 и вот мои шаги: во-первых, я обновляю версию ядра до 4.15.4 с помощью этого руководства
Я считаю, что любая версия ядра выше 4.15.4 должна работать, потому что мне пришлось снова обновить мое ядро до 4.15.9. Обратите внимание, что драйвер необходимо переустановить.
Затем я выполнил шаги, указанные в ответах @ chili555
Обратите внимание, что предлагаемый драйвер предназначен для Endless OS, и поэтому он может сломаться в любой момент. Если у какого-либо органа есть официальный драйвер для Ubuntu, это будет лучше.
Это не новый ответ, было бы лучше комментарий.
Итак, я попытался ответить на @ chili555, но я продолжал получать ошибки, пока пытаясь сделать модуль.
Ошибки вроде:
/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
Итак, я попробовал загрузить другую Endless OS (прямую ссылку на zip-архив), которая время оригинального ответа может быть и мастером. Затем я смог сделать модуль и установить следующие шаги, предоставленные @ chili555
Решение для ошибки таймера.
Мне удалось заставить его работать для моего lenovo E570 с помощью ubuntu 16.04 и вот мои шаги: во-первых, я обновляю версию ядра до 4.15.4 с помощью этого руководства
Я считаю, что любая версия ядра выше 4.15.4 должна работать, потому что мне пришлось снова обновить мое ядро до 4.15.9. Обратите внимание, что драйвер необходимо переустановить.
Затем я выполнил шаги, указанные в ответах @ chili555
Обратите внимание, что предлагаемый драйвер предназначен для Endless OS , и поэтому он может сломаться в любой точке. Если у какого-либо органа есть официальный драйвер для Ubuntu, это будет лучше.
Это не новый ответ, было бы лучше комментарий.
Итак, я попытался ответить на @ chili555, но я продолжал получать ошибки, пока пытаясь сделать модуль.
Ошибки вроде:
/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
Итак, я попробовал загрузить другую версию ( zip archive direct download link ), который к моменту первоначального ответа может быть и мастером. Затем я смог сделать модуль и установить следующие шаги, предоставленные @ chili555
Решение для ошибки таймера.
Мне удалось заставить его работать для моего lenovo E570 с помощью ubuntu 16.04 и вот мои шаги: во-первых, я обновляю версию ядра до 4.15.4 с помощью этого guide
Я полагаю, что любая версия ядра выше 4.15.4 должна работать, потому что мне пришлось снова обновить мое ядро до 4.15.9. Обратите внимание, что драйвер необходимо переустановить.
Затем я выполнил шаги, упомянутые в ответах @ chili555
Обратите внимание, что предлагаемый драйвер предназначен для Endless OS , и поэтому он может сломаться в любой точке. Если у какого-либо органа есть официальный драйвер для Ubuntu, это будет лучше.
Это не новый ответ, было бы лучше комментарий.
Итак, я попытался ответить на @ chili555, но я продолжал получать ошибки, пока пытаясь сделать модуль.
Ошибки вроде:
/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
Итак, я попробовал загрузить другую версию ( zip archive direct download link ), который к моменту первоначального ответа может быть и мастером. Затем я смог сделать модуль и установить следующие шаги, предоставленные @ chili555
Решение для ошибки таймера.
Мне удалось заставить его работать для моего lenovo E570 с помощью ubuntu 16.04 и вот мои шаги: во-первых, я обновляю версию ядра до 4.15.4 с помощью этого guide
Я полагаю, что любая версия ядра выше 4.15.4 должна работать, потому что мне пришлось снова обновить мое ядро до 4.15.9. Обратите внимание, что драйвер необходимо переустановить.
Затем я выполнил шаги, упомянутые в ответах @ chili555
Обратите внимание, что предлагаемый драйвер предназначен для Endless OS , и поэтому он может сломаться в любой точке. Если у какого-либо органа есть официальный драйвер для Ubuntu, это будет лучше.
Это не новый ответ, было бы лучше комментарий.
Итак, я попытался ответить на @ chili555, но я продолжал получать ошибки, пока пытаясь сделать модуль.
Ошибки вроде:
/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
Итак, я попробовал загрузить другую версию ( zip archive direct download link ), который к моменту первоначального ответа может быть и мастером. Затем я смог сделать модуль и установить следующие шаги, предоставленные @ chili555
Решение для ошибки таймера.
Мне удалось заставить его работать для моего lenovo E570 с помощью ubuntu 16.04 и вот мои шаги: во-первых, я обновляю версию ядра до 4.15.4 с помощью этого guide
Я полагаю, что любая версия ядра выше 4.15.4 должна работать, потому что мне пришлось снова обновить мое ядро до 4.15.9. Обратите внимание, что драйвер необходимо переустановить.
Затем я выполнил шаги, упомянутые в ответах @ chili555
Обратите внимание, что предлагаемый драйвер предназначен для Endless OS , и поэтому он может сломаться в любой точке. Если у какого-либо органа есть официальный драйвер для Ubuntu, это будет лучше.
Это не новый ответ, было бы лучше комментарий.
Итак, я попытался ответить на @ chili555, но я продолжал получать ошибки, пока пытаясь сделать модуль.
Ошибки вроде:
/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
Поэтому я попытался загрузить другую версию ( zip archive direct download link ), который к моменту первоначального ответа может быть и мастером. Затем я смог сделать модуль и установить следующие шаги, предоставленные @ chili555
Решение для ошибки таймера.
Мне удалось заставить его работать для моего lenovo E570 с помощью ubuntu 16.04 и вот мои шаги: во-первых, я обновляю версию ядра до 4.15.4 с помощью этого guide
Я полагаю, что любая версия ядра выше 4.15.4 должна работать, потому что мне пришлось снова обновить мое ядро до 4.15.9. Обратите внимание, что драйвер необходимо переустановить.
Затем я выполнил шаги, упомянутые в ответах @ chili555
Обратите внимание, что предлагаемый драйвер предназначен для Endless OS , и поэтому он может сломаться в любой точке. Если у какого-либо органа есть официальный драйвер для Ubuntu, это будет лучше.
Это не новый ответ, было бы лучше комментарий.
Итак, я попытался ответить на @ chili555, но я продолжал получать ошибки, пока пытаясь сделать модуль.
Ошибки вроде:
/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
Поэтому я попытался загрузить другую версию ( zip archive direct download link ), который к моменту первоначального ответа может быть и мастером. Затем я смог сделать модуль и установить следующие шаги, предоставленные @ chili555
Решение для ошибки таймера.
Мне удалось заставить его работать для моего lenovo E570 с помощью ubuntu 16.04 и вот мои шаги: во-первых, я обновляю версию ядра до 4.15.4 с помощью этого guide
Я полагаю, что любая версия ядра выше 4.15.4 должна работать, потому что мне пришлось снова обновить мое ядро до 4.15.9. Обратите внимание, что драйвер необходимо переустановить.
Затем я выполнил шаги, упомянутые в ответах @ chili555
Обратите внимание, что предлагаемый драйвер предназначен для Endless OS , и поэтому он может сломаться в любой точке. Если у какого-либо органа есть официальный драйвер для Ubuntu, это будет лучше.
Это не новый ответ, было бы лучше комментарий.
Итак, я попытался ответить на @ chili555, но я продолжал получать ошибки, пока пытаясь сделать модуль.
Ошибки вроде:
/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
Итак, я попробовал загрузить другую версию ( zip archive direct download link ), который к моменту первоначального ответа может быть и мастером. Затем я смог сделать модуль и установить следующие шаги, предоставленные @ chili555
Решение для ошибки таймера.
Мне удалось заставить его работать для моего lenovo E570 с помощью ubuntu 16.04 и вот мои шаги: во-первых, я обновляю версию ядра до 4.15.4 с помощью этого guide
Я полагаю, что любая версия ядра выше 4.15.4 должна работать, потому что мне пришлось снова обновить мое ядро до 4.15.9. Обратите внимание, что драйвер необходимо переустановить.
Затем я выполнил шаги, упомянутые в ответах @ chili555
Обратите внимание, что предлагаемый драйвер предназначен для Endless OS , и поэтому он может сломаться в любой точке. Если у какого-либо органа есть официальный драйвер для Ubuntu, это будет лучше.
Это не новый ответ, было бы лучше комментарий.
Итак, я попытался ответить на @ chili555, но я продолжал получать ошибки, пока пытаясь сделать модуль.
Ошибки вроде:
/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
Итак, я попробовал загрузить другую версию ( zip archive direct download link ), который к моменту первоначального ответа может быть и мастером. Затем я смог сделать модуль и установить следующие шаги, предоставленные @ chili555
Решение для ошибки таймера.
Мне удалось заставить его работать для моего lenovo E570 с помощью ubuntu 16.04 и вот мои шаги: во-первых, я обновляю версию ядра до 4.15.4 с помощью этого guide
Я полагаю, что любая версия ядра выше 4.15.4 должна работать, потому что мне пришлось снова обновить мое ядро до 4.15.9. Обратите внимание, что драйвер необходимо переустановить.
Затем я выполнил шаги, упомянутые в ответах @ chili555
dkms build / install для rtl8821ce можно найти здесь: https://github.com/tomaspinho/rtl8821ce
Когда вы используете этот подход, вам не нужно будет rebuild модуль каждый раз, когда ядро обновляется.
Я только что построил его на Lenovo Idea 720s с kubuntu 18.04.
Также предлагаю вам отредактировать Makefile , чтобы изменить уровень журнала с 4 (info) до 3 (предупреждения). В противном случае вы обнаружите, что ваш /var/log/syslog
заполняется с безумной скоростью с бесполезными информационными сообщениями от драйвера.
Итак, измените Makefile, чтобы изменить:
CONFIG_RTW_LOG_LEVEL = 4
на:
CONFIG_RTW_LOG_LEVEL = 3
, а затем построить и установить модуль в соответствии с инструкциями. Если вы уже установили его, вам необходимо удалить его (используя dkms-remove.sh
), а затем снова установить его повторно.
В качестве альтернативы вы можете вручную изменить уровень журнала до следующей перезагрузки с помощью:
echo 3 > /proc/net/rtl8821ce/log_level
Обновление : сопровождающий изменил файл Makefile , чтобы отразить это предложение, поэтому, если вы сделаете новую проверку / загрузку, у него уже будет правильная (тихая) настройка.
Это ответ на ответ со стороны, который предлагает использовать dkms.
Насколько я могу судить, на момент написания этого еще нет Wi-Fi Драйвер для Realtek RTL8821CE в официальных репозиториях Ubuntu.
На github имеется репозиторий с драйвером RTL8821CE, предназначенный для ядер 4.14 и выше, и специально для Arch Linux без поддержки для других Linux Distros: https://github.com/tomaspinho/rtl8821ce
Тем не менее, как сообщается, он отлично работает с Ubuntu 18.04.
Требуется временное подключение к Интернету (например, кабель ethernet , USB wifi dongle или подключение вашего телефона с помощью USB-кабеля и « привязкой «использовать Wi-Fi вашего телефона»
Решение берется непосредственно из сообщения №4 от Praseodym (много похвалы их мудрости!): https://ubuntuforums.org/showthread. php? t = 2398917 и установит несколько пакетов для построения Wi-Fi er (git, dkms, build-essential & amp; linux-headers) и клонировать rtl8821ce git-репозиторий от tomaspinho (много похвалы тоже!).
DKMS используется, потому что это «система, которая автоматически перекомпилирует и установит модуль ядра когда новое ядро устанавливается или обновляется ».
Откройте терминал и введите следующие строки (вы можете вырезать и вставить, если хотите):
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
После того, как это будет успешно завершено, вы должны перезагрузить компьютер и найти, что ваш Wi-Fi работает.
Вы также должны убедиться, что SecureBoot отключен в настройках BIOS или он не позволит вам загружать неподписанный модуль с самообслуживанием.