zaLinux.ru

Как установить драйвер Realtek RTL8821CE


Смотрите также: Как установить Wi-Fi драйвер в Linux если компьютер офлайн

Обычно, когда мы устанавливаем дистрибутив Linux на ноутбук, то зачастую поддержка Wi-Fi присутствует полностью или частично для большинства моделей. Драйверы интегрированы в ядро Linux и в результате всё «просто работает» из коробки. Но проблемы начинаются если драйвер для вашего Wi-Fi отсутствует. Вам нужно его найти и установить вручную.

С такой проблемой могут столкнуться, например, владельце ноутбуков HP CM-0078AU.

Если у вас Wi-Fi адаптер на основе чипсета Realtek RTL8821CE, то в Linux по умолчанию отсутствует драйвер для него. В результате ОС не видит устройство, и в панели рядом с часами вовсе отсутствует значок Wi-Fi.

Для исправления данной проблемы достаточно установить необходимый драйвер.

Этот драйвер работает на ядре Linux > 4.14 (все современные дистрибутивы удовлетворяют этому требованию). Этот драйвер тестировался на Debian, Ubuntu, Linux Mint, Arch Linux, Gentoo и должен работать на всех производных дистрибутивах.

Этот драйвер может быть установлен с использованием DKMS. Эта система, которая автоматически перекомпилирует и устанавливает модули ядра когда в результате обновления устанавливается новое ядро. Для использования DKMS, установите пакет dkms.

Чтобы проверить, какой именно у вас интегрированный Wi-Fi адаптер, выполните команду:

lspci | grep Network

Если у вас вывод содержит строку RTL8821CE, значит эта инструкция вам поможет:

Network controller: Realtek Semiconductor Co., Ltd. RTL8821CE 802.11ac PCIe Wireless Network Adapter

Офлайн установка Realtek RTL8821CE

Если на компьютере, на который вы хотите установить драйвер, отсутствует Интернет-подключение, то вы можете скачать установочный файл из репозиториев Ubuntu, перенести его на флешке на компьютер без Интернета и попробовать установить его вручную. Этот способ может не сработать по той причине, что для установки драйвера требуются зависимости (например, заголовки ядра), которые смогли бы установиться будь у компьютера Интернет-подключение, но если компьютер офлайн, то приходится надеяться, что все нужные файлы присутствуют по умолчанию.

Скачайте установочный файл драйвера:

wget http://archive.ubuntu.com/ubuntu/pool/universe/r/rtl8821ce/rtl8821ce-dkms_5.5.2.1-0ubuntu4_all.deb

Если ссылка на драйвер перестала работать, то для поиска актуальной ссылки перейдите на страницу: https://pkgs.org/search/?q=rtl8821ce-dkms

Перенесите скаченный файл на компьютер, где его нужно установить, перейдите в директорию с драйвером и запустите установку следующей командой:

sudo apt install ./rtl8821ce-dkms_5.5.2.1-0ubuntu4_all.deb

Установка драйвера Realtek RTL8821CE в Ubuntu 21.04 и более поздние

Драйвер помещён в стандартный репозиторий, поэтому достаточно выполнить команду:

sudo apt install rtl8821ce-dkms

Установка драйвера Realtek RTL8821CE в Ubuntu 20.04

Начиная с Ubuntu 20.04, этот драйвер имеется в Дополнительном ПО (Additional Drivers (Software & Updates)). Откройте настройки дополнительного ПО и поставьте галочку “Using DKMS source for the Realtek 8821C …” (использовать DKMS источник для Realtek 8821C) и затем перезагрузитесь. После перезагрузки всё будет работать.


Как установить драйвер Realtek RTL8821CE в Debian, Ubuntu, Kali Linux, Linux Mint и их производные

Выполните следующие команды:

sudo apt install bc module-assistant build-essential dkms
git clone https://github.com/tomaspinho/rtl8821ce
cd rtl8821ce
sudo m-a prepare
sudo ./dkms-install.sh

Затем перезагрузите компьютер — всё должно работать.

Как установить драйвер Realtek RTL8821CE в Arch Linux, BlackArch и их производные

Установите pikaur, как это показано в статье «Автоматическая установка и обновление пакетов AUR», а затем просто выполните команду:

pikaur -S rtl8821ce-dkms-git

Перезагрузите компьютер.


Как установить драйвер Realtek RTL8821CE в Gentoo

Выполните с правами root команды:

layman -a trolltoo
emerge --ask net-wireless/rtl8821ce-driver

Удаление драйвера

Откройте терминал и используйте git clone для клонирования репозитория на локальный диск:

git clone https://github.com/tomaspinho/rtl8821ce.git
cd rtl8821ce

Затем выполните скрипт для деинсталяции:

sudo ./dkms-remove.sh

Обновление драйвера

Удалите драйвер:

sudo ./dkms-remove.sh

Убедитесь, что у вас последняя версия репозитория на диске:

git pull

Удалите все несвежие бинарные файлы:

make clean

Установите заново:

sudo ./dkms-install.sh

Возможные проблемы

Secure Boot

Если ваша система использует безопасную загрузку, отключите её в настройках BIOS, иначе ядро не будет принимать пользовательские модули.

PCIe Activate State Power Management

Ваш дистрибутив может поставляться с включённым по умолчанию управлением питанием активного состояния PCIe (PCIe Activate State Power Management). Это может конфликтовать с этим драйвером. Чтобы отключить:

sudo $EDITOR /etc/default/grub

Добавьте pci=noaer в конец GRUB_CMDLINE_LINUX_DEFAULT. Строка должна выглядеть примерно так:


GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=noaer"

