web-dev-qa-db-ja.com

Realtek WifiはXubuntu 18.04 LTSで動作していません

最新のXubuntu 18.04 LTSをWindows 10サイド(デュアルブート)に沿って購入した新しい低設定ラップトップにインストールしました。インストールのすべてが正常に機能していましたが、Wifiは機能していません。時々(まれに)Wi-Fiルーターに接続できましたが、ネットワークの強度が1週間を超えています。私のラップトップは、wifiにrealtekドライバー(RTL8723BUの場合があります)を使用しています。 Windows 10システムでは正常に動作しています。 inxi -Fxzコマンドから、ネットワークカードが何とかインストールされていないことがわかりました。 Xumuntuでは、私は今インターネットがまったくありません。ここで、このラップトップには有線LANオプションがないことを付け加えます。

この無線LAN /ネットワークカードの問題を修正/解決するにはどうすればよいですか?

inxi -Fxzの出力は次のとおりです。

boundule@BUDDY:~$ inxi -Fxz
System:    Host: BUDDY Kernel: 4.15.0-30-generic x86_64 bits: 64 gcc: 7.3.0 Desktop: Xfce 4.12.3 (Gtk 2.24.31)
           Distro: Ubuntu 18.04.1 LTS
Machine:   Device: laptop System: Walton product: Prelude R1 serial: N/A
           Mobo: N/A model: N/A serial: N/A
           UEFI: American Megatrends v: WH-BI-14-Y116AR120-105-C date: 03/13/2018
CPU:       Dual core Intel Celeron N3350 (-MCP-) Arch: N/A cache: 1024 KB
           flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx) bmips: 4377
           clock speeds: max: 2400 MHz 1: 869 MHz 2: 861 MHz
Graphics:  Card: Intel Device 5a85 bus-ID: 00:02.0
           Display Server: x11 (X.Org 1.19.6 ) drivers: modesetting (unloaded: fbdev,vesa)
           Resolution: [email protected]
           OpenGL: renderer: Mesa DRI Intel HD Graphics 500 (Broxton 2x6)
           version: 4.5 Mesa 18.0.5 Direct Render: Yes
Audio:     Card Intel Celeron N3350/Pentium N4200/Atom E3900 Series Audio Cluster
           driver: snd_hda_intel bus-ID: 00:0e.0
           Sound: Advanced Linux Sound Architecture v: k4.15.0-30-generic
Network:   Card: Failed to Detect Network Card!
Drives:    HDD Total Size: 1008.2GB (1.2% used)
           ID-1: /dev/sda model: HGST_HTS541010B7 size: 1000.2GB
           ID-2: USB /dev/sdb model: Transcend_8GB size: 8.0GB
Partition: ID-1: / size: 19G used: 4.6G (27%) fs: ext4 dev: /dev/sda7
           ID-2: /home size: 35G used: 51M (1%) fs: ext4 dev: /dev/sda9
           ID-3: swap-1 size: 6.14GB used: 0.00GB (0%) fs: swap dev: /dev/sda8
RAID:      No RAID devices: /proc/mdstat, md_mod kernel module present
Sensors:   System Temperatures: cpu: 49.0C mobo: N/A
           Fan Speeds (in rpm): cpu: N/A
Info:      Processes: 166 Uptime: 37 min Memory: 397.8/3778.5MB Init: systemd runlevel: 5 Gcc sys: 7.3.0
           Client: Shell (bash 4.4.191) inxi: 2.3.56 

lspci; lsusbの出力を次に示します

