Es wäre gut zu wissen, dass, wenn Sie ein USB-Gerät wie eine Webcam anschließen, es mich benachrichtigt, ob es funktioniert oder nicht.
Akzeptierte Antwort:
Es ist wirklich überraschend für mich, dass wir diese Funktion im Jahr 2014 immer noch nicht standardmäßig haben. Es scheint, dass es sehr wenige Leute gibt, die diese Funktion brauchen, aber ich wirklich brauchen.
Zuerst habe ich das Paket udev-notify gefunden, aber leider funktioniert es bei mir fast nicht:Es funktioniert nur sehr kurze Zeit (1-2 Minuten) und dann, wenn ich ein Gerät anschließe/trenne, stürzt es ab:
Traceback (most recent call last):
File "./udev-notify.py", line 319, in <module>
notification.show()
glib.GError: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name :1.1061 was not provided by any .service files
Ich habe keine Lösung gefunden, also musste ich es entfernen. (auch Fehlerbericht eingereicht)
Es gibt keine ähnlichen Dienstprogramme, die ich bisher gefunden habe. Also musste ich meine eigene Lösung implementieren, es ist wahrscheinlich nicht brillant, aber es funktioniert für mich:Es benachrichtigt mich mit akustischer und visueller Benachrichtigung für alle Gerät, das ich ein-/ausstecke. Titel des Geräts wird über lsusb
empfangen , sodass ich zumindest seine vendor_id:product_id
sehe, wenn ich ein unbekanntes Gerät anschließe . Gefällt mir.
Es sieht so aus:
Installationsdetails.
Getestet auf Ubuntu 12.04, Xubuntu 12.04, Xubuntu 13.04, Linux Mint 13. Ich glaube, es sollte auf anderen Ubuntu-Derivaten funktionieren, und ich hoffe, es funktioniert auf jedem *nix-System mit udev
.
- Gehen Sie zur Projektseite, holen Sie sich Quellen von dort und legen Sie sie irgendwo ab. Es enthält nur ein Hauptskript:
my-udev-notify.sh
, aber das Archiv enthält auch Sounds für Plug-/Unplug-Benachrichtigungen sowie einige weitere Informationen, siehereadme.txt
für Details. - Erstellen Sie die Datei
/etc/udev/rules.d/my-udev-notify.rules
mit folgendem Inhalt:(Vergessen Sie nicht, den Pfad in Ihren tatsächlichen Pfad zu ändern, in dem Siemy-udev-notify.sh
entpackt haben !)
ACTION=="add", RUN+="/bin/bash /path/to/my-udev-notify.sh -a add -p '%p' -b '$attr{busnum}' -d '$attr{devnum}'"
ACTION=="remove", RUN+="/bin/bash /path/to/my-udev-notify.sh -a remove -p '%p' -b '$attr{busnum}' -d '$attr{devnum}'"
Danach sollte es für neu angeschlossene Geräte funktionieren. Das heißt, wenn Sie
ein Gerät ausstecken, erhalten Sie keine Benachrichtigung. Aber wenn Sie es wieder anschließen, werden Sie es tun.
(Ja, bei mir funktioniert es ohne Neustart von udev. Wenn es bei Ihnen nicht funktioniert, versuchen Sie es mit einem
Neustart)
Damit es für alle Geräte funktioniert, starten Sie einfach Ihr System neu. BEACHTEN SIE, dass beim ersten Start möglicherweise
viele Benachrichtigungen angezeigt werden (siehe bekannte Probleme in der readme.txt
). Beim zweiten
Booten gibt es keine Benachrichtigungen (es sei denn, Sie schließen ein neues Gerät an, während das System
ausgeschaltet ist)
Sie können es anpassen (visuelle und akustische Benachrichtigungen ein-/ausschalten oder Töne ändern). Einzelheiten finden Sie in der readme.txt im Archiv.