41 votes

Comment installer le pilote Wi-Fi pour Realtek RTL8821CE sur Ubuntu 18.04 ?

Je suis en train d'essayer d'installer les pilotes pour mon Wifi sur mon ordinateur de bureau HP All-in-one. On m'a dit de montrer la sortie de la commande "sudo lshw -C network" donc la voici :

*-network
description: Interface Ethernet
produit: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
vendeur: Realtek Semiconductor Co., Ltd
identifiant physique: 0
informations bus: pci@0000:01:00.0
nom logique: enp1s0
version: 15
serial: 48:ba:4e:5c:06:5f
taille: 100Mbit/s
capacité: 1Gbit/s
largeur: 64 bits
horloge: 33MHz
capacités: pm msi pciexpress msix bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full firmware=rtl8168h-2_0.0.2 02/26/15 ip=192.168.1.21 latency=0 link=yes multicast=yes port=MII speed=100Mbit/s
ressources: ire:31 import:e000(taille=256) mémoire: fea04000-fea04fff mémoire:fea00000-fea03fff

*-network NON RÉCLAMÉ
description: Contrôleur réseau
produit: Realtek Semiconductor Co., Ltd.
vendeur: Realtek Semiconductor Co., Ltd.
identifiant physique: 0
informations bus: pci@0000:02:00.0
version: 00
largeur: 64 bits
horloge: 33MHz
capacités: pm msi pciexpress cap_list
configuration: latency=0
ressources: import:d000(taille=256) mémoire:fe900000-fe90ffff

Sortie de "lspci -nnk | grep -A2 0280":

02:00.0 Contrôleur réseau [0280]: Realtek Semiconductor Co., Ltd. RTL8821CE 802.11ac PCIe Wireless Network Adapter [10ec:c821]
Subsystem: Hewlett-Packard Company RTL8821CE 802.11ac PCIe Wireless Network Adapter [103c:831a]
03:00.0 Classe non assignée [ff00]: Realtek Semiconductor Co., Ltd. RTS5229 PCI Express Card Reader [10ec:5229] (rev 01)

53voto

pHeLiOn Points 1638

(Cette question est un doublon de Wi-Fi not working on Lenovo ThinkPad E570 (Realtek RTL8821CE) mais j'étais content que nous ayons finalement trouvé une solution, donc je vais écrire ce qui a fonctionné pour Haz.)

Pour autant que je sache, au moment où j'écris ceci, il n'y a pas encore de pilote Wifi pour le Realtek RTL8821CE dans les dépôts officiels d'Ubuntu.

Sur github, il y a un dépôt avec un pilote RTL8821CE destiné aux noyaux 4.14 et supérieurs et spécifiquement pour Arch Linux sans support pour autres distributions Linux : https://github.com/tomaspinho/rtl8821ce

(Note mineure : en février 2019, tomaspinho ne peut malheureusement plus maintenir le pilote car il n'a plus accès à un ordinateur avec ce chipset, ainsi un nouveau mainteneur peut être nécessaire, mais le pilote fonctionne toujours avec Ubuntu 18.04 à ce moment-là.)

Cependant, il a été rapporté qu'il fonctionne très bien avec Ubuntu 18.04.

La solution est directement tirée du post #4 par Praseodym : https://ubuntuforums.org/showthread.php?t=2398917 et installera un certain nombre de packages pour construire le module de pilote wifi (git, dkms, build-essential & linux-headers) et clonera le dépôt git de tomaspinho.

DKMS est utilisé car c'est "un système qui recompilera et installera automatiquement un module du noyau lorsqu'un noyau est installé ou mis à jour".


Ouvrez un terminal et tapez les lignes suivantes (vous pouvez copier-coller si vous préférez) :

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

Après que cela se soit terminé avec succès, vous devriez redémarrer et constater que votre Wifi fonctionne.

Assurez-vous également que le SecureBoot est Désactivé dans les paramètres du BIOS, sinon il ne vous permettra pas de charger le module noyau auto-signé.

OU

Signez vous-même le fichier 8821ce.ko selon la commande donnée ici

kmodsign sha512 \
    /var/lib/shim-signed/mok/MOK.priv \
    /var/lib/shim-signed/mok/MOK.der \
    /usr/lib/modules/$(uname -r)/kernel/drivers/net/wireless/8821ce.ko

16voto

ThomasAFink Points 279

La réponse de @pHeLiOn m'a aidé, mais ce n'était pas suffisant. Voici donc exactement ce que j'ai fait pour le faire fonctionner sur mon HP.

Assurez-vous de supprimer le pilote si vous l'avez précédemment installé sans succès via sudo ./dkms-install.sh et ensuite le répertoire rm -rf rtl8821ce. Il peut être situé dans cd /var/lib/dkms/, supprimez-le également à cet endroit.

  1. J'ai désactivé le secure boot (vous devez redémarrer après cette commande et entrer les caractères du mot de passe sur l'écran bleu):

    sudo mokutil --disable-validation
  2. J'ai mis à jour le noyau de 4.15 à 4.18, car pour une raison quelconque ça ne fonctionnait pas avec 4.15. Utilisez uname -a pour vérifier votre version de noyau.

    sudo apt install linux-generic-hwe-18.04
    sudo apt update && sudo apt upgrade -y
  3. Ensuite j'ai réinstallé les en-têtes dkms:

    sudo apt-get install --reinstall git dkms build-essential linux-headers-$(uname -r)
  4. J'ai cloné le dépôt github:

    git clone https://github.com/tomaspinho/rtl8821ce
  5. Je suis entré dans le nouveau répertoire:

    cd rtl8821ce
  6. J'ai modifié les autorisations de fichier:

    chmod +x dkms-install.sh
    chmod +x dkms-remove.sh
  7. J'ai synchronisé le pilote avec la bonne version du noyau:

    make
    sudo make install
  8. J'ai installé le pilote:

    sudo ./dkms-install.sh
  9. Enfin, j'ai redémarré, et à ma grande surprise, ça a fonctionné.

De plus, j'ai changé mon PCIe Activate State Power Management comme suggéré dans le dépôt github.

3voto

bobdobbs Points 31

Les commandes dans le post juste avant étaient correctes sauf pour le git pull. Il y a une exigence d'authentification nom d'utilisateur et mot de passe donc vous devez juste aller sur la page web -- https://github.com/tomaspinho/rtl8821ce -- et télécharger le fichier .zip. J'ai ensuite essayé de suivre en changeant les fichiers shell en exécutable comme suggéré mais lorsqu'ils étaient exécutés il y avait une différence quant à l'endroit où les fichiers devaient être situés. (Je ne me plains pas, cela peut juste être un peu déroutant si vous ne savez pas vraiment ce que vous faites) Les fichiers doivent être extraits dans /usr/src/rtl8821ce-1.0.0 (créez un nouveau répertoire "rtl8821ce-1.0.0" à l'intérieur de /usr/src) et ENSUITE chmod +x dkms-install.sh, tout devrait fonctionner comme sur des roulettes à partir de là. Merci beaucoup à ceux qui ont écrit ce script. J'ai dépensé environ 600 dollars dans cette machine impressionnante et je pensais que le wifi ne fonctionnerait pas. Santé.

Pour être précis, la machine est un nouveau HP Pavilion x360 2-en-1 avec Windows 10 et Ubuntu Studio 18.04.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X