web-dev-qa-db-ja.com

Ubuntu 18.04にRealtek RTL8821CEのWi-Fiドライバーをインストールする方法

HP All-in-oneデスクトップにWifi用のドライバーをインストールしようとしています。 「Sudo lshw -C network」コマンドの出力を表示するように言われたので、ここにあります:

*-network
description: Ethernet interface
product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
vendor: Realtek Semiconductor Co., Ltd
physical id: 0
bus info: pci@0000:01:00.0
logical name: enp1s0
version: 15
serial: 48:ba:4e:5c:06:5f
size: 100Mbit/s
capacity: 1Gbit/s
width: 64 bits
clock: 33MHz
capabilities: 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
resources: ire:31 import:e000(size=256) memory: fea04000-fea04fff memory:fea00000-fea03fff

*-network UNCLAIMED
description: Network controller
product: Realtek Semiconductor Co., Ltd.
vendor: Realtek Semiconductor Co., Ltd.
physical id: 0
bus info: pci@0000:02:00.0
version: 00
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress cap_list
configuration: latency=0
resources: import:d000(size=256) memory:fe900000-fe90ffff

「lspci -nnk | grep -A2 0280」からの出力:

02:00.0 Network controller [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 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5229 PCI Express Card Reader [10ec:5229] (rev 01)
15
Haz

(この質問は Wi-FiがLenovo ThinkPad E570(Realtek RTL8821CE)で機能しない)の複製です しかし、最終的に解決策が見つかったので、うまくいったことを書き上げて喜んでいますハズの場合)

私が知る限り、これを書いている時点では、公式のUbuntuリポジトリにはRealtek RTL8821CE用のWifiドライバーはまだありません。

Githubには、カーネル4.14以降、特にArch Linux向けのRTL8821CEドライバーを備えたリポジトリがあり、他のLinuxディストリビューションはサポートされていません: https://github.com/tomaspinho/rtl8821ce

(マイナーノート:2019年2月現在、tomaspinhoは悲しいことに ドライバーをメンテナンスできなくなっています このチップセットを搭載したコンピューターにアクセスできなくなったため、新しいメンテナーです必要かもしれませんが、ドライバーはその時点でまだUbuntu 18.04で動作します。)

ただし、Ubuntu 18.04では問題なく動作することが報告されています。

解決策は、#4postPraseodymから直接取得されます:- https://ubuntuforums.org/showthread.php?t=2398917 そして、wifiドライバーモジュールを構築するための多数のパッケージをインストールします(git、dkms、build-essential&linux -headers)tomaspinhoからgitリポジトリをクローンします。

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

これが正常に完了したら、再起動してWifiが機能していることを確認する必要があります。

また、SecureBootDisabledBIOS設定で、そうでない場合、署名されていない自己適合カーネルモジュールをロードできません。

27
pHeLiOn

この直前の投稿のコマンドは、git pullを除いて正しいものでした。ユーザー名とパスワードの認証要件があるため、Webページにアクセスするだけで- https://github.com/tomaspinho/rtl8821ce -.Zipファイルをダウンロードします。その後、提案に従ってシェルファイルを実行可能ファイルに変更しましたが、実行時にファイルの場所が不一致でした。 (文句は言うまでもありません。何をしているかわからない場合は少し混乱するかもしれません)ファイルを/usr/src/rtl8821ce-1.0.0に抽出する必要があります(新しいディレクトリを作成する "rtl8821ce-/usr/src内の1.0.0」およびTHEN chmod + x dkms-install.sh、すべてがそこからグレービーのように動作するはずです。このスクリプトを書いてくれた人、本当にありがとう。私はこの悪いマシンに約600ドルを投棄し、wifiが機能しないと考えていました。乾杯。

具体的には、このマシンは、Windows 10とubuntu studio 18.04を備えた新しいHP Pavilion x360 2-in-1です。

1
bobdobbs

@pHeLiOnの答えは私を助けましたが、それは十分ではありませんでした。ですから、HPで動作させるために私がやったことはまさにここにあります。

以前にSudo ./dkms-install.shを介してインストールに失敗した場合は、ドライバーを削除してから、ディレクトリrm -rf rtl8821ceを削除してください。 cd /var/lib/dkms/にある可能性がありますが、そこも削除してください。

  1. セキュアブートを無効にしました(このコマンドの後に再起動して、ブルースクリーンにパスワード文字を入力する必要があります)。

    Sudo mokutil --disable-validation
  2. カーネルを4.15から4.18にアップグレードしました。何らかの理由で4.15では動作しません。 uname -aを使用して、カーネルバージョンを確認します。

    Sudo apt install linux-generic-hwe-18.04 
     Sudo apt update && Sudo apt upgrade -y
  3. 次に、dkmsヘッダーを再インストールしました。

    Sudo apt-get install --reinstall git dkms build-essential linux-headers-$(uname -r)
  4. 私はgithub呼吸器を引っ張りました:

    git clone https://github.com/tomaspinho/rtl8821ce
  5. 新しいディレクトリに入りました:

    cd rtl8821ce
  6. ファイルのアクセス許可を変更しました。

    chmod + x dkms-install.sh 
     chmod + x dkms-remove.sh
  7. ドライバーを正しいカーネルバージョンに同期しました。

    make 
     sudo make install
  8. ドライバーをインストールしました:

    Sudo ./dkms-install.sh
  9. 最後に再起動しましたが、驚いたことに動作しました。

さらに、github呼吸器で示唆されているように、 PCIe Activate State Power Management を変更しました。

1
ThomasAFink