Kubuntu 19.10のカーネルアップデート後(つまり、通常のアップデートによる)、wifiが機能しなくなり、ドライバーが読み込まれなくなりました。 Sudo modprobe -v iwlwifi
を実行しようとしましたが、次の結果で失敗しました:
insmod /lib/modules/5.3.0-24-generic/updates/dkms/compat.ko
modprobe: ERROR: could not insert 'iwlwifi': Operation not permitted
これはSecureBootと、iwlwifi
モジュールに署名する必要があるという事実が原因であると考えています。
SecureBootのカーネルモジュールに署名するための this の例を見つけ、そこに示されているVirtualBoxの例で試しました。これはVirtualBoxで機能しました。 (しばらくの間、VirtualBoxが機能しないことに悩みました。)次に、iwlwifi
を使用して次のように同じことを試しました。
Sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n iwlwifi)
しかし、今回は効果がありませんでした。上記のエラーメッセージ(「操作は許可されていません」)が引き続き表示されます。
BIOSでSecureBootを無効にしてみましたが、Kubuntuが起動しなくなりました。パスワードを入力することはできましたが、デスクトップがグレー表示され、システムがフリーズしました。
そこで、セキュアブートをオンに戻しました。昨日の更新をリストすると、とりわけgrep " upgrade " /var/log/dpkg.log
が生成されました。
2019-12-07 09:47:31 upgrade backport-iwlwifi-dkms:all 7906-0ubuntu1 7906-0ubuntu2~19.10.1
物事を修正するために、私はbackport-iwlwifi-dkms
をアンインストールしてから再インストールしました。再インストール中に、セキュアブート用のモジュールに署名するプロセスを案内されました。これは最初は有望に見えましたが、再起動後、システムは起動しなくなりました。したがって、セキュアブートがアクティブ化されているかどうかにかかわらず、デスクトップがグレー表示されたフリーズシステムを取得しています。ただし、ブートメニューから以前のバージョンのカーネルを起動することはできます。
Eoanバックポートはソースリストで有効になっています。
以前のカーネルバージョンでは、dkms status
は次の出力を生成します。
backport-iwlwifi, 7906, 5.3.0-24-generic, x86_64: installed (WARNING! Diff between built and installed module!)
virtualbox, 6.0.14, 5.3.0-23-generic, x86_64: installed
virtualbox, 6.0.14, 5.3.0-24-generic, x86_64: installed (WARNING! Diff between built and installed module!)
そしてls -al /lib/modules/*/updates/dkms
は次の出力を生成します:
/lib/modules/5.3.0-23-generic/updates/dkms:
total 636
drwxr-xr-x 2 root root 4096 Dec 8 15:33 .
drwxr-xr-x 3 root root 4096 Nov 15 09:06 ..
-rw-r--r-- 1 root root 547635 Nov 15 09:06 vboxdrv.ko
-rw-r--r-- 1 root root 15523 Nov 15 09:06 vboxnetadp.ko
-rw-r--r-- 1 root root 38803 Nov 15 09:06 vboxnetflt.ko
-rw-r--r-- 1 root root 36331 Nov 15 09:06 vboxpci.ko
/lib/modules/5.3.0-24-generic/updates/dkms:
total 4408
drwxr-xr-x 2 root root 4096 Dec 8 15:37 .
drwxr-xr-x 3 root root 4096 Dec 7 09:49 ..
-rw-r--r-- 1 root root 1124323 Dec 8 15:37 cfg80211.ko
-rw-r--r-- 1 root root 7227 Dec 8 15:37 compat.ko
-rw-r--r-- 1 root root 684483 Dec 8 15:37 iwlmvm.ko
-rw-r--r-- 1 root root 676194 Dec 8 12:29 iwlwifi.ko
-rw-r--r-- 1 root root 82699 Dec 8 15:37 iwlxvt.ko
-rw-r--r-- 1 root root 1272979 Dec 8 15:37 mac80211.ko
-rw-r--r-- 1 root root 548088 Dec 8 12:06 vboxdrv.ko
-rw-r--r-- 1 root root 15523 Dec 7 09:49 vboxnetadp.ko
-rw-r--r-- 1 root root 38803 Dec 7 09:49 vboxnetflt.ko
-rw-r--r-- 1 root root 36331 Dec 7 09:49 vboxpci.ko
Edit:@heynnemaは、以下の回答の一部としていくつかのコマンドの出力を投稿するように求めました:
ls -al /etc/modprobe.d
:
total 60
drwxr-xr-x 2 root root 4096 Dec 5 13:52 .
drwxr-xr-x 143 root root 12288 Dec 7 09:49 ..
-rw-r--r-- 1 root root 2507 Jul 31 2015 alsa-base.conf
-rw-r--r-- 1 root root 154 Aug 1 02:54 AMD64-microcode-blacklist.conf
-rw-r--r-- 1 root root 325 Apr 30 2019 blacklist-ath_pci.conf
-rw-r--r-- 1 root root 1518 Apr 30 2019 blacklist.conf
-rw-r--r-- 1 root root 210 Apr 30 2019 blacklist-firewire.conf
-rw-r--r-- 1 root root 677 Apr 30 2019 blacklist-framebuffer.conf
-rw-r--r-- 1 root root 156 Jul 31 2015 blacklist-modem.conf
lrwxrwxrwx 1 root root 41 Oct 31 12:22 blacklist-oss.conf -> /lib/linux-sound-base/noOSS.modprobe.conf
-rw-r--r-- 1 root root 583 Apr 30 2019 blacklist-rare-network.conf
-rw-r--r-- 1 root root 127 Oct 3 10:38 dkms.conf
-rw-r--r-- 1 root root 154 Sep 30 19:37 intel-microcode-blacklist.conf
-rw-r--r-- 1 root root 347 Apr 30 2019 iwlwifi.conf
more /etc/modprobe.d/iwlwifi.conf
:
# /etc/modprobe.d/iwlwifi.conf
# iwlwifi will dyamically load either iwldvm or iwlmvm depending on the
# microcode file installed on the system. When removing iwlwifi, first
# remove the iwl?vm module and then iwlwifi.
remove iwlwifi \
(/sbin/lsmod | grep -o -e ^iwlmvm -e ^iwldvm -e ^iwlwifi | xargs /sbin/rmmod) \
&& /sbin/modprobe -r mac80211
dkms status
は何も表示しません。 ls -al /lib/modules/*/updates/dkms
:
total 8
drwxr-xr-x 2 root root 4096 Dec 8 17:25 .
drwxr-xr-x 3 root root 4096 Dec 7 09:49 ..
Sudo lshw -C network
:
*-network:0 UNCLAIMED
description: Network controller
product: Cannon Point-LP CNVi [Wireless-AC]
vendor: Intel Corporation
physical id: 14.3
bus info: pci@0000:00:14.3
version: 30
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress msix cap_list
configuration: latency=0
resources: memory:c9738000-c973bfff
*-network:1
description: Ethernet interface
product: Ethernet Connection (6) I219-LM
vendor: Intel Corporation
physical id: 1f.6
bus info: pci@0000:00:1f.6
logical name: enp0s31f6
version: 30
serial: 98:fa:9b:d4:56:64
size: 1Gbit/s
capacity: 1Gbit/s
width: 32 bits
clock: 33MHz
capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k duplex=full firmware=0.4-3 ip=192.168.1.213 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
resources: irq:147 memory:c9700000-c971ffff
virtualbox
をアンインストールして再インストールしました(virtualbox-6.0
が存在しなかったため)。手順4の残りの2つのコマンドは何も返しません。
ls -al /lib/modules/5.3.0-24-generic/kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
:
-rw-r--r-- 1 root root 640985 Nov 13 22:41 /lib/modules/5.3.0-24-generic/kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
modinfo iwlwifi
:
filename: /lib/modules/5.3.0-24-generic/updates/dkms/iwlwifi.ko
modinfo: ERROR: could not get modinfo from 'iwlwifi': No such file or directory
dpkg -l *virtualbox*
:
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============================-=============-============-============================================================
ii virtualbox 6.0.14-dfsg-1 AMD64 x86 virtualization solution - base binaries
un virtualbox-2.0 <none> <none> (no description available)
un virtualbox-2.1 <none> <none> (no description available)
un virtualbox-2.2 <none> <none> (no description available)
un virtualbox-3.0 <none> <none> (no description available)
un virtualbox-3.1 <none> <none> (no description available)
un virtualbox-3.2 <none> <none> (no description available)
un virtualbox-4.0 <none> <none> (no description available)
un virtualbox-4.1 <none> <none> (no description available)
un virtualbox-4.2 <none> <none> (no description available)
un virtualbox-4.3 <none> <none> (no description available)
un virtualbox-5.0 <none> <none> (no description available)
un virtualbox-5.1 <none> <none> (no description available)
un virtualbox-5.2 <none> <none> (no description available)
un virtualbox-6.0 <none> <none> (no description available)
ii virtualbox-dkms 6.0.14-dfsg-1 all x86 virtualization solution - kernel module sources for dkms
un virtualbox-guest-additions-iso <none> <none> (no description available)
un virtualbox-guest-dkms <none> <none> (no description available)
un virtualbox-guest-modules <none> <none> (no description available)
un virtualbox-modules <none> <none> (no description available)
ii virtualbox-qt 6.0.14-dfsg-1 AMD64 x86 virtualization solution - Qt based user interface
un virtualbox-source <none> <none> (no description available)
cat /etc/network/interfaces
:
cat: /etc/network/interfaces: No such file or directory
cat /etc/netplan/*.yaml
:
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
VirtualBoxを開けません。エラーメッセージ:
Kernel driver not installed (rc=-1908)
The VirtualBox Linux kernel driver is either not loaded or not set up correctly. Please reinstall virtualbox-dkms package and load the kernel module by executing
'modprobe vboxdrv'
as root.
If your system has EFI Secure Boot enabled you may also need to sign the kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load them. Please see your Linux system's documentation for more information.
where: suplibOsInit what: 3 VERR_VM_DRIVER_NOT_INSTALLED (-1908) - The support driver is not installed. On linux, open returned ENOENT.
バックポートを有効にし、backport-iwlwifi-dkms
を再インストールしたかったのですが、すでにそこにありました。 re-install
をクリックしました。その後、dkms status
はbackport-iwlwifi, 7906, 5.3.0-24-generic, x86_64: installed
を返しました。 Sudo lshw -C network
の出力:
*-network:0
description: Network controller
product: Cannon Point-LP CNVi [Wireless-AC]
vendor: Intel Corporation
physical id: 14.3
bus info: pci@0000:00:14.3
version: 30
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress msix bus_master cap_list
configuration: driver=iwlwifi latency=0
resources: irq:16 memory:c9738000-c973bfff
*-network:1
description: Ethernet interface
product: Ethernet Connection (6) I219-LM
vendor: Intel Corporation
physical id: 1f.6
bus info: pci@0000:00:1f.6
logical name: enp0s31f6
version: 30
serial: 98:fa:9b:d4:56:64
size: 1Gbit/s
capacity: 1Gbit/s
width: 32 bits
clock: 33MHz
capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k duplex=full firmware=0.4-3 ip=192.168.1.213 latency=0 lin
resources: irq:147 memory:c9700000-c971ffff
ls -al /lib/modules/*/updates/dkms
:
total 3776
drwxr-xr-x 2 root root 4096 Dec 8 18:48 .
drwxr-xr-x 3 root root 4096 Dec 7 09:49 ..
-rw-r--r-- 1 root root 1124323 Dec 8 18:48 cfg80211.ko
-rw-r--r-- 1 root root 7227 Dec 8 18:48 compat.ko
-rw-r--r-- 1 root root 684483 Dec 8 18:48 iwlmvm.ko
-rw-r--r-- 1 root root 674835 Dec 8 18:48 iwlwifi.ko
-rw-r--r-- 1 root root 82699 Dec 8 18:48 iwlxvt.ko
-rw-r--r-- 1 root root 1272979 Dec 8 18:48 mac80211.ko
以前のカーネルで起動します。
少なくとも一時的にバックポートリポジトリを無効にし、ソフトウェアデータベースを更新します。
terminal
...
Sudo dkms remove backport-iwlwifi/7906 --all
#dkmsドライバを削除
Sudo dkms remove virtualbox/6.0.14 --all
#dkmsドライバを削除
dkms status
#何も表示しない
ls -al /lib/modules/*/updates/dkms
#dkmsディレクトリを再確認
新しいカーネルで起動し、wifiが再び機能するかどうかを確認します。
Sudo rm -i /lib/modules/5.3.0-24-generic/updates/dkms/iwlwifi.ko
Sudo rm -i /lib/modules/5.3.0-24-generic/updates/dkms/vboxdrv.ko
ls -al /lib/modules/*/updates/dkms
#何も表示しない
reboot
#システムを再起動します
wifiを再確認してください。
ls -al /etc/modprobe.d
#confファイルを表示
more /etc/modprobe.d/iwlwifi.conf
#見せて
dkms status
#は何でもない
ls -al /lib/modules/*/updates/dkms
#何も表示しない
Sudo lshw -C network
#ネットワーク構成を表示
Sudo apt-get remove virtualbox
#VBをアンインストール
Sudo apt-get install virtualbox
#VBを再インストール
dkms status
#見せて
ls -al /lib/modules/*/updates/dkms
#見せて
ls -al /lib/modules/5.3.0-24-generic/kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
#オリジナルのiwlwifiカーネルモジュールを表示
modinfo iwlwifi
#カーネルモジュール情報
dpkg -l *virtualbox*
#見せて
cat /etc/network/interfaces
#見せて
cat /etc/netplan/*.yaml
#見せて
さて...勇敢に前進するために...
dkms status
#エラーなしでvirtualboxが表示されます
Virtualboxを試して、機能することを確認します。
バックポートリポジトリを再度有効にし、ソフトウェアデータベースを更新します。
Software Updater
を実行します#backport-iwlwifi-dkmsを再インストールします
現時点では、iwlwifiモジュールに再署名しないでください。
dkms status
#もう一度表示
Sudo lshw -C network
#もう一度表示
ls -al /lib/modules/*/updates/dkms
#もう一度表示
wi-Fiを再テストする
以前の動作しているカーネルで起動
backport-iwlwifi
dkmsカーネルモジュールをアンインストールしました
-24カーネルで再起動
削除して再インストールしたvirtualbox
およびvirtualbox-dkms
virtualboxカーネルモジュールに再署名
wifiとvirtualboxの両方が現在機能しています