udev rules funktionieren nach update nicht mehr

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Kermit24
Beiträge: 315
Registriert: 29.04.2006 14:44:39

udev rules funktionieren nach update nicht mehr

Beitrag von Kermit24 » 31.01.2015 08:37:38

Hallo,

ich habe udev in wheezy aktualisiert und nun funktionert folgende udev-Regel nicht mehr:

Code: Alles auswählen

cat 70-kindle.rules 
KERNEL=="usb[0-9]*", SYSFS{idVendor}=="0525", SYSFS{idProduct}=="a4a2", RUN+="/sbin/ifconfig %k 192.168.15.1 up"
udevd läuft, aber der ifconfig Befehl scheint nicht mehr zu funktionieren. Wenn ich den manuell eingebe, funktioniert es. Hat sich bei udev was geändert oder ist das ein Rechteproblem?
Ich habe übrigens von udev 171-1 auf udev 175-7.2 upgedatet. Habe auch etliche andere Pakete auf aktuellen Stand in wheezy gebracht

Benutzeravatar
Taomon
Beiträge: 627
Registriert: 08.03.2011 16:34:38
Lizenz eigener Beiträge: GNU Free Documentation License

Re: udev rules funktionieren nach update nicht mehr

Beitrag von Taomon » 04.02.2015 11:01:44

Code: Alles auswählen

udevadm test /sys/pfad/zu/Deinem/Device > name.txt
Laaaanger Text.
Den Pfad solltest durch

Code: Alles auswählen

hwinfo
raus kriegen.

Gruß Taomon
Bitte gelegentliche Schreibfehler übersehen. Ich habe ADHS. Danke.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: udev rules funktionieren nach update nicht mehr

Beitrag von rendegast » 04.02.2015 12:40:33

KERNEL=="usb[0-9]*", SYSFS{idVendor}=="0525", SYSFS{idProduct}=="a4a2", RUN+="/sbin/ifconfig %k 192.168.15.1 up"
Vielleicht eher

Code: Alles auswählen

KERNEL=="usb[0-9]*", ATTR{idVendor}=="0525", ATTR{idProduct}=="a4a2", RUN+="/sbin/ifconfig %k 192.168.15.1 up"
RUN+="/sbin/ifconfig %k 192.168.15.1 up"
Wenn ich den manuell eingebe, funktioniert es.
Was gibst Du da ein?
Und was versucht udev gegebenenfalls auszuführen
/sbin/ifconfig ?????? 192.168.15.1 up
?
Das 'udevadm test ...' sollte Aufschluß geben.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Kermit24
Beiträge: 315
Registriert: 29.04.2006 14:44:39

Re: udev rules funktionieren nach update nicht mehr

Beitrag von Kermit24 » 12.02.2015 18:51:13

udevadm sagt:

Code: Alles auswählen

add_rule: unknown key 'SYSFS{idVendor}' in /etc/udev/rules.d/70-kindle.rules:1
add_rule: invalid rule '/etc/udev/rules.d/70-kindle.rules:1'
Wieso ist der Key nach dem Update von udev plötzlich nicht mehr bekannt?

Code: Alles auswählen