00:00.0 Host bridge: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series Host Bridge (rev 0b)
00:00.1 Signal processing controller: Intel Corporation Device 5a8c (rev 0b)
00:02.0 VGA compatible controller: Intel Corporation Device 5a85 (rev 0b)
00:0e.0 Audio device: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series Audio Cluster (rev 0b)
00:0f.0 Communication controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series Trusted Execution Engine (rev 0b)
00:12.0 SATA controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SATA AHCI Controller (rev 0b)
00:15.0 USB controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series USB xHCI (rev 0b)
00:16.0 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #1 (rev 0b)
00:16.1 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #2 (rev 0b)
00:16.2 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #3 (rev 0b)
00:16.3 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #4 (rev 0b)
00:17.0 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #5 (rev 0b)
00:17.1 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #6 (rev 0b)
00:17.2 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #7 (rev 0b)
00:17.3 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series I2C Controller #8 (rev 0b)
00:18.0 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series HSUART Controller #1 (rev 0b)
00:18.1 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series HSUART Controller #2 (rev 0b)
00:18.2 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series HSUART Controller #3 (rev 0b)
00:18.3 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series HSUART Controller #4 (rev 0b)
00:19.0 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SPI Controller #1 (rev 0b)
00:19.1 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SPI Controller #2 (rev 0b)
00:19.2 Signal processing controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SPI Controller #3 (rev 0b)
00:1c.0 SD Host controller: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series eMMC Controller (rev 0b)
00:1f.0 ISA bridge: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series Low Pin Count Interface (rev 0b)
00:1f.1 SMBus: Intel Corporation Celeron N3350/Pentium N4200/Atom E3900 Series SMBus Controller (rev 0b)
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 058f:5608 Alcor Micro Corp. 
Bus 001 Device 004: ID 0bda:b720 Realtek Semiconductor Corp. 
Bus 001 Device 003: ID 09da:c10a A4Tech Co., Ltd. 
Bus 001 Device 002: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 006: ID 058f:6387 Alcor Micro Corp. Flash Drive
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

sb-devices | awk '/ b720 /' RS =の出力を次に示します。

T:  Bus=01 Lev=01 Prnt=01 Port=06 Cnt=04 Dev#=  4 Spd=480 MxCh= 0
D:  Ver= 2.10 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=0bda ProdID=b720 Rev=02.00
S:  Manufacturer=Realtek
S:  Product=802.11n WLAN Adapter
S:  SerialNumber=00e04c000001
C:  #Ifs= 3 Cfg#= 1 Atr=e0 MxPwr=500mA
I:  If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
I:  If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
I:  If#= 2 Alt= 0 #EPs= 6 Cls=ff(vend.) Sub=ff Prot=ff Driver=rtl8xxxu

コマンドを実行して再起動した後も問題は存在します

boundule@BUDDY:~$ Sudo apt install build-essential dkms
[Sudo] password for boundule: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
build-essential is already the newest version (12.4ubuntu1).
build-essential set to manually installed.
Suggested packages:
  menu
The following packages will be upgraded:
  dkms
1 upgraded, 0 newly installed, 0 to remove and 18 not upgraded.
Need to get 68.0 kB of archives.
After this operation, 19.5 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://bd.archive.ubuntu.com/ubuntu bionic-updates/main AMD64 dkms all 2.3-3ubuntu9.2 [68.0 kB]
Fetched 68.0 kB in 3s (19.6 kB/s)
(Reading database ... 185574 files and directories currently installed.)
Preparing to unpack .../dkms_2.3-3ubuntu9.2_all.deb ...
Unpacking dkms (2.3-3ubuntu9.2) over (2.2.0.3-2ubuntu11) ...
Setting up dkms (2.3-3ubuntu9.2) ...
Installing new version of config file /etc/dkms/framework.conf ...
Installing new version of config file /etc/dkms/template-dkms-mkdeb/debian/control ...
Installing new version of config file /etc/kernel/prerm.d/dkms ...
Processing triggers for man-db (2.8.3-2) ...
boundule@BUDDY:~$ git clone https://github.com/lwfinger/rtl8723bu.git
Cloning into 'rtl8723bu'...
remote: Counting objects: 2438, done.
remote: Total 2438 (delta 0), reused 0 (delta 0), pack-reused 2438
Receiving objects: 100% (2438/2438), 7.41 MiB | 63.00 KiB/s, done.
Resolving deltas: 100% (1960/1960), done.
boundule@BUDDY:~$ cd rtl8723bu
boundule@BUDDY:~/rtl8723bu$ source dkms.conf
boundule@BUDDY:~/rtl8723bu$ Sudo mkdir /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
boundule@BUDDY:~/rtl8723bu$ Sudo cp -r core hal include os_dep platform dkms.conf Makefile rtl8723b_fw.bin /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
boundule@BUDDY:~/rtl8723bu$ Sudo dkms add $PACKAGE_NAME/$PACKAGE_VERSION

