
頻繁に動作しない特定のデバイスによる困難停止する、SE U&Lの問題がありますドライバの再ロード。
私の場合、一部のデバイスが検出されず、ドライバ(displaylink-driver.service)がロードされましたが、非アクティブ/死んでいることがわかりました。もしそうなら、ドライバを再起動できますか?
$ lsusb
# missing usb devices (detected by $ lsusb before the issue)
Bus 004 Device 005: ID 17ef:a357 Lenovo USB3.1 Hub
Bus 004 Device 004: ID 17ef:a359 Lenovo ThinkPad Lan
Bus 004 Device 003: ID 17e9:6015 DisplayLink ThinkPad Hybrid USB-C with USB-A Dock
Bus 004 Device 002: ID 17ef:a356 Lenovo USB3.1 Hub
$ sudo systemctl status displaylink-driver.service
● displaylink-driver.service - DisplayLink Driver Service
Loaded: loaded (/lib/systemd/system/displaylink-driver.service; static)
Active: inactive (dead)
May 26 14:50:56 debija systemd[1]: Starting DisplayLink Driver Service...
May 26 14:50:56 debija systemd[1]: Started DisplayLink Driver Service.
May 26 18:03:21 debija systemd[1]: Stopping DisplayLink Driver Service...
May 26 18:03:22 debija systemd[1]: displaylink-driver.service: Succeeded.
May 26 18:03:22 debija systemd[1]: Stopped DisplayLink Driver Service.
May 26 18:03:22 debija systemd[1]: displaylink-driver.service: Consumed 41min 25.761s CPU time.
答え1
はい、sudo rmmod driver-name && sudo modprobe driver-name
。これにより、ドライバ(モジュールまたはモジュールコレクションとも呼ばれる)が削除され、再ロードされます。
一部のデバイスはBluetoothやオーディオなどのいくつかのドライバによって提供されていますrmmod drv1 drv2 drv3
。指定されたコマンドの各ドライバが「ロードされていません」と表示されるまで、この操作を繰り返す必要があります。
rmmod
何らかの理由で失敗した場合は、通常は再起動しなければ復元できません。もちろん、rmmod -f
システムの競合を引き起こすことがよくあります。
とは異なり、一度に1つのドライバしか使用できませんrmmod
。コマンドは通常依存関係を処理し、必要なすべてのドライバを自動的にロードするため、modprobe
ほとんどの場合これで十分です。modprobe drv-name
lsmod
ロードして実行中のモジュールを確認するために使用されます。
どのドライバがデバイスを提供しているかを調べるには、sudo lspci -vvv
どのPCI / PCIeデバイスがどのドライバを使用しているかを表示します。 USB デバイスの場合は lshw cf を使用できます。USBデバイスに接続されているモジュールをお探しですか?。
displaylink-driver.service
それはいいえドライバー。これはサービスです。そしてsystemctl
いいえデバイスドライバで使用するためのものです。サービスマネージャです。通常、rmmod smth
最初に実行すると、現在ロードされていないとマークされます。これは、指定されたドライバが使用されたことがないことを意味できます。サービスとドライバは一般的にそうではないので、どのように関連しているのかわかりません。ドライバをロードする非常に特定のサービスがあります。たとえば、vboxdrv
VirtualBoxの一部ですが、それはすべてです。名前には「drv」も含まれています。 Linuxのサービスは、さまざまなバックグラウンドタスク(コンソールアプリケーション、デーモン、サーバーなど)を開始するように設計されています。systemd-modules-load.service
自動的にロードされない追加のモジュールをロードするサービスがあります。