zcat /var/log/apt/term.log.* | grep udev
Vorbereitung zum Ersetzen von udev 171-1 (durch .../archives/udev_175-7.2_i386.deb) ...
Ersatz für udev wird entpackt ...
Vorbereitung zum Ersetzen von libudev0 171-1 (durch .../libudev0_175-7.2_i386.deb) ...
Ersatz für libudev0:i386 wird entpackt ...
libudev0:i386 (175-7.2) wird eingerichtet ...
udev (175-7.2) wird eingerichtet ...
Neue Version der Konfigurationsdatei /etc/init.d/udev wird installiert ...
Neue Version der Konfigurationsdatei /etc/udev/udev.conf wird installiert ...
[ ok ] Stopping the hotplug events dispatcher: udevd.
[ ok ] Starting the hotplug events dispatcher: udevd.
Heute habe ich schon wieder ein Gerät nutzen wollen, was nicht mehr funktioniert, weil udev die Regel nicht mehr bearbeitet. :(

Kermit24
Beiträge: 315
Registriert: 29.04.2006 14:44:39

Re: udev rules funktionieren nach update nicht mehr

Beitrag von Kermit24 » 12.02.2015 18:59:47

Habe SYSFS mal durch ATTR ersetzt und udev restartet. Jetzt kommt die Parse-Fehlermeldung bei udevadm nicht mehr, aber es funktioniert immer noch nicht. Das Gerät erhält die IP Adresse weiterhin erst, wenn ich sie manuell setze.

Vielmehr ärgert es mich jetzt schon, das der SYSFS Key offenbar durch ATTR ersetzt wurde ohne Abwärtskompatibilität? Muss ich jetzt etwa meine ganzen rules ändern? Was soll der Unfug? :(

Ich setze die IP mit "ifconfig usb0 192.168.15.1 up", was vorher mit im ersten Beitrag genannter udev rule immer einwandfrei funktioniert hat.


Nachtrag: Hier mal die Ausgaben von udevadm ohne die ganzen parse-Meldungunge am Anfang:

Code: Alles auswählen

udev_rules_new: rules use 220176 bytes tokens (18348 * 12 bytes), 37089 bytes buffer
udev_rules_new: temporary index used 59780 bytes (2989 * 20 bytes)
udev_device_new_from_syspath: device 0x9b3f450 has devpath '/devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1:1.1'
udev_device_new_from_syspath: device 0x9b46148 has devpath '/devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1:1.1'
udev_device_read_db: no db file to read /run/udev/data/+usb:3-1:1.1: No such file or directory
udev_device_new_from_syspath: device 0x9b467f0 has devpath '/devices/pci0000:00/0000:00:1d.7/usb3/3-1'
udev_device_new_from_syspath: device 0x9b46c10 has devpath '/devices/pci0000:00/0000:00:1d.7/usb3'
udev_device_new_from_syspath: device 0x9b47060 has devpath '/devices/pci0000:00/0000:00:1d.7'
udev_device_new_from_syspath: device 0x9b474a0 has devpath '/devices/pci0000:00'
udev_rules_apply_to_event: RUN 'socket:@/org/freedesktop/hal/udev_event' /lib/udev/rules.d/90-hal.rules:2
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1:1.1
DEVTYPE=usb_interface
DRIVER=cdc_ether
INTERFACE=10/0/0
MODALIAS=usb:v0525pA4A2d0325dc02dsc00dp00ic0Aisc00ip00in01
PRODUCT=525/a4a2/325
SUBSYSTEM=usb
TYPE=2/0/0
UDEV_LOG=6
USEC_INITIALIZED=1126575893254
run: 'socket:@/org/freedesktop/hal/udev_event'
Wieso erfolgt der ifconfig Befehl nicht mehr?

Kermit24
Beiträge: 315
Registriert: 29.04.2006 14:44:39

Re: udev rules funktionieren nach update nicht mehr

Beitrag von Kermit24 » 12.02.2015 19:33:12

Kann man udev irgendwie downgraden? Habe jetzt für ein anderes Gerät die udev-rule angepasst (SYSFS durch ATTR ersetzt, sowie BUS durch SUBSYSTEM), wo auch nichts bei rauskommt :(

Code: Alles auswählen

cat 70-fs20.rules 
SUBSYSTEM=="usb", ATTR{idProduct}=="2303", ATTR{idVendor}=="067b", MODE="0666", GROUP="server", SYMLINK+="fs20"
Das Gerät wird über /dev/fs20 von mehreren Scripten angesprochen. Vor dem Update wurde der Symlink auf /dev/ttyUSB0 angelegt. Jetzt nach dem Update zeigt der Symlink auf ein Device, dass ich nicht mehr nutzen kann:

Code: Alles auswählen

ls -l  /dev/fs20
lrwxrwxrwx 1 root root 15 12. Feb 19:25 /dev/fs20 -> bus/usb/003/023

schalten.sh
stty: /dev/fs20: Die Operation ist nicht erlaubt

Benutzeravatar
Taomon
Beiträge: 627
Registriert: 08.03.2011 16:34:38
Lizenz eigener Beiträge: GNU Free Documentation License

Re: udev rules funktionieren nach update nicht mehr

Beitrag von Taomon » 12.02.2015 19:38:02

Netzwerk ist nicht meine Stärke. Ist Dein Kindle schon vorher mit diesem Treiber gelaufen?

Code: Alles auswählen

DRIVER=cdc_ether
Steht das Ding in der

Code: Alles auswählen

cat /etc/udev/rules.d/70-persistent-net.rules 
Gruß Taomon
Bitte gelegentliche Schreibfehler übersehen. Ich habe ADHS. Danke.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: udev rules funktionieren nach update nicht mehr

Beitrag von rendegast » 12.02.2015 20:24:36

Die Regel paßt auf das Gerät, da ist aber eventuell noch kein Netz-Interface vorhanden
Ich setze die IP mit "ifconfig usb0 192.168.15.1 up",
Mal

Code: Alles auswählen

udevadm info -a  -p /sys/class/net/usb0  |  head -n 50
Vgl. hier
...
KERNEL=="eth0"
SUBSYSTEM=="net"
DRIVER==""
ATTR{mtu}=="1500"
ATTR{type}=="1"
ATTR{netdev_group}=="0"
ATTR{flags}=="0x1303"
ATTR{speed}=="100"
ATTR{dormant}=="0"
ATTR{addr_assign_type}=="0"
ATTR{dev_id}=="0x0"
ATTR{duplex}=="full"
ATTR{iflink}=="2"
ATTR{addr_len}=="6"
ATTR{address}=="00:xx:xx:xx:xx:xx"
...
Ein passende Regel scheint mir dann

Code: Alles auswählen

KERNEL=="usb[0-9]*", SUBSYSTEM=="net",ATTR{address}=="00:xx:xx:xx:xx:xx", RUN+="/sbin/ifconfig %k 192.168.15.1 up"
(mit dem Syntax Deines udevadm/udev abgleichen)
Ich würde einen solchen Befehl aber hier nicht einsetzen,
sondern stattdessen ein Skript aufrufen mit dem ganzen Brimborium darin (Fallunterscheidungen usw.).



Kermit24 hat geschrieben: Vielmehr ärgert es mich jetzt schon, das der SYSFS Key offenbar durch ATTR ersetzt wurde ohne Abwärtskompatibilität? Muss ich jetzt etwa meine ganzen rules ändern? Was soll der Unfug?
Es ist ein Kreuz.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Kermit24
Beiträge: 315
Registriert: 29.04.2006 14:44:39

Re: udev rules funktionieren nach update nicht mehr

Beitrag von Kermit24 » 08.11.2015 16:34:59

So, nachdem heute wieder mal mein USB total spinnt (würde den Erfinder von USB gerne teeren und federn! Bussystem und Hardwarestecker sind beide besch...en) und ich seit über einem halben Jahr alles nach einem USB-Reset per Hand konfiguriere, habe ich mich mal wieder mit udev beschäftigt.

Die Rule für meinen Kindle funktioniert nun wieder! SYSFS musste ich nicht durch ATTR ersetzen, sondern durch ATTRS.

Meine FS20 Symlink muss ich aber wohl weiter per Hand korrigieren: Dort funktioniert es weder ATTR, noch ATTRS. Der Symlink wird immer falsch gesetzt (nicht auf /dev/ttyUSB1)

Nachtrag: So mein FS20 Symlink funktioniert nun auch wieder. Habe in der Regel SUBSYSTEM=="usb" durch KERNEL=="ttyUSB*" getauscht.

Antworten