Creating symlink /var/lib/dkms/rtl8723bu/4.3.6.11_12942.20141204_BTCOEX20140507-4E40/source ->
                 /usr/src/rtl8723bu-4.3.6.11_12942.20141204_BTCOEX20140507-4E40

DKMS: add completed.
boundule@BUDDY:~/rtl8723bu$ Sudo dkms autoinstall $PACKAGE_NAME/$PACKAGE_VERSION

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
make -j2 KERNELRELEASE=4.15.0-30-generic -C /lib/modules/4.15.0-30-generic/build M=/var/lib/dkms/rtl8723bu/4.3.6.11_12942.20141204_BTCOEX20140507-4E40/build..........................
Signing module:
Generating a new Secure Boot signing key:
Generating a 2048 bit RSA private key
...............................................+++
...........+++
writing new private key to '/var/lib/shim-signed/mok/MOK.priv'
-----
 - /var/lib/dkms/rtl8723bu/4.3.6.11_12942.20141204_BTCOEX20140507-4E40/4.15.0-30-generic/x86_64/module/rtl8723bu.ko
Secure Boot not enabled on this system.
cleaning build area...

DKMS: build completed.

rtl8723bu.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/4.15.0-30-generic/updates/dkms/

depmod......

DKMS: install completed.

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
make -j2 KERNELRELEASE=4.15.0-30-generic -C /lib/modules/4.15.0-30-generic/build M=/var/lib/dkms/rtlwifi-new/0.10/build....(bad exit status: 2)
ERROR: Cannot create report: [Errno 17] File exists: '/var/crash/rtlwifi-new-dkms.0.crash'
Error! Bad return status for module build on kernel: 4.15.0-30-generic (x86_64)
Consult /var/lib/dkms/rtlwifi-new/0.10/build/make.log for more information.
boundule@BUDDY:~/rtl8723bu$ 
1
boundule

Chili555と他のさまざまなソースの助けを借りて詳細に分析した後、私の問題は次の方法で解決されました:

第1ステップ:

Sudo apt install build-essential dkms
Sudo apt install git
git clone https://github.com/lwfinger/rtl8723bu.git
Sudo apt install libelf-dev

2番目のステップ:

Sudo -i
echo blacklist rtl8xxxu >> /etc/modprobe.d/blacklist.conf
exit

これにより、古いドライバーがデバイスで使用されないことが保証されました。私の場合、問題のあるドライバーはrtl8xxxuでした。だから私はそれをブラックリストに載せました。

番目のステップ:新しいドライバーのmakefileの行を無効にしました。このハックがないと、ネットワークマネージャーにワイヤレスチップセットの2つのインスタンスが表示されたためです(chili555のEdit 3のように)

cd rtl8723bu
nano Makefile

行21に移動して、次の行を変更します。

EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE

コメントアウトするには、次のようにします。

#EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE

テキストエディターを保存し(Ctrl + oに続けてEnter)、終了(Ctrl + x)します。

4番目のステップ:ドライバーをビルドしてインストールします。

source dkms.conf
Sudo mkdir /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
Sudo cp -r core hal include os_dep platform dkms.conf Makefile rtl8723b_fw.bin /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
Sudo dkms add $PACKAGE_NAME/$PACKAGE_VERSION
Sudo dkms autoinstall $PACKAGE_NAME/$PACKAGE_VERSION

5番目のステップ:最後に、次のコマンドでコンパイル済みモジュールをインストールします。

make
Sudo make install

コンピューターを再起動します。

0
boundule

デバイスはドライバー8723buを使用します。ソースコードからコンパイルする必要があります。イーサネット、テザー、または可能なあらゆる手段によるインターネット接続が正常に機能している場合、ターミナルを開いて以下を実行します

Sudo apt install build-essential dkms
git clone https://github.com/lwfinger/rtl8723bu.git
cd rtl8723bu
source dkms.conf
Sudo mkdir /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
Sudo cp -r core hal include os_dep platform dkms.conf Makefile rtl8723b_fw.bin /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
Sudo dkms add $PACKAGE_NAME/$PACKAGE_VERSION
Sudo dkms autoinstall $PACKAGE_NAME/$PACKAGE_VERSION