Затем обновите вашу конфигурацию GRUB:

sudo update-grub

Перезагрузитесь.

Ноутбуки Lenovo Yoga

Некоторые новые ноутбуки Yoga (например, Yoga 530) поставляются с rtl8821ce в качестве чипа Wi-Fi/Bluetooth. Но модуль ideapad-laptop, который может входить в ваш дистрибутив, может конфликтовать с этим драйвером. Чтобы отключить его:

sudo modprobe -r ideapad_laptop

BlueTooth не работает

Это может быть связано с тем, что ядро загружает неправильный файл прошивки для этой карты. Взгляните на руководство wahsot по адресу https://github.com/tomaspinho/rtl8821ce/issues/19#issuecomment-452196840, чтобы узнать, сможет ли оно решить вашу проблему.

Смотрите также:


Рекомендуемые статьи:

12 Комментарии

  1. Ильнар

    Доброе утро! А как установить драйвер, если нет интернета? И lan разъема тоже нет. Выкачал из репозитория модуль, но установить возможности нет, как же выполнить команду "sudo apt install bc module-assistant build-essential dkms" без интернета?

    1. Alexey (Автор записи)

      Вы пишите из секретной военной части где запрещён Интернет? Шучу, если что…

      Варианты:

      1.  Скачать установочные пакеты на машине с Интернетом
      2.  Установка пакетов с Live или установочного диска
      3.  Подключить USB адаптер для которого драйвера присутствуют в ядре Linux

      1. Офлайн установка пакетов

      На Linux с Интернетом вы можете скачать пакеты вручную:

      apt download bc module-assistant build-essential dkms

      А затем установить их на компьютере без Интернета:

      sudo apt install *.deb

      В теории это всего две команды, но на практике возможны следующие проблемы:

      1. Чтобы пакеты подошли, дистрибутив, на котором вы скачиваете должен быть таким же и такой же версии, где вы затем будете устанавливать пакеты. Иначе вам нужно искать ссылки для каждого пакета для вашего дистрибутива и скачивать вручную
      2. У каждого из этих пакетов могут быть зависимости, а у тех зависимостей могут быть другие зависимости…

      В общем, посмотреть зависимости можно командой:

      apt-cache depends ПАКЕТ

      Или вариант попроще, запустите команду (делать установку необязательно):

      sudo apt install bc module-assistant build-essential dkms

      и посмотрите, какие пакеты будут предложены для установки. Скопируйте названия этих пакетов и загрузите с помощью «apt download».

      2. Установка пакетов с Live или установочного диска

      Это несложно, в репозиториях в качестве источника пакетов нужно прописать CD диск. Для этого вставьте диск и выполните:

      sudo apt-cdrom add

      3. Подключить USB адаптер для которого драйвера присутствуют в ядре Linux

      Подойдёт практически любой USB адаптер кроме самых экзотических — в ядре Linux есть драйвера практически для всего. То есть вы получите Интернет и сможете сделать обычную установку как написано в статье.

    2. Alexey (Автор записи)

      Самый простой вариант — скачайте скомпилированный драйвер из репозитория Ubuntu: http://archive.ubuntu.com/ubuntu/pool/universe/r/rtl8821ce/rtl8821ce-dkms_5.5.2.1-0ubuntu4_all.deb

      Для поиска актуальной ссылки: https://pkgs.org/search/?q=rtl8821ce-dkms

      1. Андрей

        Спасибо, выручил!

  2. Сона

    Спасибо, ваша статья очень сильно помогла мне!

  3. Павел

    Что за команда sudo m-a prepare ?

     

    1. Alexey (Автор записи)

      m-a (module-assistant) — это инструмент командной строки для обработки пакетов с исходным кодом модулей, которые были подготовлены для распространения в дистрибутивах семейства Debian. Он помогает пользователям легко создавать и устанавливать пакеты модулей для одного или нескольких кастомных ядер.

      Команда m-a содержится в пакете module-assistant:

      sudo apt install module-assistant

      Для получения дополнительной справки, в том числе по опциям m-a:

      man m-a
      
  4. Александр

    Не совсем понимаю проблемы. Вроде как сделал все как нужно. Выкачал драйвер и закачал на флешку. Перенес все на флешку и запустил его через терминал убунту. В итоге ошибка: 
    "Следующие пакеты имеют не удовлетворённые зависимости:
    rtl8821ce-dkms : Зависит: dkms (>= 2.1.0.0) но он не может быть установлен
    E: Невозможно исправить ошибка: у вас зафиксированны сломанные пакеты."

    1. Alexey (Автор записи)

      Видимо дело в том, что пакет содержит не скомпилированные файлы драйвера, а файлы с исходным кодом, из которых в процессе установке должны быть скомпилированы бинарные файлы. Для этого ему нужны все зависимости, которые устанавливаются при ручном способе. То есть получается, что без Интернет-подключения не обойтись (или же нужно предварительно скачать и установить все зависимости).

      Я написал небольшую инструкцию, как использовать телефон в качестве USB-модема, причём можно даже без мобильных данных, а подключившись к Wi-Fi: Как установить Wi-Fi драйвер в Linux если компьютер офлайн. То есть подключите телефон к Интернету, и установите драйвер используя команды из статьи.

  5. Сергей

    Огромное спасибо!!! Всё заработало - использовал самый первый способ.

  6. Некс

    Что делать, устанавливаю на манжаро(Производный арч) все вроде в норме И ТУТ Missing 4.14.271-1-MANJARO kernel modules tree for module rtl8821ce/1.0.5.r134.gdce62b9

    Помогите пожалуйста

     

  7. Николай

    Спасибо! Попробую по Вашим советам.

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *