Das LED-Licht meiner Maus geht mir beim Schlafen auf die Nerven. Normalerweise schließe ich abends mein Notebook und Ubuntu ruft an pm-suspend
. Der USB-Stecker wird trotzdem mit Strom versorgt. Ich könnte sogar mein Smartphone aufladen. Das ist aus zwei Gründen schlecht für mich. Ich muss meine Maus ausstecken und der Notebook-Akku [akku] hält weniger. Gibt es eine Möglichkeit, mein USB-Gerät oder alle USB-Geräte automatisch auszuschalten, wenn das Notebook in den Suspend-Modus wechselt?
Wie konfiguriere ich es?
BEARBEITEN: Wie in den Kommentaren angefordert, füge ich diese Informationen hinzu: Ich verwende ein Lenovo G550.
EDIT: Wie hier angefordert meine lsusb Ausgabe
Bus 002 Device 019: ID 1058:25a3 Western Digital Technologies, Inc.
Bus 002 Device 017: ID 1b1a:7001
Bus 002 Device 009: ID 2109:2812 VIA Labs, Inc. VL812 Hub
Bus 002 Device 008: ID 2109:2812 VIA Labs, Inc. VL812 Hub
Bus 002 Device 003: ID 0402:5608 ALi Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 006: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
EDIT: Ich denke, diese Information führt auch zur Antwort.
root@localhost:/sys/bus/usb/devices# ls -al
insgesamt 0
drwxr-xr-x 2 root root 0 Okt 6 10:56 .
drwxr-xr-x 4 root root 0 Okt 6 10:56 ..
lrwxrwxrwx 1 root root 0 Okt 6 10:56 1-0:1.0 -> ../../../devices/pci0000:00/0000:00:1a.7/usb1/1-0:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-0:1.0 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-0:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-3 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-3
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-3:1.0 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-3/2-3:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-3:1.1 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-3/2-3:1.1
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-5 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-5
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-5.1 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.1
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-5:1.0 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-5.1:1.0 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.1/2-5.1:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-5.1.2 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.1/2-5.1.2
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-5.1.2:1.0 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.1/2-5.1.2/2-5.1.2:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-5.1.2:1.1 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.1/2-5.1.2/2-5.1.2:1.1
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-5.2 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.2
lrwxrwxrwx 1 root root 0 Okt 6 10:56 2-5.2:1.0 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.2/2-5.2:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 3-0:1.0 -> ../../../devices/pci0000:00/0000:00:1a.0/usb3/3-0:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 4-0:1.0 -> ../../../devices/pci0000:00/0000:00:1a.1/usb4/4-0:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 5-0:1.0 -> ../../../devices/pci0000:00/0000:00:1a.2/usb5/5-0:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 6-0:1.0 -> ../../../devices/pci0000:00/0000:00:1d.0/usb6/6-0:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 6-1 -> ../../../devices/pci0000:00/0000:00:1d.0/usb6/6-1
lrwxrwxrwx 1 root root 0 Okt 6 10:56 6-1:1.0 -> ../../../devices/pci0000:00/0000:00:1d.0/usb6/6-1/6-1:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 6-1:1.1 -> ../../../devices/pci0000:00/0000:00:1d.0/usb6/6-1/6-1:1.1
lrwxrwxrwx 1 root root 0 Okt 6 10:56 6-1:1.2 -> ../../../devices/pci0000:00/0000:00:1d.0/usb6/6-1/6-1:1.2
lrwxrwxrwx 1 root root 0 Okt 6 10:56 7-0:1.0 -> ../../../devices/pci0000:00/0000:00:1d.1/usb7/7-0:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 8-0:1.0 -> ../../../devices/pci0000:00/0000:00:1d.2/usb8/8-0:1.0
lrwxrwxrwx 1 root root 0 Okt 6 10:56 usb1 -> ../../../devices/pci0000:00/0000:00:1a.7/usb1
lrwxrwxrwx 1 root root 0 Okt 6 10:56 usb2 -> ../../../devices/pci0000:00/0000:00:1d.7/usb2
lrwxrwxrwx 1 root root 0 Okt 6 10:56 usb3 -> ../../../devices/pci0000:00/0000:00:1a.0/usb3
lrwxrwxrwx 1 root root 0 Okt 6 10:56 usb4 -> ../../../devices/pci0000:00/0000:00:1a.1/usb4
lrwxrwxrwx 1 root root 0 Okt 6 10:56 usb5 -> ../../../devices/pci0000:00/0000:00:1a.2/usb5
lrwxrwxrwx 1 root root 0 Okt 6 10:56 usb6 -> ../../../devices/pci0000:00/0000:00:1d.0/usb6
lrwxrwxrwx 1 root root 0 Okt 6 10:56 usb7 -> ../../../devices/pci0000:00/0000:00:1d.1/usb7
lrwxrwxrwx 1 root root 0 Okt 6 10:56 usb8 -> ../../../devices/pci0000:00/0000:00:1d.2/usb8
BEARBEITEN:
tokam@localhost:~$ lsusb -t
/: Bus 08.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 07.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 06.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
|__ Port 1: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 1: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 1: Dev 2, If 2, Class=Human Interface Device, Driver=usbhid, 12M
/: Bus 05.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M
|__ Port 3: Dev 3, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 3: Dev 3, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 5: Dev 51, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 52, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 2: Dev 54, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 2: Dev 54, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 2: Dev 53, If 0, Class=Mass Storage, Driver=usb-storage, 480M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M
Antworten:
Der derzeitige Stolperstein mit OP-Links, Nachverfolgungskommentaren und vorgeschlagenen Antworten ist die statische Produkt-ID,
1b1a:7001
aber die Bus- und Gerätenummern ändern sich ständig.Die Lösung
Erstellen Sie ein Skript (einen beliebigen Namen) im Verzeichnis
/etc/pm/sleep.d/
und fügen Sie Folgendes ein:sudo chmod +x file_name
Markieren Sie die Datei als ausführbar, wobei "Dateiname" der von Ihnen gewählte Name ist.Die Erklärung
Diese Lösung schaltet den gesamten USB-Hub aus, was in meinem Fall Telefon, drahtlose Maus, drahtlose Tastatur usw. bedeutete. Beim Aufrufen des Skripts über die Terminal-Eingabeaufforderung muss das sudo-Kennwort eingegeben werden. Hoffentlich werden beim Aufruf von Systemd Sudo-Kräfte vererbt. Ich konnte dies jedoch nicht testen, da ich keine kabelgebundene Maus besitze. Daher kann eine zusätzliche Verfeinerung für Sudo-Kräfte erforderlich sein.
Die Stromversorgung wird nicht physisch unterbrochen, wenn das BIOS eine konstante 5-V-Stromversorgung bereitstellt. Stattdessen werden die Geräte am Bus angewiesen, sich selbst auszuschalten. In meinem Fall funktionierten die drahtlose Tastatur und Maus nicht mehr und mussten auf die Laptop-Tastatur und das Touchpad zurückgreifen, um die Stromversorgung wiederherzustellen.
Sie können dies manuell testen, indem Sie das Skript aufrufen und die Parameter "suspend" übergeben. Das Übergeben des Parameters "resume" führt zu nichts, da das Gerät ausgeschaltet ist und keine Geräte-ID hat, um es wieder einzuschalten.
Einfachere Lösung zum Ausschalten aller USB-Anschlüsse
Ich bin vor kurzem auf ein Problem gestoßen, bei dem ein unbekannter Anschluss das Anhalten des Laptops verhinderte. Ich habe diese Lösung (Gutschrift im Code) gefunden, die ich geändert habe.
Erstellen Sie die Datei
/lib/systemd/system-sleep/custom-xhci_hcd
mitsudo
Power und fügen Sie diesen Code ein:quelle
Suchen Sie den Bus und die Gerätenummer Ihrer Maus, indem Sie den Befehl
lsusb
(mit und ohne angeschlossene Maus ) eingeben, der nur angezeigt werden soll, wenn er angeschlossen ist. Notieren Sie sich die Nummern. In Ihrem Fall scheinen sie 6 und 6 zu seinGeben Sie den Befehl aus
sudo cp /etc/pm/sleep.d/novatel_3g_suspend /etc/pm/sleep.d/mouse_suspend
(dies ist erforderlich, dagedit
beim Start als Superuser keine Option zum Speichern unter mehr verfügbar ist.)Geben Sie den Befehl
gksu gedit /etc/pm/sleep.d/mouse_suspend
Ändern Sie die Bus- und Gerätenummern so, dass sie denen entsprechen, die Sie zuvor notiert haben. Speichern Sie die resultierende Datei. Es wird ausgeführt, wenn Sie Ihren Laptop anhalten.In Ihrem Fall sollten Sie BUS = X und DEVICE = Y in die Bus- und Gerätenummern ändern, die der betreffenden Maus entsprechen. Dies funktioniert so lange, bis Sie das Gerät an einen anderen Anschluss verschieben. In diesem Fall müssen Sie das Gerät erneut suchen und die Datei entsprechend anpassen.
Die Kommentare in der Datei (Zeilen, die mit # beginnen) sind irrelevant und können ignoriert werden.
Hinweis: Ich habe dies über Suspend auf einem Desktop getestet und es hat wie angekündigt funktioniert. Ich habe keinen Zugriff auf die gleiche Hardware, die Sie haben, aber ich musste das System über den Netzschalter wiederaufnehmen, sodass ich mir ziemlich sicher bin, dass dies für Sie funktionieren wird.
Bearbeitung basierend auf Kommentaren und Erweiterung der Frage:
Es scheint, dass dies die Informationen sind, die Sie benötigen, um fortzufahren:
Bus 006 Device 006: ID 046d:c52b Logitech, Inc. Unifying Receiver
quelle
gedit
Ubuntu 16.04 Vanilla Upgrade von 14.04 gibt es eineSave as
Option unter demFile
Menü. Irgendwas muss mit deiner Konfiguration passiert sein ??? PS gute Antwort, ich werde es später versuchen.Save As
wenn ich tippegedit
, wird das gesamte Hauptmenü der "Datei Bearbeiten Ansicht Suchwerkzeuge Dokumente Hilfe" angezeigt, aber wenn ich tippe, wird die Menüliste nicht angezeigtgksu gedit
. HTH.lsusb -t
undlsusb
mit allen angeschlossenen Geräten aktualisieren, wie Sie sie normalerweise täglich verwenden. Das könnte uns helfen, den Hub zu visualisieren und was nicht.