リブート。セキュアブートが有効になっている場合、カーネル外モジュールをロードするには無効にする必要があります。

EDIT:多くの場合、弱い信号は、デフォルトのドライバーが予期しているときにアンテナ線がカードの接続#1に接続されていることの症状です接続#2の信号を確認します。もちろん、ラップトップを開いてワイヤを切り替えるか、ドライバーレベルでアンテナを選択できるドライバーパラメーターを追加することができます。

Sudo -i
echo “options 8723bu rtw_ant_num=1”  >  /etc/modprobe.d/8723bu.conf
exit

リブート。

これが効果的でない場合は、rtw_ant_num = 2でプロセスを繰り返します。リブート。

EDIT 2:WPAおよびWPA2混合モードだけでなく、TKIP暗号化も使用するように設定されていることがわかります。ルーターの設定を変更してください。

WPA2-AESが推奨されます。 WPAおよびWPA2混合モードではなく、TKIPでもありません。 2番目に、ルーターがN速度に対応している場合、自動20/40 MHzではなく2.4 GHz帯域で20 MHzのチャネル幅を使用すると接続性が向上する場合がありますが、N速度に影響する可能性があります。また、自動チャネル選択ではなく、1、6、または11のいずれかの固定チャネルを使用する方が幸運です。また、ルーターがN速度のみを使用するように設定されていないことを確認してください。 auto B、G、およびNが優先されます。これらの変更を行った後、ルーターを再起動します。

次に、規制区域を明示的に設定することをお勧めします。あなたのものを確認してください:

Sudo iw reg get

00を取得した場合、それは1サイズ多分すべてに適した設定です。ここであなたを見つけてください: http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 それから一時的に設定してください:

Sudo iw reg set IS

もちろん、アイスランドでない場合は国コードに置き換えてください。永続的に設定します。

Sudo nano /etc/default/crda

最後の行を次のように変更します。

REGDOMAIN=IS

注意深く校正し、テキストエディターを保存して閉じます。

次に、ドライバーで役立つ可能性のあるすべての設定を試し、テストします。

Sudo modprobe -r 8723bu
Sudo modprobe 8723bu rtw_ant_num=2

今テスト:

Sudo iwlist scan

あなたの好みのルーターは現在、より良い強度ですか?そうでない場合は、試してください:

Sudo modprobe -r 8723bu
Sudo modprobe 8723bu rtw_ant_num=3

今テスト:

Sudo iwlist scan

あなたの好みのルーターは現在、より良い強度ですか?そうでない場合は、試してください:

Sudo modprobe -r 8723bu
Sudo modprobe 8723bu rtw_ant_num=1

...設定した元の設定でした。

これらの手順がどれも役に立たない場合は、ドライバーの作成者に問題をここに提出することをお勧めします。 https://github.com/lwfinger/rtl8723bu/issues

EDIT 3:Makefileを修正します。最初に、モジュールを削除する必要があります。次に、Makefileを変更し、最後に再構築します。

ターミナルから:

Sudo dkms remove rtl8723bu/4.3.6.11_12942.20141204_BTCOEX20140507-4E40 --all

ドライバーをgit cloneした場所に移動します。たぶんそれはあなたのホームディレクトリだった:

cd ~/rtl8723bu
git pull
nano Makefile

行21に移動して、次の行を変更します。

EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE

コメントアウトするには、次のようにします。

#EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE

慎重に2回校正してください。テキストエディターを保存し(Ctrl + oに続けてEnter)、終了(Ctrl + x)します。

次に、ドライバーを再構築してインストールします。

source dkms.conf
Sudo mkdir /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
Sudo cp -r core hal include os_dep platform dkms.conf Makefile rtl8723b_fw.bin /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
Sudo dkms add $PACKAGE_NAME/$PACKAGE_VERSION
Sudo dkms autoinstall $PACKAGE_NAME/$PACKAGE_VERSION

再起動して、改善があれば教えてください。

1
chili555