[SOLVED] udev rules: cannot run command

I want to run a scipt everytime I plug in my external harddrive. I read the documentation and create a file called /etc/udev/rules.d/extern_hd.rules:
SUBSYSTEMS=="usb", SYSFS{serial}=="33504D315647585A", SYMLINK+="ExternHD", RUN+="/root/scripts/test.sh"
The symlink "ExternHD" gets created. The permissions of test.sh are rwxr-xr-x root root, but it never gets executed. What am I doing wrong?
Last edited by Kei (2007-09-18 11:30:35)

Solution was easy... Udev doesn't want to start anything from within /root, so I put a hardlink to /usr/local/bin/ and now everything works fine.

Similar Messages

  • Cannot run command window

    In Windows I would expect to call up a seperate command window with the following, but it appears to freeze up. What am I doing wrong?
    import java.io.*;
    public class command {    
      public static void main(String[]args) {
        try {
          Process runprogram = Runtime.getRuntime().exec("C:\\windows\\system32\\cmd.exe");
          try {
            runprogram.waitFor();
          catch(InterruptedException e){}
        catch(IOException e) {
          System.err.println("Cannot run command window");
    }

    What about this...
        Process proc = null;
        try
          proc = Runtime.getRuntime().exec("start cmd");
          proc.waitFor();
        catch(Exception e)
          e.printStackTrace();
        }Some dukies would be nice next time ;-)

  • [SOLVED] udev rule no longer working

    I have a udev rule set up to automatically mount an ext4 filesystem when I plug a certain thumb drive in.  It was working fine until yesterday (probably due to updates).  Here is the rule, in file /etc/udev/rules.d/99-gfk.rules:
    KERNEL=="sd?2", SUBSYSTEM=="block", ATTRS{idVendor}=="0930", ATTRS{idProduct}=="6545", ATTRS{serial}=="1C6F654E4041ED601910053F", SYMLINK+="gfshare"
    ACTION=="add", KERNEL=="sd?2", SUBSYSTEM=="block", ATTRS{idVendor}=="0930", ATTRS{idProduct}=="6545", ATTRS{serial}=="1C6F654E4041ED601910053F", RUN+="/bin/mkdir /media/gfshare"
    ACTION=="add", KERNEL=="sd?2", SUBSYSTEM=="block", ATTRS{idVendor}=="0930", ATTRS{idProduct}=="6545", ATTRS{serial}=="1C6F654E4041ED601910053F", RUN+="/bin/mount -t ext4 -o ro,nosuid,nodev,noexec,noatime /dev/gfshare /media/gfshare"
    The symlink and the mkdir command are both working fine, but the mount command is not being run for some reason.  If I manually run the mount command it works fine.  Some possibly helpful output:
    # pacman -Qo $(which udevadm)
    /usr/bin/udevadm is owned by systemd 212-1
    # dmesg |tail -16
    [26458.120628] usb 7-1.3: new high-speed USB device number 7 using ehci-pci
    [26458.223059] usb-storage 7-1.3:1.0: USB Mass Storage device detected
    [26458.223825] scsi10 : usb-storage 7-1.3:1.0
    [26459.311607] scsi 10:0:0:0: Direct-Access Kingston DataTraveler 2.0 PMAP PQ: 0 ANSI: 4
    [26460.834081] sd 10:0:0:0: [sdd] 15240576 512-byte logical blocks: (7.80 GB/7.26 GiB)
    [26460.834931] sd 10:0:0:0: [sdd] Write Protect is off
    [26460.834935] sd 10:0:0:0: [sdd] Mode Sense: 23 00 00 00
    [26460.835617] sd 10:0:0:0: [sdd] No Caching mode page found
    [26460.835621] sd 10:0:0:0: [sdd] Assuming drive cache: write through
    [26460.839455] sd 10:0:0:0: [sdd] No Caching mode page found
    [26460.839460] sd 10:0:0:0: [sdd] Assuming drive cache: write through
    [26460.860579] sdd: sdd1 sdd2
    [26460.867111] sd 10:0:0:0: [sdd] No Caching mode page found
    [26460.867115] sd 10:0:0:0: [sdd] Assuming drive cache: write through
    [26460.867118] sd 10:0:0:0: [sdd] Attached SCSI removable disk
    [26461.041982] EXT4-fs (sdd2): mounted filesystem with ordered data mode. Opts: (null)
    # udevadm test /sys/bus/usb/devices/7-1.3
    calling: test
    version 212
    This program is for debugging only, it does not run any program
    specified by a RUN key. It may show incorrect results, because
    some values may be different, or not available at a simulation run.
    load module index
    timestamp of '/etc/systemd/network' changed
    timestamp of '/usr/lib/systemd/network' changed
    Parsed configuration file /usr/lib/systemd/network/99-default.link
    Created link configuration context
    timestamp of '/etc/udev/rules.d' changed
    Skipping overridden file: /usr/lib/udev/rules.d/80-net-setup-link.rules.
    read rules file: /usr/lib/udev/rules.d/10-dm.rules
    read rules file: /usr/lib/udev/rules.d/11-dm-lvm.rules
    read rules file: /etc/udev/rules.d/12-android.rules
    read rules file: /usr/lib/udev/rules.d/13-dm-disk.rules
    read rules file: /usr/lib/udev/rules.d/40-hpet-permissions.rules
    read rules file: /usr/lib/udev/rules.d/40-usb-media-players.rules
    read rules file: /usr/lib/udev/rules.d/42-usb-hid-pm.rules
    read rules file: /usr/lib/udev/rules.d/50-firmware.rules
    read rules file: /usr/lib/udev/rules.d/50-udev-default.rules
    read rules file: /usr/lib/udev/rules.d/51-android.rules
    read rules file: /usr/lib/udev/rules.d/60-cdrom_id.rules
    read rules file: /usr/lib/udev/rules.d/60-drm.rules
    read rules file: /usr/lib/udev/rules.d/60-keyboard.rules
    read rules file: /usr/lib/udev/rules.d/60-pcmcia.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-alsa.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-input.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-serial.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-storage-tape.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-storage.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-v4l.rules
    read rules file: /usr/lib/udev/rules.d/60-vboxdrv.rules
    read rules file: /usr/lib/udev/rules.d/61-accelerometer.rules
    read rules file: /usr/lib/udev/rules.d/63-md-raid-arrays.rules
    read rules file: /usr/lib/udev/rules.d/64-btrfs.rules
    read rules file: /usr/lib/udev/rules.d/64-md-raid-assembly.rules
    read rules file: /usr/lib/udev/rules.d/69-cd-sensors.rules
    read rules file: /usr/lib/udev/rules.d/69-dm-lvm-metad.rules
    read rules file: /usr/lib/udev/rules.d/69-libmtp.rules
    read rules file: /usr/lib/udev/rules.d/70-infrared.rules
    read rules file: /usr/lib/udev/rules.d/70-power-switch.rules
    read rules file: /usr/lib/udev/rules.d/70-uaccess.rules
    read rules file: /usr/lib/udev/rules.d/71-seat.rules
    read rules file: /usr/lib/udev/rules.d/73-seat-late.rules
    read rules file: /usr/lib/udev/rules.d/75-net-description.rules
    read rules file: /usr/lib/udev/rules.d/75-probe_mtd.rules
    read rules file: /usr/lib/udev/rules.d/75-tty-description.rules
    read rules file: /usr/lib/udev/rules.d/78-sound-card.rules
    read rules file: /usr/lib/udev/rules.d/80-drivers.rules
    read rules file: /etc/udev/rules.d/80-net-setup-link.rules
    read rules file: /usr/lib/udev/rules.d/80-udisks.rules
    read rules file: /usr/lib/udev/rules.d/80-udisks2.rules
    read rules file: /usr/lib/udev/rules.d/85-usbmuxd.rules
    read rules file: /usr/lib/udev/rules.d/90-alsa-restore.rules
    read rules file: /usr/lib/udev/rules.d/95-cd-devices.rules
    read rules file: /usr/lib/udev/rules.d/95-dm-notify.rules
    read rules file: /usr/lib/udev/rules.d/95-udev-late.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-dell.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-fujitsu.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-gateway.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-ibm.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-lenovo.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-toshiba.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-csr.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-hid.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-wup.rules
    read rules file: /etc/udev/rules.d/99-gfk.rules
    read rules file: /usr/lib/udev/rules.d/99-systemd.rules
    read rules file: /usr/lib/udev/rules.d/kino.rules
    rules contain 98304 bytes tokens (8192 * 12 bytes), 22360 bytes strings
    10092 strings (88570 bytes), 8317 de-duplicated (67986 bytes), 1776 trie nodes used
    IMPORT builtin 'usb_id' /usr/lib/udev/rules.d/50-udev-default.rules:9
    IMPORT builtin 'hwdb' /usr/lib/udev/rules.d/50-udev-default.rules:9
    MODE 0664 /usr/lib/udev/rules.d/50-udev-default.rules:37
    GROUP 1002 /usr/lib/udev/rules.d/51-android.rules:387
    MODE 0660 /usr/lib/udev/rules.d/51-android.rules:387
    RUN '/usr/share/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass} vboxusers' /usr/lib/udev/rules.d/60-vboxdrv.rules:6
    PROGRAM '/usr/lib/udev/mtp-probe /sys/devices/pci0000:00/0000:00:1a.7/usb7/7-1/7-1.3 7 7' /usr/lib/udev/rules.d/69-libmtp.rules:1204
    starting '/usr/lib/udev/mtp-probe /sys/devices/pci0000:00/0000:00:1a.7/usb7/7-1/7-1.3 7 7'
    '/usr/lib/udev/mtp-probe /sys/devices/pci0000:00/0000:00:1a.7/usb7/7-1/7-1.3 7 7'(out) '0'
    '/usr/lib/udev/mtp-probe /sys/devices/pci0000:00/0000:00:1a.7/usb7/7-1/7-1.3 7 7' [24644] exit with return code 0
    IMPORT builtin 'path_id' /usr/lib/udev/rules.d/71-seat.rules:43
    RUN 'uaccess' /usr/lib/udev/rules.d/73-seat-late.rules:15
    handling device node '/dev/bus/usb/007/007', devnum=c189:774, mode=0660, uid=0, gid=1002
    preserve permissions /dev/bus/usb/007/007, 020660, uid=0, gid=1002
    preserve already existing symlink '/dev/char/189:774' to '../bus/usb/007/007'
    ACTION=add
    BUSNUM=007
    DEVNAME=/dev/bus/usb/007/007
    DEVNUM=007
    DEVPATH=/devices/pci0000:00/0000:00:1a.7/usb7/7-1/7-1.3
    DEVTYPE=usb_device
    DRIVER=usb
    ID_BUS=usb
    ID_DRIVE_THUMB=1
    ID_FOR_SEAT=usb-pci-0000_00_1a_7-usb-0_1_3
    ID_MODEL=DataTraveler_2.0
    ID_MODEL_ENC=DataTraveler\x202.0
    ID_MODEL_FROM_DATABASE=Kingston DataTraveler 102 Flash Drive / HEMA Flash Drive 2 GB / PNY Attache 4GB Stick
    ID_MODEL_ID=6545
    ID_PATH=pci-0000:00:1a.7-usb-0:1.3
    ID_PATH_TAG=pci-0000_00_1a_7-usb-0_1_3
    ID_REVISION=0100
    ID_SERIAL=Kingston_DataTraveler_2.0_1C6F654E4041ED601910053F
    ID_SERIAL_SHORT=1C6F654E4041ED601910053F
    ID_USB_INTERFACES=:080650:
    ID_VENDOR=Kingston
    ID_VENDOR_ENC=Kingston
    ID_VENDOR_FROM_DATABASE=Toshiba Corp.
    ID_VENDOR_ID=0930
    MAJOR=189
    MINOR=774
    PRODUCT=930/6545/100
    SUBSYSTEM=usb
    TAGS=:seat:uaccess:
    TYPE=0/0/0
    USEC_INITIALIZED=26452326568
    adb_user=yes
    run: '/usr/share/virtualbox/VBoxCreateUSBNode.sh 189 774 00 vboxusers'
    run: 'uaccess'
    unload module index
    Unloaded link configuration context
    # udevadm test /sys/bus/usb/devices/7-1.3:1.0
    calling: test
    version 212
    This program is for debugging only, it does not run any program
    specified by a RUN key. It may show incorrect results, because
    some values may be different, or not available at a simulation run.
    load module index
    timestamp of '/etc/systemd/network' changed
    timestamp of '/usr/lib/systemd/network' changed
    Parsed configuration file /usr/lib/systemd/network/99-default.link
    Created link configuration context
    timestamp of '/etc/udev/rules.d' changed
    Skipping overridden file: /usr/lib/udev/rules.d/80-net-setup-link.rules.
    read rules file: /usr/lib/udev/rules.d/10-dm.rules
    read rules file: /usr/lib/udev/rules.d/11-dm-lvm.rules
    read rules file: /etc/udev/rules.d/12-android.rules
    read rules file: /usr/lib/udev/rules.d/13-dm-disk.rules
    read rules file: /usr/lib/udev/rules.d/40-hpet-permissions.rules
    read rules file: /usr/lib/udev/rules.d/40-usb-media-players.rules
    read rules file: /usr/lib/udev/rules.d/42-usb-hid-pm.rules
    read rules file: /usr/lib/udev/rules.d/50-firmware.rules
    read rules file: /usr/lib/udev/rules.d/50-udev-default.rules
    read rules file: /usr/lib/udev/rules.d/51-android.rules
    read rules file: /usr/lib/udev/rules.d/60-cdrom_id.rules
    read rules file: /usr/lib/udev/rules.d/60-drm.rules
    read rules file: /usr/lib/udev/rules.d/60-keyboard.rules
    read rules file: /usr/lib/udev/rules.d/60-pcmcia.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-alsa.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-input.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-serial.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-storage-tape.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-storage.rules
    read rules file: /usr/lib/udev/rules.d/60-persistent-v4l.rules
    read rules file: /usr/lib/udev/rules.d/60-vboxdrv.rules
    read rules file: /usr/lib/udev/rules.d/61-accelerometer.rules
    read rules file: /usr/lib/udev/rules.d/63-md-raid-arrays.rules
    read rules file: /usr/lib/udev/rules.d/64-btrfs.rules
    read rules file: /usr/lib/udev/rules.d/64-md-raid-assembly.rules
    read rules file: /usr/lib/udev/rules.d/69-cd-sensors.rules
    read rules file: /usr/lib/udev/rules.d/69-dm-lvm-metad.rules
    read rules file: /usr/lib/udev/rules.d/69-libmtp.rules
    read rules file: /usr/lib/udev/rules.d/70-infrared.rules
    read rules file: /usr/lib/udev/rules.d/70-power-switch.rules
    read rules file: /usr/lib/udev/rules.d/70-uaccess.rules
    read rules file: /usr/lib/udev/rules.d/71-seat.rules
    read rules file: /usr/lib/udev/rules.d/73-seat-late.rules
    read rules file: /usr/lib/udev/rules.d/75-net-description.rules
    read rules file: /usr/lib/udev/rules.d/75-probe_mtd.rules
    read rules file: /usr/lib/udev/rules.d/75-tty-description.rules
    read rules file: /usr/lib/udev/rules.d/78-sound-card.rules
    read rules file: /usr/lib/udev/rules.d/80-drivers.rules
    read rules file: /etc/udev/rules.d/80-net-setup-link.rules
    read rules file: /usr/lib/udev/rules.d/80-udisks.rules
    read rules file: /usr/lib/udev/rules.d/80-udisks2.rules
    read rules file: /usr/lib/udev/rules.d/85-usbmuxd.rules
    read rules file: /usr/lib/udev/rules.d/90-alsa-restore.rules
    read rules file: /usr/lib/udev/rules.d/95-cd-devices.rules
    read rules file: /usr/lib/udev/rules.d/95-dm-notify.rules
    read rules file: /usr/lib/udev/rules.d/95-udev-late.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-dell.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-fujitsu.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-gateway.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-ibm.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-lenovo.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-toshiba.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-csr.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-hid.rules
    read rules file: /usr/lib/udev/rules.d/95-upower-wup.rules
    read rules file: /etc/udev/rules.d/99-gfk.rules
    read rules file: /usr/lib/udev/rules.d/99-systemd.rules
    read rules file: /usr/lib/udev/rules.d/kino.rules
    rules contain 98304 bytes tokens (8192 * 12 bytes), 22360 bytes strings
    10092 strings (88570 bytes), 8317 de-duplicated (67986 bytes), 1776 trie nodes used
    IMPORT builtin 'hwdb' /usr/lib/udev/rules.d/50-udev-default.rules:11
    RUN 'kmod load $env{MODALIAS}' /usr/lib/udev/rules.d/80-drivers.rules:5
    ACTION=add
    DEVPATH=/devices/pci0000:00/0000:00:1a.7/usb7/7-1/7-1.3/7-1.3:1.0
    DEVTYPE=usb_interface
    DRIVER=usb-storage
    ID_MODEL_FROM_DATABASE=Kingston DataTraveler 102 Flash Drive / HEMA Flash Drive 2 GB / PNY Attache 4GB Stick
    ID_VENDOR_FROM_DATABASE=Toshiba Corp.
    INTERFACE=8/6/80
    MODALIAS=usb:v0930p6545d0100dc00dsc00dp00ic08isc06ip50in00
    PRODUCT=930/6545/100
    SUBSYSTEM=usb
    TYPE=0/0/0
    USEC_INITIALIZED=452326811
    run: 'kmod load usb:v0930p6545d0100dc00dsc00dp00ic08isc06ip50in00'
    unload module index
    Unloaded link configuration context
    Last edited by bentglasstube (2014-04-03 20:51:36)

    I see.  That is somewhat aggravating but I will find another way to achieve what I wanted I suppose.
    Thank you.  Should I mark this is solved or unsolvable or something?  Sorry, I'm new to posting on these forums.
    Edit:  I was able to achieve what I wanted with udevil as recommended by the wiki.
    Last edited by bentglasstube (2014-04-03 20:55:45)

  • [SOLVED] udev rule launch graphical app

    How can I make a udev rule launch a graphical application, like, for instance, feh?
    I've tried creating a rule detects when a specific mass storage device is connected and executes a script (/root/.scripts/feh-camera.sh). The script exports DISPLAY and XAUTHORITY and everything seems to work.
    However when I restarted a black screen appeared right after Loading Modules (that appears after Starting udev events). Removing the udev rule solved the problem, so I must be doing something wrong.
    What's the right way of doing this?
    Thanks in advance.
    Last edited by Vieira (2010-05-06 22:38:49)

    Device was not connected at boot but I'll try what you suggested anyway. Thanks for your help.
    EDIT:
    It's solved. It turns out the underlying problem was that exporting DISPLAY breaks the udev environment. For future reference solved it with:
    45-foobar.rules
    ATTRS{product}=="DSLR-A330", ATTR{removable}=="1", ENV{REMOVE_CMD}="/bin/umount /media/camera", RUN+="/bin/mount <bla bla>", RUN+="/bin/su vieira -c '/etc/udev/rules.d/45-foobar.sh'"
    and the script, where the problem was, must not export anything, just set inline, i.e.
    #!/bin/sh
    HOME=/home/vieira DISPLAY=:0 /usr/bin/feh -r /mnt/camera
    Last edited by Vieira (2010-05-06 22:35:39)

  • [solved] udev-rules for bluetooth PCMCIA

    My plan:
    get my bluetooth-PCMCIA card to work:
    CONCEPTONIC CBT100C
    Problem:
    I have to issue the following command for it to work:
    #hciattach ttyS0 bcsp
    Therefor I wrote following udev-rule that doesn't work:
    ##/etc/udev/rules.d/05-bluez-pcmcia-support.rules
    SUBSYSTEMS=="pcmcia", ATTRS{prod_id2}=="Bluetooth Card", RUN+="/usr/sbin/hciattach ttyS0 bcsp"
    My Question:
    Could someone explain to me why this rule does not work?
    Info:
    #pccardctl info
    PRODID_1="PCMCIA"
    PRODID_2="Bluetooth Card"
    PRODID_3=""
    PRODID_4=""
    MANFID=0279,950b
    FUNCID=2
    after #hciattach ttyS0 bcsp
    #udevinfo -a -p /sys/devices/pci0000\:00/0000\:00\:1e.0/0000\:06\:09.0/0.0/tty/ttyS0/
    KERNEL=="ttyS0"
    SUBSYSTEM=="tty"
    DRIVER==""
    ATTR{dev}=="4:64"
    looking at parent device '/devices/pci0000:00/0000:00:1e.0/0000:06:09.0/0.0/tty':
    KERNELS=="tty"
    SUBSYSTEMS==""
    DRIVERS==""
    looking at parent device '/devices/pci0000:00/0000:00:1e.0/0000:06:09.0/0.0':
    KERNELS=="0.0"
    SUBSYSTEMS=="pcmcia"
    DRIVERS=="serial_cs"
    ATTRS{modalias}=="pcmcia:m0279c950Bf02fn00pfn00pa281F1C5Dpb7664FB1Dpc00000000pd00000000"
    ATTRS{prod_id2}=="Bluetooth Card"
    ATTRS{prod_id1}=="PCMCIA"
    ATTRS{card_id}=="0x950b"
    ATTRS{manf_id}=="0x0279"
    ATTRS{func_id}=="0x02"
    ATTRS{pm_state}=="on"
    ATTRS{function}=="0x00"
    looking at parent device '/devices/pci0000:00/0000:00:1e.0/0000:06:09.0':
    KERNELS=="0000:06:09.0"
    SUBSYSTEMS=="pci"
    DRIVERS=="yenta_cardbus"
    ATTRS{msi_bus}=="1"
    ATTRS{broken_parity_status}=="0"
    ATTRS{enable}=="2"
    ATTRS{modalias}=="pci:v00001180d00000476sv0000144Dsd0000C01Ebc06sc07i00"
    ATTRS{local_cpus}=="f"
    ATTRS{irq}=="16"
    ATTRS{class}=="0x060700"
    ATTRS{subsystem_device}=="0xc01e"
    ATTRS{subsystem_vendor}=="0x144d"
    ATTRS{device}=="0x0476"
    ATTRS{vendor}=="0x1180"
    looking at parent device '/devices/pci0000:00/0000:00:1e.0':
    KERNELS=="0000:00:1e.0"
    SUBSYSTEMS=="pci"
    DRIVERS==""
    ATTRS{msi_bus}=="1"
    ATTRS{broken_parity_status}=="0"
    ATTRS{enable}=="1"
    ATTRS{modalias}=="pci:v00008086d00002448sv00000000sd00000000bc06sc04i01"
    ATTRS{local_cpus}=="f"
    ATTRS{irq}=="0"
    ATTRS{class}=="0x060401"
    ATTRS{subsystem_device}=="0x0000"
    ATTRS{subsystem_vendor}=="0x0000"
    ATTRS{device}=="0x2448"
    ATTRS{vendor}=="0x8086"
    looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""
    ATTRS{uevent}==""
    #dmesg
    pccard: PCMCIA card inserted into slot 0
    cs: memory probe 0xb4000000-0xb40fffff: excluding 0xb4000000-0xb400ffff
    pcmcia: registering new device pcmcia0.0
    ttyS0: detected caps 00000700 should be 00000100
    0.0: ttyS0 at I/O 0x400 (irq = 3) is a 16C950/954
    Last edited by mehldutt (2007-08-07 18:04:37)

    I called it
    05-bluez-pcmcia-support.rules
    I rebooted but still no success.
    I also tried this:
    ACTION=="add", SUBSYSTEMS=="pcmcia", ATTRS{prod_id2}=="Bluetooth Card", RUN+="aplay /usr/share/sounds/phone.wav"
    But still no success

  • [SOLVED] Udev rule to hibernate my laptop at certain battery level

    Hi!
    I'm needing this kind of udev rule, to have my laptop automatically hibernate when battery level is about 3% (or 5, it doesn't matter).
    I don't want to have a little script running in the background that every eg 5 seconds polls my battery level, because i find it a really rough system.
    I guess i can use udev to reach what i want.
    udevadm info --path=/sys/class/power_supply/BAT0
    P: /devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/PNP0C09:00/PNP0C0A:00/power_supply/BAT0
    E: DEVPATH=/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/PNP0C09:00/PNP0C0A:00/power_supply/BAT0
    E: POWER_SUPPLY_CHARGE_FULL=4800000
    E: POWER_SUPPLY_CHARGE_FULL_DESIGN=4800000
    E: POWER_SUPPLY_CHARGE_NOW=4800000
    E: POWER_SUPPLY_CURRENT_NOW=0
    E: POWER_SUPPLY_CYCLE_COUNT=0
    E: POWER_SUPPLY_MANUFACTURER=SANYO
    E: POWER_SUPPLY_MODEL_NAME=AS07B32
    E: POWER_SUPPLY_NAME=BAT0
    E: POWER_SUPPLY_PRESENT=1
    E: POWER_SUPPLY_SERIAL_NUMBER= 7210
    E: POWER_SUPPLY_STATUS=Full
    E: POWER_SUPPLY_TECHNOLOGY=Li-ion
    E: POWER_SUPPLY_VOLTAGE_MIN_DESIGN=14800000
    E: POWER_SUPPLY_VOLTAGE_NOW=16142000
    E: SUBSYSTEM=power_supply
    Any help?
    Thank you very much!
    Last edited by nierro (2012-09-21 20:36:45)

    It is indeed udev, displaying device info from its database in response to a query - that's what 'udevadm info' does. But you can't write a udev rule against that info - you need a uevent.
    man udev wrote:The udev daemon, systemd-udevd.service(8), receives device uevents directly from the kernel whenever a device is added or removed from the system, or it changes its state. When udev receives a device event, it matches its configured set of rules against various device attributes to identify the device. Rules that match may provide additional device information to be stored in the udev database or to be used to create meaningful symlink names.
    If you run cybertorture's 'udevadm monitor' command above, as your battery is running down, you will not see any uevents. If you connect or disconnect your AC adapter, you will see uevents - in fact, you're using those ones already, to trigger your powersave script. So although the general description I've quoted mentions kernel uevents generated when a device "changes its state", this does not cover all possible changes, and in this particular case, it does not cover changes in battery charge level.

  • [Solved] udev rule not working

    Hi!
    I'm trying to set my trackpoint sensitivity and speed using an udev rule:
    [jeroen@zechs ~]$ ls -l /etc/udev/rules.d/
    total 4
    -rw-r--r-- 1 root root 113 Sep 14 01:54 10-trackpoint.rules
    [jeroen@zechs ~]$ cat /etc/udev/rules.d/10-trackpoint.rules
    # Set trackpoint option
    KERNEL=="serio2", ATTR{speed}="180", ATTR{sensitivity}="255", RUN+="touch /tmp/udevtest"
    When I test the rule, everything seems to be working as planned:
    [jeroen@zechs ~]$ cat /sys/devices/platform/i8042/serio1/serio2/speed
    97
    [jeroen@zechs ~]$ cat /sys/devices/platform/i8042/serio1/serio2/sensitivity
    128
    [jeroen@zechs ~]$ sudo udevadm test /sys/devices/platform/i8042/serio1/serio2/
    calling: test
    version 216
    timestamp of '/etc/udev/rules.d' changed
    Reading rules file: /etc/udev/rules.d/10-trackpoint.rules
    ATTR '/sys/devices/platform/i8042/serio1/serio2/speed' writing '180' /etc/udev/rules.d/10-trackpoint.rules:2
    ATTR '/sys/devices/platform/i8042/serio1/serio2/sensitivity' writing '255' /etc/udev/rules.d/10-trackpoint.rules:2
    RUN 'touch /tmp/udevtest' /etc/udev/rules.d/10-trackpoint.rules:2
    ACTION=add
    DEVPATH=/devices/platform/i8042/serio1/serio2
    DRIVER=psmouse
    MODALIAS=serio:ty05pr00id00ex00
    SERIO_EXTRA=00
    SERIO_ID=00
    SERIO_PROTO=00
    SERIO_TYPE=05
    SUBSYSTEM=serio
    USEC_INITIALIZED=284056746
    run: 'touch /tmp/udevtest'
    run: 'kmod load serio:ty05pr00id00ex00'
    unload module index
    Unloaded link configuration context.
    [jeroen@zechs ~]$ cat /sys/devices/platform/i8042/serio1/serio2/sensitivity
    255
    [jeroen@zechs ~]$ cat /sys/devices/platform/i8042/serio1/serio2/speed
    180
    But when I boot the system, the rule has not been applied
    [BOOT]
    [jeroen@zechs ~]$ cat /sys/devices/platform/i8042/serio1/serio2/speed
    97
    [jeroen@zechs ~]$ cat /sys/devices/platform/i8042/serio1/serio2/sensitivity
    128
    [jeroen@zechs ~]$ sudo udevadm trigger
    [jeroen@zechs ~]$ ls -l /tmp/udevtest
    ls: cannot access /tmp/udevtest: No such file or directory
    So the rule runs fine when I do `udevadm test` but fails to run on boot or `udevadm trigger`
    Any hints or ideas, or probably some basic stuff I missed, to get this working?
    Thank you for reading this far!
    Last edited by jeroentbt (2014-10-07 11:42:58)

    There is not much to go with.
    I'll try adding the 'description' attribute maybe.
    $ udevadm info -a -p /sys/devices/platform/i8042/serio1/serio2
    Udevadm info starts with the device specified by the devpath and then
    walks up the chain of parent devices. It prints for every device
    found, all possible attributes in the udev rules key format.
    A rule to match, can be composed by the attributes of the device
    and the attributes from one single parent device.
    looking at device '/devices/platform/i8042/serio1/serio2':
    KERNEL=="serio2"
    SUBSYSTEM=="serio"
    DRIVER=="psmouse"
    ATTR{resolution}=="200"
    ATTR{rate}=="100"
    ATTR{bind_mode}=="auto"
    ATTR{resync_time}=="0"
    ATTR{jenks}=="135"
    ATTR{reach}=="10"
    ATTR{speed}=="180"
    ATTR{ztime}=="38"
    ATTR{draghys}=="255"
    ATTR{description}=="Synaptics pass-through"
    ATTR{mindrag}=="20"
    ATTR{ext_dev}=="1"
    ATTR{skipback}=="0"
    ATTR{upthresh}=="255"
    ATTR{resetafter}=="5"
    ATTR{thresh}=="8"
    ATTR{protocol}=="TPPS/2"
    ATTR{press_to_select}=="0"
    ATTR{sensitivity}=="255"
    ATTR{inertia}=="6"
    ATTR{firmware_id}==""
    looking at parent device '/devices/platform/i8042/serio1':
    KERNELS=="serio1"
    SUBSYSTEMS=="serio"
    DRIVERS=="psmouse"
    ATTRS{resolution}=="200"
    ATTRS{rate}=="80"
    ATTRS{bind_mode}=="auto"
    ATTRS{resync_time}=="0"
    ATTRS{description}=="i8042 AUX port"
    ATTRS{resetafter}=="5"
    ATTRS{protocol}=="SynPS/2"
    ATTRS{firmware_id}=="PNP: LEN0015 PNP0f13"
    looking at parent device '/devices/platform/i8042':
    KERNELS=="i8042"
    SUBSYSTEMS=="platform"
    DRIVERS=="i8042"
    looking at parent device '/devices/platform':
    KERNELS=="platform"
    SUBSYSTEMS==""
    DRIVERS==""
    EDIT:
    tried with these two rules, no dice:
    KERNEL=="serio2", ATTR{description}=="Synaptics pass-through", ATTR{speed}="180", ATTR{sensitivity}="255", RUN+="touch /tmp/udevtest"
    ATTR{description}=="Synaptics pass-through", ATTR{speed}="180", ATTR{sensitivity}="255", RUN+="touch /tmp/udevtest"
    Last edited by jeroentbt (2014-09-14 21:23:33)

  • Solved: Udev rules not working

    I have file called "/etc/udev/rules.d/99-monitor-hotplug.rules" with this rule:
    ACTION=="change", SUBSYSTEM=="drm", RUN+="/root/scripts/hotPlugMonitor.sh"
    But hotPlugMonitor.sh-script is not ran even thought it has permission to be ran and
    udevadm monitor --property
    gives:
    KERNEL[69983.904205] change /devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0 (drm)
    ACTION=change
    DEVNAME=/dev/dri/card0
    DEVPATH=/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0
    DEVTYPE=drm_minor
    HOTPLUG=1
    MAJOR=226
    MINOR=0
    SEQNUM=1885
    SUBSYSTEM=drm
    UDEV [69983.905420] change /devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0 (drm)
    ACTION=change
    DEVNAME=/dev/dri/card0
    DEVPATH=/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0
    DEVTYPE=drm_minor
    HOTPLUG=1
    ID_FOR_SEAT=drm-pci-0000_01_00_0
    ID_PATH=pci-0000:01:00.0
    ID_PATH_TAG=pci-0000_01_00_0
    MAJOR=226
    MINOR=0
    SEQNUM=1885
    SUBSYSTEM=drm
    TAGS=:seat:uaccess:
    USEC_INITIALIZED=6
    when I detach my monitor.
    Last edited by oilgame (2013-08-31 09:10:08)

    You got the command slightly wrong. See the right command:
    udevadm control --reload
    From:
    $ udevadm control --help | grep reload
    --reload reload rules and databases

  • [SOLVED] configure: error: cannot run C compiled programs

    I'm trying to build lib32-libxkbcommon 0.5.0-1 from AUR with makepkg. I already tried installing pacman (setting the default makepkg.conf) and multilib-devel with no luck.
    makepkg messages:
    ==> Making package: lib32-libxkbcommon 0.5.0-1 (Mon May 11 00:17:05 EEST 2015)
    ==> Checking runtime dependencies...
    ==> Checking buildtime dependencies...
    ==> Retrieving sources...
    -> Found libxkbcommon-0.5.0.tar.xz
    ==> Validating source files with sha256sums...
    libxkbcommon-0.5.0.tar.xz ... Passed
    ==> Extracting sources...
    -> Extracting libxkbcommon-0.5.0.tar.xz with bsdtar
    bsdtar: Failed to set default locale
    ==> Starting prepare()...
    ==> Removing existing $pkgdir/ directory...
    ==> Starting build()...
    checking for a BSD-compatible install... /usr/bin/install -c
    checking whether build environment is sane... yes
    checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
    checking for gawk... gawk
    checking whether make sets $(MAKE)... yes
    checking whether make supports nested variables... yes
    checking whether to enable maintainer-specific portions of Makefiles... yes
    checking for style of include used by make... GNU
    checking for gcc... gcc -m32
    checking whether the C compiler works... yes
    checking for C compiler default output file name... a.out
    checking for suffix of executables...
    checking whether we are cross compiling... configure: error: in `/mnt/tmp/yaourt-tmp-tsester/aur-lib32-libxkbcommon/src/libxkbcommon-0.5.0':
    configure: error: cannot run C compiled programs.
    If you meant to cross compile, use `--host'.
    See `config.log' for more details
    ==> ERROR: A failure occurred in build().
    Aborting...
    makepkg.conf:
    # /etc/makepkg.conf
    # SOURCE ACQUISITION
    #-- The download utilities that makepkg should use to acquire sources
    # Format: 'protocol::agent'
    DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
    'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
    'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
    'rsync::/usr/bin/rsync --no-motd -z %u %o'
    'scp::/usr/bin/scp -C %u %o')
    # Other common tools:
    # /usr/bin/snarf
    # /usr/bin/lftpget -c
    # /usr/bin/wget
    #-- The package required by makepkg to download VCS sources
    # Format: 'protocol::package'
    VCSCLIENTS=('bzr::bzr'
    'git::git'
    'hg::mercurial'
    'svn::subversion')
    # ARCHITECTURE, COMPILE FLAGS
    CARCH="x86_64"
    CHOST="x86_64-unknown-linux-gnu"
    #-- Compiler and Linker Flags
    # -march (or -mcpu) builds exclusively for an architecture
    # -mtune optimizes for an architecture, but builds for whole processor family
    CPPFLAGS="-D_FORTIFY_SOURCE=2"
    CFLAGS="-march=core2 -m64 -mfpmath=sse -O2 -fomit-frame-pointer -pipe -fstack-protector --param=ssp-buffer-size=4"
    CXXFLAGS="${CFLAGS}"
    LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro"
    #-- Make Flags: change this for DistCC/SMP systems
    MAKEFLAGS="-j5"
    #-- Debugging flags
    DEBUG_CFLAGS="-g -fvar-tracking-assignments"
    DEBUG_CXXFLAGS="-g -fvar-tracking-assignments"
    # BUILD ENVIRONMENT
    # Defaults: BUILDENV=(!distcc color !ccache check !sign)
    # A negated environment option will do the opposite of the comments below.
    #-- distcc: Use the Distributed C/C++/ObjC compiler
    #-- color: Colorize output messages
    #-- ccache: Use ccache to cache compilation
    #-- check: Run the check() function if present in the PKGBUILD
    #-- sign: Generate PGP signature file
    BUILDENV=(!distcc color !ccache check !sign)
    #-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
    #-- specify a space-delimited list of hosts running in the DistCC cluster.
    #DISTCC_HOSTS=""
    #-- Specify a directory for package building.
    #BUILDDIR=/tmp/makepkg
    # GLOBAL PACKAGE OPTIONS
    # These are default values for the options=() settings
    # Default: OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug)
    # A negated option will do the opposite of the comments below.
    #-- strip: Strip symbols from binaries/libraries
    #-- docs: Save doc directories specified by DOC_DIRS
    #-- libtool: Leave libtool (.la) files in packages
    #-- staticlibs: Leave static library (.a) files in packages
    #-- emptydirs: Leave empty directories in packages
    #-- zipman: Compress manual (man and info) pages in MAN_DIRS with gzip
    #-- purge: Remove files specified by PURGE_TARGETS
    #-- upx: Compress binary executable files using UPX
    #-- debug: Add debugging flags as specified in DEBUG_* variables
    OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug)
    #-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512
    INTEGRITY_CHECK=(md5)
    #-- Options to be used when stripping binaries. See `man strip' for details.
    STRIP_BINARIES="--strip-all"
    #-- Options to be used when stripping shared libraries. See `man strip' for details.
    STRIP_SHARED="--strip-unneeded"
    #-- Options to be used when stripping static libraries. See `man strip' for details.
    STRIP_STATIC="--strip-debug"
    #-- Manual (man and info) directories to compress (if zipman is specified)
    MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info})
    #-- Doc directories to remove (if !docs is specified)
    DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
    #-- Files to be removed from all packages (if purge is specified)
    PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
    # PACKAGE OUTPUT
    # Default: put built package and cached source in build directory
    #-- Destination: specify a fixed directory where all packages will be placed
    #PKGDEST=/home/packages
    #-- Source cache: specify a fixed directory where source files will be cached
    #SRCDEST=/home/sources
    #-- Source packages: specify a fixed directory where all src packages will be placed
    #SRCPKGDEST=/home/srcpackages
    #-- Log files: specify a fixed directory where all log files will be placed
    #LOGDEST=/home/makepkglogs
    #-- Packager: name/email of the person or organization building packages
    #PACKAGER="John Doe <[email protected]>"
    #-- Specify a key to use for package signing
    #GPGKEY=""
    # COMPRESSION DEFAULTS
    COMPRESSGZ=(gzip -c -f -n)
    COMPRESSBZ2=(bzip2 -c -f)
    COMPRESSXZ=(xz -c -z -)
    COMPRESSLRZ=(lrzip -q)
    COMPRESSLZO=(lzop -q)
    COMPRESSZ=(compress -c -f)
    # EXTENSION DEFAULTS
    # WARNING: Do NOT modify these variables unless you know what you are
    # doing.
    PKGEXT='.pkg.tar.xz'
    SRCEXT='.src.tar.gz'
    # vim: set ft=sh ts=2 sw=2 et:
    config.log:
    This file contains any messages produced by compilers while
    running configure, to aid debugging if configure makes a mistake.
    It was created by libxkbcommon configure 0.5.0, which was
    generated by GNU Autoconf 2.69. Invocation command line was
    $ ./configure --prefix=/usr --libdir=/usr/lib32 --disable-docs --disable-static
    ## Platform. ##
    hostname = Arch
    uname -m = x86_64
    uname -r = 4.0.1-1-ARCH
    uname -s = Linux
    uname -v = #1 SMP PREEMPT Wed Apr 29 12:00:26 CEST 2015
    /usr/bin/uname -p = unknown
    /bin/uname -X = unknown
    /bin/arch = unknown
    /usr/bin/arch -k = unknown
    /usr/convex/getsysinfo = unknown
    /usr/bin/hostinfo = unknown
    /bin/machine = unknown
    /usr/bin/oslevel = unknown
    /bin/universe = unknown
    PATH: /usr/local/sbin
    PATH: /usr/local/bin
    PATH: /usr/bin
    PATH: /usr/lib/jvm/default/bin
    PATH: /usr/bin/site_perl
    PATH: /usr/bin/vendor_perl
    PATH: /usr/bin/core_perl
    ## Core tests. ##
    configure:2424: checking for a BSD-compatible install
    configure:2492: result: /usr/bin/install -c
    configure:2503: checking whether build environment is sane
    configure:2558: result: yes
    configure:2709: checking for a thread-safe mkdir -p
    configure:2748: result: /usr/bin/mkdir -p
    configure:2755: checking for gawk
    configure:2771: found /usr/bin/gawk
    configure:2782: result: gawk
    configure:2793: checking whether make sets $(MAKE)
    configure:2815: result: yes
    configure:2844: checking whether make supports nested variables
    configure:2861: result: yes
    configure:2987: checking whether to enable maintainer-specific portions of Makefiles
    configure:2996: result: yes
    configure:3023: checking for style of include used by make
    configure:3051: result: GNU
    configure:3122: checking for gcc
    configure:3149: result: gcc -m32
    configure:3378: checking for C compiler version
    configure:3387: gcc -m32 --version >&5
    gcc (GCC) 5.1.0
    Copyright (C) 2015 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions. There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    configure:3398: $? = 0
    configure:3387: gcc -m32 -v >&5
    Using built-in specs.
    COLLECT_GCC=gcc
    COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-unknown-linux-gnu/5.1.0/lto-wrapper
    Target: x86_64-unknown-linux-gnu
    Configured with: /build/gcc-multilib/src/gcc-5-20150505/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --enable-libmpx --with-system-zlib --with-isl --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --disable-libssp --enable-gnu-unique-object --enable-linker-build-id --enable-lto --enable-plugin --enable-install-libiberty --with-linker-hash-style=gnu --enable-gnu-indirect-function --enable-multilib --disable-werror --enable-checking=release --with-default-libstdcxx-abi=c++98
    Thread model: posix
    gcc version 5.1.0 (GCC)
    configure:3398: $? = 0
    configure:3387: gcc -m32 -V >&5
    gcc: error: unrecognized command line option '-V'
    gcc: fatal error: no input files
    compilation terminated.
    configure:3398: $? = 1
    configure:3387: gcc -m32 -qversion >&5
    gcc: error: unrecognized command line option '-qversion'
    gcc: fatal error: no input files
    compilation terminated.
    configure:3398: $? = 1
    configure:3418: checking whether the C compiler works
    configure:3440: gcc -m32 -march=core2 -m64 -mfpmath=sse -O2 -fomit-frame-pointer -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -Wl,-O1,--sort-common,--as-needed,-z,relro conftest.c >&5
    configure:3444: $? = 0
    configure:3492: result: yes
    configure:3495: checking for C compiler default output file name
    configure:3497: result: a.out
    configure:3503: checking for suffix of executables
    configure:3510: gcc -m32 -o conftest -march=core2 -m64 -mfpmath=sse -O2 -fomit-frame-pointer -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -Wl,-O1,--sort-common,--as-needed,-z,relro conftest.c >&5
    configure:3514: $? = 0
    configure:3536: result:
    configure:3558: checking whether we are cross compiling
    configure:3566: gcc -m32 -o conftest -march=core2 -m64 -mfpmath=sse -O2 -fomit-frame-pointer -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -Wl,-O1,--sort-common,--as-needed,-z,relro conftest.c >&5
    In file included from /usr/include/stdio.h:27:0,
    from conftest.c:11:
    /usr/include/features.h:365:25: fatal error: sys/cdefs.h: No such file or directory
    compilation terminated.
    configure:3570: $? = 1
    configure:3577: ./conftest
    ./configure: line 3579: ./conftest: No such file or directory
    configure:3581: $? = 127
    configure:3588: error: in `/mnt/tmp/yaourt-tmp-tsester/aur-lib32-libxkbcommon/src/libxkbcommon-0.5.0':
    configure:3590: error: cannot run C compiled programs.
    If you meant to cross compile, use `--host'.
    See `config.log' for more details
    ## Cache variables. ##
    ac_cv_env_CC_set=set
    ac_cv_env_CC_value='gcc -m32'
    ac_cv_env_CFLAGS_set=set
    ac_cv_env_CFLAGS_value='-march=core2 -m64 -mfpmath=sse -O2 -fomit-frame-pointer -pipe -fstack-protector --param=ssp-buffer-size=4'
    ac_cv_env_CPPFLAGS_set=set
    ac_cv_env_CPPFLAGS_value=-D_FORTIFY_SOURCE=2
    ac_cv_env_CPP_set=
    ac_cv_env_CPP_value=
    ac_cv_env_DOT_set=
    ac_cv_env_DOT_value=
    ac_cv_env_DOXYGEN_set=
    ac_cv_env_DOXYGEN_value=
    ac_cv_env_LDFLAGS_set=set
    ac_cv_env_LDFLAGS_value=-Wl,-O1,--sort-common,--as-needed,-z,relro
    ac_cv_env_LIBS_set=
    ac_cv_env_LIBS_value=
    ac_cv_env_PKG_CONFIG_LIBDIR_set=
    ac_cv_env_PKG_CONFIG_LIBDIR_value=
    ac_cv_env_PKG_CONFIG_PATH_set=set
    ac_cv_env_PKG_CONFIG_PATH_value=/usr/lib32/pkgconfig
    ac_cv_env_PKG_CONFIG_set=
    ac_cv_env_PKG_CONFIG_value=
    ac_cv_env_XCB_XKB_CFLAGS_set=
    ac_cv_env_XCB_XKB_CFLAGS_value=
    ac_cv_env_XCB_XKB_LIBS_set=
    ac_cv_env_XCB_XKB_LIBS_value=
    ac_cv_env_XORG_MALLOC_DEBUG_ENV_set=
    ac_cv_env_XORG_MALLOC_DEBUG_ENV_value=
    ac_cv_env_YACC_set=
    ac_cv_env_YACC_value=
    ac_cv_env_YFLAGS_set=
    ac_cv_env_YFLAGS_value=
    ac_cv_env_build_alias_set=
    ac_cv_env_build_alias_value=
    ac_cv_env_host_alias_set=
    ac_cv_env_host_alias_value=
    ac_cv_env_target_alias_set=
    ac_cv_env_target_alias_value=
    ac_cv_path_install='/usr/bin/install -c'
    ac_cv_path_mkdir=/usr/bin/mkdir
    ac_cv_prog_AWK=gawk
    ac_cv_prog_ac_ct_CC='gcc -m32'
    ac_cv_prog_make_make_set=yes
    am_cv_make_support_nested_variables=yes
    ## Output variables. ##
    ACLOCAL='${SHELL} /mnt/tmp/yaourt-tmp-tsester/aur-lib32-libxkbcommon/src/libxkbcommon-0.5.0/build-aux/missing aclocal-1.14'
    ADMIN_MAN_DIR=''
    ADMIN_MAN_SUFFIX=''
    AMDEPBACKSLASH='\'
    AMDEP_FALSE='#'
    AMDEP_TRUE=''
    AMTAR='$${TAR-tar}'
    AM_BACKSLASH='\'
    AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
    AM_DEFAULT_VERBOSITY='1'
    AM_V='$(V)'
    APP_MAN_DIR=''
    APP_MAN_SUFFIX=''
    AR=''
    AUTOCONF='${SHELL} /mnt/tmp/yaourt-tmp-tsester/aur-lib32-libxkbcommon/src/libxkbcommon-0.5.0/build-aux/missing autoconf'
    AUTOHEADER='${SHELL} /mnt/tmp/yaourt-tmp-tsester/aur-lib32-libxkbcommon/src/libxkbcommon-0.5.0/build-aux/missing autoheader'
    AUTOMAKE='${SHELL} /mnt/tmp/yaourt-tmp-tsester/aur-lib32-libxkbcommon/src/libxkbcommon-0.5.0/build-aux/missing automake-1.14'
    AWK='gawk'
    BASE_CFLAGS=''
    BUILD_LINUX_TESTS_FALSE=''
    BUILD_LINUX_TESTS_TRUE=''
    CC='gcc -m32'
    CCDEPMODE=''
    CFLAGS='-march=core2 -m64 -mfpmath=sse -O2 -fomit-frame-pointer -pipe -fstack-protector --param=ssp-buffer-size=4'
    CHANGELOG_CMD=''
    CPP=''
    CPPFLAGS='-D_FORTIFY_SOURCE=2'
    CWARNFLAGS=''
    CYGPATH_W='echo'
    DEFS=''
    DEPDIR='.deps'
    DLLTOOL=''
    DOT=''
    DOXYGEN=''
    DRIVER_MAN_DIR=''
    DRIVER_MAN_SUFFIX=''
    DSYMUTIL=''
    DUMPBIN=''
    ECHO_C=''
    ECHO_N='-n'
    ECHO_T=''
    EGREP=''
    ENABLE_DOCS_FALSE=''
    ENABLE_DOCS_TRUE=''
    ENABLE_X11_FALSE=''
    ENABLE_X11_TRUE=''
    EXEEXT=''
    FGREP=''
    FILE_MAN_DIR=''
    FILE_MAN_SUFFIX=''
    GREP=''
    HAVE_DOT=''
    HAVE_DOT_FALSE=''
    HAVE_DOT_TRUE=''
    HAVE_DOXYGEN_FALSE=''
    HAVE_DOXYGEN_TRUE=''
    HAVE_NO_UNDEFINED_FALSE=''
    HAVE_NO_UNDEFINED_TRUE=''
    INSTALL_CMD=''
    INSTALL_DATA='${INSTALL} -m 644'
    INSTALL_PROGRAM='${INSTALL}'
    INSTALL_SCRIPT='${INSTALL}'
    INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
    LD=''
    LDFLAGS='-Wl,-O1,--sort-common,--as-needed,-z,relro'
    LIBOBJS=''
    LIBS=''
    LIBTOOL=''
    LIB_MAN_DIR=''
    LIB_MAN_SUFFIX=''
    LIPO=''
    LN_S=''
    LTLIBOBJS=''
    MAINT=''
    MAINTAINER_MODE_FALSE='#'
    MAINTAINER_MODE_TRUE=''
    MAKEINFO='${SHELL} /mnt/tmp/yaourt-tmp-tsester/aur-lib32-libxkbcommon/src/libxkbcommon-0.5.0/build-aux/missing makeinfo'
    MANIFEST_TOOL=''
    MAN_SUBSTS=''
    MISC_MAN_DIR=''
    MISC_MAN_SUFFIX=''
    MKDIR_P='/usr/bin/mkdir -p'
    NM=''
    NMEDIT=''
    OBJDUMP=''
    OBJEXT=''
    OTOOL64=''
    OTOOL=''
    PACKAGE='libxkbcommon'
    PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=libxkbcommon'
    PACKAGE_NAME='libxkbcommon'
    PACKAGE_STRING='libxkbcommon 0.5.0'
    PACKAGE_TARNAME='libxkbcommon'
    PACKAGE_URL='http://xkbcommon.org'
    PACKAGE_VERSION='0.5.0'
    PATH_SEPARATOR=':'
    PKG_CONFIG=''
    PKG_CONFIG_LIBDIR=''
    PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
    RANLIB=''
    RT_LIBS=''
    SED=''
    SET_MAKE=''
    SHELL='/bin/sh'
    STRICT_CFLAGS=''
    STRIP=''
    VERSION='0.5.0'
    XCB_XKB_CFLAGS=''
    XCB_XKB_LIBS=''
    XKBCONFIGROOT=''
    XLOCALEDIR=''
    XORG_MALLOC_DEBUG_ENV=''
    XORG_MAN_PAGE=''
    YACC=''
    YACC_INST=''
    YFLAGS=''
    ac_ct_AR=''
    ac_ct_CC='gcc -m32'
    ac_ct_DUMPBIN=''
    am__EXEEXT_FALSE=''
    am__EXEEXT_TRUE=''
    am__fastdepCC_FALSE=''
    am__fastdepCC_TRUE=''
    am__include='include'
    am__isrc=''
    am__leading_dot='.'
    am__nodep='_no'
    am__quote=''
    am__tar='$${TAR-tar} chof - "$$tardir"'
    am__untar='$${TAR-tar} xf -'
    bindir='${exec_prefix}/bin'
    build=''
    build_alias=''
    build_cpu=''
    build_os=''
    build_vendor=''
    datadir='${datarootdir}'
    datarootdir='${prefix}/share'
    docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
    dvidir='${docdir}'
    exec_prefix='NONE'
    host=''
    host_alias=''
    host_cpu=''
    host_os=''
    host_vendor=''
    htmldir='${docdir}'
    includedir='${prefix}/include'
    infodir='${datarootdir}/info'
    install_sh='${SHELL} /mnt/tmp/yaourt-tmp-tsester/aur-lib32-libxkbcommon/src/libxkbcommon-0.5.0/build-aux/install-sh'
    libdir='/usr/lib32'
    libexecdir='${exec_prefix}/libexec'
    localedir='${datarootdir}/locale'
    localstatedir='${prefix}/var'
    mandir='${datarootdir}/man'
    mkdir_p='$(MKDIR_P)'
    oldincludedir='/usr/include'
    pdfdir='${docdir}'
    prefix='/usr'
    program_transform_name='s,x,x,'
    psdir='${docdir}'
    sbindir='${exec_prefix}/sbin'
    sharedstatedir='${prefix}/com'
    sysconfdir='${prefix}/etc'
    target_alias=''
    ## confdefs.h. ##
    /* confdefs.h */
    #define PACKAGE_NAME "libxkbcommon"
    #define PACKAGE_TARNAME "libxkbcommon"
    #define PACKAGE_VERSION "0.5.0"
    #define PACKAGE_STRING "libxkbcommon 0.5.0"
    #define PACKAGE_BUGREPORT "[url]https://bugs.freedesktop.org/enter_bug.cgi?product=libxkbcommon[/url]"
    #define PACKAGE_URL "[url]http://xkbcommon.org[/url]"
    #define PACKAGE "libxkbcommon"
    #define VERSION "0.5.0"
    configure: exit 1
    other info:
    core/pacman 4.2.1-1
    multilib/gcc-multilib 4.9.2-4 (multilib-devel) [installed]
        The GNU Compiler Collection - C and C++ frontends for multilib
    multilib/lib32-fakeroot 1.20.2-1 (multilib-devel) [installed]
        Tool for simulating superuser privileges (32-bit)
    multilib/lib32-libltdl 2.4.5-1 (multilib-devel) [installed]
        A generic library support script (32-bit)
    Last edited by tsester (2015-05-10 22:10:28)

    tsester wrote:P.S.: I recently transfered the linux system between failing disks
    In that case you should probably check that no other packages are missing files with
    pacman -Qkk 2>&1 | grep "No such file or directory"
    Any packages that report that they're missing files, you should reinstall.

  • [Solved] udev rules: serial for persistent device naming disappeared

    Hello,
    since the latest upgrade of udev and kmod I cant't mount my external e-SATA hard disk with my working udev rules.
    This is my udev rule:
    $ cat /etc/udev/rules.d/66-persistent_esata.rules
    KERNEL=="sd?1", SUBSYSTEMS=="block", ENV{ID_SERIAL_SHORT}=="S1VSJ1LS301247", NAME="aluguard"
    When plugged in, I could decrypt and mount it with "sudo cryptsetup luksOpen /dev/aluguard aluguard && mount /mnt/aluguard".
    Since the update above I get "Device /dev/aluguard doesn't exist or access denied."
    While I re-checked https://wiki.archlinux.org/index.php/Ma … _with_udev, I discovered, that the serial entry in the output of udevadm has vanished:
    $ udevadm info -a -p $(udevadm info -q path -n /dev/sdg)
    Udevadm info starts with the device specified by the devpath and then
    walks up the chain of parent devices. It prints for every device
    found, all possible attributes in the udev rules key format.
    A rule to match, can be composed by the attributes of the device
    and the attributes from one single parent device.
    looking at device '/devices/pci0000:00/0000:00:09.0/host3/target3:0:0/3:0:0:0/block/sdg':
    KERNEL=="sdg"
    SUBSYSTEM=="block"
    DRIVER==""
    ATTR{range}=="16"
    ATTR{ext_range}=="256"
    ATTR{removable}=="0"
    ATTR{ro}=="0"
    ATTR{size}=="1953525168"
    ATTR{alignment_offset}=="0"
    ATTR{discard_alignment}=="0"
    ATTR{capability}=="50"
    ATTR{stat}==" 96 24 762 780 0 0 0 0 0 780 780"
    ATTR{inflight}==" 0 0"
    ATTR{events}==""
    ATTR{events_async}==""
    ATTR{events_poll_msecs}=="-1"
    looking at parent device '/devices/pci0000:00/0000:00:09.0/host3/target3:0:0/3:0:0:0':
    KERNELS=="3:0:0:0"
    SUBSYSTEMS=="scsi"
    DRIVERS=="sd"
    ATTRS{device_blocked}=="0"
    ATTRS{type}=="0"
    ATTRS{scsi_level}=="6"
    ATTRS{vendor}=="ATA "
    ATTRS{model}=="SAMSUNG HD103SI "
    ATTRS{rev}=="1AG0"
    ATTRS{state}=="running"
    ATTRS{timeout}=="30"
    ATTRS{iocounterbits}=="32"
    ATTRS{iorequest_cnt}=="0xa2"
    ATTRS{iodone_cnt}=="0x98"
    ATTRS{ioerr_cnt}=="0xc"
    ATTRS{evt_media_change}=="0"
    ATTRS{queue_depth}=="31"
    ATTRS{queue_ramp_up_period}=="120000"
    ATTRS{queue_type}=="simple"
    looking at parent device '/devices/pci0000:00/0000:00:09.0/host3/target3:0:0':
    KERNELS=="target3:0:0"
    SUBSYSTEMS=="scsi"
    DRIVERS==""
    looking at parent device '/devices/pci0000:00/0000:00:09.0/host3':
    KERNELS=="host3"
    SUBSYSTEMS=="scsi"
    DRIVERS==""
    looking at parent device '/devices/pci0000:00/0000:00:09.0':
    KERNELS=="0000:00:09.0"
    SUBSYSTEMS=="pci"
    DRIVERS=="ahci"
    ATTRS{vendor}=="0x10de"
    ATTRS{device}=="0x0554"
    ATTRS{subsystem_vendor}=="0x1849"
    ATTRS{subsystem_device}=="0x0554"
    ATTRS{class}=="0x010601"
    ATTRS{irq}=="23"
    ATTRS{local_cpus}=="00000000,00000003"
    ATTRS{local_cpulist}=="0-1"
    ATTRS{numa_node}=="0"
    ATTRS{dma_mask_bits}=="64"
    ATTRS{consistent_dma_mask_bits}=="64"
    ATTRS{enable}=="1"
    ATTRS{broken_parity_status}=="0"
    ATTRS{msi_bus}==""
    looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""
    What is the reason for this strange behaviour, and how can I get back the serial entry?
    Thank in advance!
    Last edited by indianahorst (2012-01-31 13:03:20)

    $ udevadm info -q all -n /dev/sdg1
    P: /devices/pci0000:00/0000:00:09.0/host3/target3:0:0/3:0:0:0/block/sdg/sdg1
    N: sdg1
    S: disk/by-id/ata-SAMSUNG_HD103SI_S1VSJ1LS301247-part1
    S: disk/by-id/scsi-SATA_SAMSUNG_HD103SIS1VSJ1LS301247-part1
    S: disk/by-id/wwn-0x50024e900136a03e-part1
    S: disk/by-path/pci-0000:00:09.0-scsi-3:0:0:0-part1
    S: disk/by-uuid/bb024e1b-78a5-4ed0-9e80-aaa7633aa493
    E: DEVLINKS=/dev/disk/by-id/ata-SAMSUNG_HD103SI_S1VSJ1LS301247-part1 /dev/disk/by-id/scsi-SATA_SAMSUNG_HD103SIS1VSJ1LS301247-part1 /dev/disk/by-id/wwn-0x50024e900136a03e-part1 /dev/disk/by-path/pci-0000:00:09.0-scsi-3:0:0:0-part1 /dev/disk/by-uuid/bb024e1b-78a5-4ed0-9e80-aaa7633aa493
    E: DEVNAME=/dev/sdg1
    E: DEVPATH=/devices/pci0000:00/0000:00:09.0/host3/target3:0:0/3:0:0:0/block/sdg/sdg1
    E: DEVTYPE=partition
    E: ID_ATA=1
    E: ID_ATA_DOWNLOAD_MICROCODE=1
    E: ID_ATA_FEATURE_SET_AAM=1
    E: ID_ATA_FEATURE_SET_AAM_CURRENT_VALUE=254
    E: ID_ATA_FEATURE_SET_AAM_ENABLED=1
    E: ID_ATA_FEATURE_SET_AAM_VENDOR_RECOMMENDED_VALUE=254
    E: ID_ATA_FEATURE_SET_APM=1
    E: ID_ATA_FEATURE_SET_APM_ENABLED=0
    E: ID_ATA_FEATURE_SET_HPA=1
    E: ID_ATA_FEATURE_SET_HPA_ENABLED=1
    E: ID_ATA_FEATURE_SET_PM=1
    E: ID_ATA_FEATURE_SET_PM_ENABLED=1
    E: ID_ATA_FEATURE_SET_PUIS=1
    E: ID_ATA_FEATURE_SET_PUIS_ENABLED=0
    E: ID_ATA_FEATURE_SET_SECURITY=1
    E: ID_ATA_FEATURE_SET_SECURITY_ENABLED=0
    E: ID_ATA_FEATURE_SET_SECURITY_ENHANCED_ERASE_UNIT_MIN=194
    E: ID_ATA_FEATURE_SET_SECURITY_ERASE_UNIT_MIN=194
    E: ID_ATA_FEATURE_SET_SMART=1
    E: ID_ATA_FEATURE_SET_SMART_ENABLED=1
    E: ID_ATA_SATA=1
    E: ID_ATA_SATA_SIGNAL_RATE_GEN1=1
    E: ID_ATA_SATA_SIGNAL_RATE_GEN2=1
    E: ID_ATA_WRITE_CACHE=1
    E: ID_ATA_WRITE_CACHE_ENABLED=1
    E: ID_BUS=ata
    E: ID_FS_TYPE=crypto_LUKS
    E: ID_FS_USAGE=crypto
    E: ID_FS_UUID=bb024e1b-78a5-4ed0-9e80-aaa7633aa493
    E: ID_FS_UUID_ENC=bb024e1b-78a5-4ed0-9e80-aaa7633aa493
    E: ID_FS_VERSION=1
    E: ID_MODEL=SAMSUNG_HD103SI
    E: ID_MODEL_ENC=SAMSUNG\x20HD103SI\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20
    E: ID_PART_ENTRY_TYPE=0x83
    E: ID_PART_TABLE_TYPE=dos
    E: ID_PATH=pci-0000:00:09.0-scsi-3:0:0:0
    E: ID_PATH_TAG=pci-0000_00_09_0-scsi-3_0_0_0
    E: ID_REVISION=1AG01131
    E: ID_SCSI_COMPAT=SATA_SAMSUNG_HD103SIS1VSJ1LS301247
    E: ID_SERIAL=SAMSUNG_HD103SI_S1VSJ1LS301247
    E: ID_SERIAL_SHORT=S1VSJ1LS301247
    E: ID_TYPE=disk
    E: ID_WWN=0x50024e900136a03e
    E: ID_WWN_WITH_EXTENSION=0x50024e900136a03e
    E: MAJOR=8
    E: MINOR=97
    E: PART_ENTRY_DISK=8:96
    E: PART_ENTRY_NUMBER=1
    E: PART_ENTRY_OFFSET=63
    E: PART_ENTRY_SCHEME=dos
    E: PART_ENTRY_SIZE=1953520002
    E: SUBSYSTEM=block
    E: UDEV_LOG=3
    E: UDISKS_PARTITION=1
    E: UDISKS_PARTITION_ALIGNMENT_OFFSET=0
    E: UDISKS_PARTITION_NUMBER=1
    E: UDISKS_PARTITION_OFFSET=32256
    E: UDISKS_PARTITION_SCHEME=mbr
    E: UDISKS_PARTITION_SIZE=1000202241024
    E: UDISKS_PARTITION_SLAVE=/sys/devices/pci0000:00/0000:00:09.0/host3/target3:0:0/3:0:0:0/block/sdg
    E: UDISKS_PARTITION_TYPE=0x83
    E: UDISKS_PRESENTATION_NOPOLICY=0
    E: USEC_INITIALIZED=6897248001
    OK, there is the serial.... but the problem persists - udev doesn't execute the rule and doesn't create /dev/aluguard.

  • [SOLVED] udev-rules

    My plan is to write a udev-rule that automatically starts a backup script as soon as I plugin a specific usb-harddrive.
    For testing purposes I'm trying to run /usr/bin/gedit and create the symlink /dev/backup-drive
    here's my rule:
    ## /etc/udev/rules.d/95-backup.rules
    SUBSYSTEM=="usb", ATTRS{serial}=="100", SYMLINK="backup_drive", RUN+="/usr/bin/gedit"
    The symlink works fine.  However, gedit does not start.
    What am I missing?
    Last edited by mehldutt (2007-04-26 18:12:44)

    here some more information:
    # udevinfo -a -p $(udevinfo -q path -n /dev/sdb)
    Udevinfo starts with the device specified by the devpath and then
    walks up the chain of parent devices. It prints for every device
    found, all possible attributes in the udev rules key format.
    A rule to match, can be composed by the attributes of the device
    and the attributes from one single parent device.
      looking at device '/block/sdb':
        KERNEL=="sdb"
        SUBSYSTEM=="block"
        DRIVER==""
        ATTR{stat}=="      69      193     1022      352       14        4      144       68        0      332      420"
        ATTR{size}=="156301488"
        ATTR{removable}=="0"
        ATTR{range}=="16"
        ATTR{dev}=="8:16"
      looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb5/5-4/5-4:1.0/host2/target2:0:0/2:0:0:0':
        KERNELS=="2:0:0:0"
        SUBSYSTEMS=="scsi"
        DRIVERS=="sd"
        ATTRS{ioerr_cnt}=="0x0"
        ATTRS{iodone_cnt}=="0x5a"
        ATTRS{iorequest_cnt}=="0x5a"
        ATTRS{iocounterbits}=="32"
        ATTRS{timeout}=="30"
        ATTRS{state}=="running"
        ATTRS{rev}=="AD00"
        ATTRS{model}=="MK8032GAX       "
        ATTRS{vendor}=="TOSHIBA "
        ATTRS{scsi_level}=="3"
        ATTRS{type}=="0"
        ATTRS{queue_type}=="none"
        ATTRS{queue_depth}=="1"
        ATTRS{device_blocked}=="0"
        ATTRS{max_sectors}=="240"
      looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb5/5-4/5-4:1.0/host2/target2:0:0':
        KERNELS=="target2:0:0"
        SUBSYSTEMS==""
        DRIVERS==""
      looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb5/5-4/5-4:1.0/host2':
        KERNELS=="host2"
        SUBSYSTEMS==""
        DRIVERS==""
      looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb5/5-4/5-4:1.0':
        KERNELS=="5-4:1.0"
        SUBSYSTEMS=="usb"
        DRIVERS=="usb-storage"
        ATTRS{interface}=="Mass Storage Class"
        ATTRS{modalias}=="usb:v04CFp8818dB008dc00dsc00dp00ic08isc05ip50"
        ATTRS{bInterfaceProtocol}=="50"
        ATTRS{bInterfaceSubClass}=="05"
        ATTRS{bInterfaceClass}=="08"
        ATTRS{bNumEndpoints}=="02"
        ATTRS{bAlternateSetting}==" 0"
        ATTRS{bInterfaceNumber}=="00"
      looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb5/5-4':
        KERNELS=="5-4"
        SUBSYSTEMS=="usb"
        DRIVERS=="usb"
        ATTRS{serial}=="100"
        ATTRS{product}=="USB Mass Storage Device"
        ATTRS{manufacturer}=="Myson Century, Inc."
        ATTRS{maxchild}=="0"
        ATTRS{version}==" 2.00"
        ATTRS{devnum}=="2"
        ATTRS{speed}=="480"
        ATTRS{bMaxPacketSize0}=="64"
        ATTRS{bNumConfigurations}=="1"
        ATTRS{bDeviceProtocol}=="00"
        ATTRS{bDeviceSubClass}=="00"
        ATTRS{bDeviceClass}=="00"
        ATTRS{bcdDevice}=="b008"
        ATTRS{idProduct}=="8818"
        ATTRS{idVendor}=="04cf"
        ATTRS{bMaxPower}==" 10mA"
        ATTRS{bmAttributes}=="c0"
        ATTRS{bConfigurationValue}=="1"
        ATTRS{bNumInterfaces}==" 1"
        ATTRS{configuration}=="USB Mass Storage"
      looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb5':
        KERNELS=="usb5"
        SUBSYSTEMS=="usb"
        DRIVERS=="usb"
        ATTRS{serial}=="0000:00:1d.7"
        ATTRS{product}=="EHCI Host Controller"
        ATTRS{manufacturer}=="Linux 2.6.20-ARCH ehci_hcd"
        ATTRS{maxchild}=="8"
        ATTRS{version}==" 2.00"
        ATTRS{devnum}=="1"
        ATTRS{speed}=="480"
        ATTRS{bMaxPacketSize0}=="64"
        ATTRS{bNumConfigurations}=="1"
        ATTRS{bDeviceProtocol}=="01"
        ATTRS{bDeviceSubClass}=="00"
        ATTRS{bDeviceClass}=="09"
        ATTRS{bcdDevice}=="0206"
        ATTRS{idProduct}=="0000"
        ATTRS{idVendor}=="0000"
        ATTRS{bMaxPower}=="  0mA"
        ATTRS{bmAttributes}=="e0"
        ATTRS{bConfigurationValue}=="1"
        ATTRS{bNumInterfaces}==" 1"
        ATTRS{configuration}==""
      looking at parent device '/devices/pci0000:00/0000:00:1d.7':
        KERNELS=="0000:00:1d.7"
        SUBSYSTEMS=="pci"
        DRIVERS=="ehci_hcd"
        ATTRS{msi_bus}==""
        ATTRS{broken_parity_status}=="0"
        ATTRS{enable}=="1"
        ATTRS{modalias}=="pci:v00008086d0000265Csv0000144Dsd0000C01Ebc0Csc03i20"
        ATTRS{local_cpus}=="f"
        ATTRS{irq}=="19"
        ATTRS{class}=="0x0c0320"
        ATTRS{subsystem_device}=="0xc01e"
        ATTRS{subsystem_vendor}=="0x144d"
        ATTRS{device}=="0x265c"
        ATTRS{vendor}=="0x8086"
      looking at parent device '/devices/pci0000:00':
        KERNELS=="pci0000:00"
        SUBSYSTEMS==""
        DRIVERS==""

  • Business rule - cannot run

    Gurus,
    I cannot launch a business rule. When I try to launch it, it gives a message "the rule cannot be launched because it has hidden rtp variables without default value"
    What could be he problem with it.
    THANKS

    Maybe it relates to the issue
    9900514 - "The Use Members on Data Form and Hide Prompt options for business rules attached to composite data forms apply only for runtime prompt values from the globally shared pages and POVs of a composite data form. In other words, this will only use members that are shared across all component data forms. If users want a business rule to take context from a single component data form, they should attach the business rule to that component data form and include the business rules for that component data form at the composite data form level (<Business rules for componentX>)."
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • [SOLVED] udev rules for U2F FIDO Plug-up key

    I just received a cheap U2F FIDO key (http://www.amazon.com/Plug-up-Internati … 00OGPO3ZS/) but couldn't use it under Chrome 38. I had to add the following rule to /etc/udev/rules.d/45-u2f.rules
    SUBSYSTEM=="hidraw", MODE="0666", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="f1d0"
    and then issued a
    # sudo udevadm trigger
    Should work with other vendors assuming you change the idVendor and idProduct.
    Have fun!

    LukeHandle wrote:Was thinking about the same device, what are you thoughts on it so far? I was mostly concerned with the price and how that translated to the quality, or lack thereof.
    The device for which I sent a link for is cheap one and when you receive it actually looks cheap but does the job. Initially I thought I needed to install the FIDO U2F Chrome extension https://chrome.google.com/webstore/deta … ionmgcdmne but it works just fine without it assuming you are using Chrome or Chromium 38+ and the above udev rule on ArchLinux (not required on Windows and MAC OS).
    Use case is fairly limited so far since it can only be used on Google account. I tried to use this Plug-Up U2F dongle on Yubico U2F demo page http://demo.yubico.com/start/u2f/neo but it doesn't work and thus even with the FIDO U2F Chrome extension...Weird since I thought all U2F will all be compatible. Since the protocol is open I hope other use cases will arise such as more major supported websites, easy integration in existing frameworks such as Wordpress, Roundcube... but also alternative uses such as 2nd factor authentication for disk encryption (LUKS).

  • [solved] KDE4 AltF2 no "Run Command" option, only works with menu apps

    Well, in Kubuntu, when I pressed Alt F2, and typed 'kdesudo nvidia-settings' (for example), which wasn't in the menu, there was an option to simply run the command (like with GNome, KDE3, and pretty much everything else), but on here, it doesn't show up. I'd really like to know how to add it. I'm using KDEmod BTW. EDIT: Hmm I logged off and on and it suddenly showed up, yay
    Last edited by doorknob60 (2008-09-29 04:32:45)

    The linker is compiling your binary to the default location of 0x8000000. This is fine for Linux to load as an application (even with less than 128MB memory, Linux can use the MMU on the CPU to map anything to 0x8000000). However with ring0 code you are dealing with real physical memory locations. You would need either a linker script (which you can look up, also see: http://wiki.osdev.org/Linker_Scripts) or to specify the options on the command line with
    ld -Ttext 0x100000 etc.
    0x100000 is at 1MB, so that leaves BIOS memory unaffected. For memory management past that you should read a memory map, which is beyond the scope of this.
    Edit: Fix formatting issues.
    Last edited by sdkmvx (2009-10-12 19:41:52)

  • [SOLVED] Udev: recognising plugging/unplugging of USB Audio Device

    Hi!
    I am trying to write an udev rule to detect if an usb audio device was plugged / unplugged to change my default audio device (in effect this udev rule should run a bash script..).
    Right now it looks like that:
    KERNEL=="pcmC[D0-9cp]*", DRIVERS=="usb", ACTION=="add", PROGRAM="/bin/bash -c '/home/me/dotfiles/soundconf.sh attached'"
    and I have a second rule for "remove" instead of add calling a different parameter.
    However, unfortunately the change is not being detected. my sound devices are listed in e.g. /proc/asound/card0/pcm0c etc for my first card and /proc/asound/card4/... for the second.
    They are also listed in /proc/asound/NAMEOFCARD (e.g. PCH).
    how can i reliably detect if one was plugged or unplugged?
    thanks !
    Last edited by replax (2013-11-27 22:50:00)

    hi!
    thanks!
    my output for "sudo udevadm monitor --kernel" is:
    monitor will print the received events for:
    KERNEL - the kernel uevent
    KERNEL[409.000749] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input24/event18 (input)
    KERNEL[409.023556] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input24 (input)
    KERNEL[409.023611] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0005/hidraw/hidraw0 (hidraw)
    KERNEL[409.023632] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0005 (hid)
    KERNEL[409.023648] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0 (usb)
    KERNEL[409.023829] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D1p (sound)
    KERNEL[409.023845] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D0p (sound)
    KERNEL[409.023859] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/controlC1 (sound)
    KERNEL[409.023869] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    KERNEL[409.023885] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1 (usb)
    KERNEL[409.023899] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.3 (usb)
    KERNEL[409.024517] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1 (usb)
    KERNEL[411.633928] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1 (usb)
    KERNEL[411.634043] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0 (usb)
    KERNEL[411.648482] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0006 (hid)
    KERNEL[411.649170] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input25 (input)
    KERNEL[411.649320] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input25/event18 (input)
    KERNEL[411.649347] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0006/hidraw/hidraw0 (hidraw)
    KERNEL[411.657385] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1 (usb)
    KERNEL[411.680527] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    KERNEL[411.680564] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D1p (sound)
    KERNEL[411.680737] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D0p (sound)
    KERNEL[411.680796] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/controlC1 (sound)
    KERNEL[411.680951] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.3 (usb)
    KERNEL[411.705251] change /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    and my output for "sudo udevadm --udev --property" is:
    monitor will print the received events for:
    UDEV - the event which udev sends out after rule processing
    UDEV [409.001439] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input24/event18 (
    input)
    ACTION=remove
    DEVLINKS=/dev/input/by-id/usb-HiFimeDIY_Audio_SA9023_USB_Audio-event-if00 /dev/input/by-path/pci-0000:00:1d.0-usb-0:1.2
    .1:1.0-event
    DEVNAME=/dev/input/event18
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input24/event18
    ID_BUS=usb
    ID_INPUT=1
    ID_MODEL=SA9023_USB_Audio
    ID_MODEL_ENC=SA9023\x20USB\x20Audio
    ID_MODEL_ID=10e1
    ID_PATH=pci-0000:00:1d.0-usb-0:1.2.1:1.0
    ID_PATH_TAG=pci-0000_00_1d_0-usb-0_1_2_1_1_0
    ID_REVISION=0001
    ID_SERIAL=HiFimeDIY_Audio_SA9023_USB_Audio
    ID_TYPE=hid
    ID_USB_DRIVER=usbhid
    ID_USB_INTERFACES=:030000:010100:010200:
    ID_USB_INTERFACE_NUM=00
    ID_VENDOR=HiFimeDIY_Audio
    ID_VENDOR_ENC=HiFimeDIY\x20Audio
    ID_VENDOR_ID=262a
    MAJOR=13
    MINOR=82
    SEQNUM=2036
    SUBSYSTEM=input
    USEC_INITIALIZED=4690
    UDEV [409.024376] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input24 (input)
    ACTION=remove
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input24
    EV=1
    ID_BUS=usb
    ID_FOR_SEAT=input-pci-0000_00_1d_0-usb-0_1_2_1_1_0
    ID_INPUT=1
    ID_MODEL=SA9023_USB_Audio
    ID_MODEL_ENC=SA9023\x20USB\x20Audio
    ID_MODEL_ID=10e1
    ID_PATH=pci-0000:00:1d.0-usb-0:1.2.1:1.0
    ID_PATH_TAG=pci-0000_00_1d_0-usb-0_1_2_1_1_0
    ID_REVISION=0001
    ID_SERIAL=HiFimeDIY_Audio_SA9023_USB_Audio
    ID_TYPE=hid
    ID_USB_DRIVER=usbhid
    ID_USB_INTERFACES=:030000:010100:010200:
    ID_USB_INTERFACE_NUM=00
    ID_VENDOR=HiFimeDIY_Audio
    ID_VENDOR_ENC=HiFimeDIY\x20Audio
    ID_VENDOR_ID=262a
    MODALIAS=input:b0003v262Ap10E1e0100-e0,kramlsfw
    NAME="HiFimeDIY Audio SA9023 USB Audio"
    PHYS="usb-0000:00:1d.0-1.2.1/input0"
    PRODUCT=3/262a/10e1/100
    PROP=0
    SEQNUM=2037
    SUBSYSTEM=input
    TAGS=:seat:
    UNIQ=""
    USEC_INITIALIZED=634532
    UDEV [409.024487] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0005/hid
    raw/hidraw0 (hidraw)
    ACTION=remove
    DEVNAME=/dev/hidraw0
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0005/hidraw/hidraw0
    MAJOR=248
    MINOR=0
    SEQNUM=2038
    SUBSYSTEM=hidraw
    USEC_INITIALIZED=9023681
    UDEV [409.026487] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0005 (hi
    d)
    ACTION=remove
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0005
    HID_ID=0003:0000262A:000010E1
    HID_NAME=HiFimeDIY Audio SA9023 USB Audio
    HID_PHYS=usb-0000:00:1d.0-1.2.1/input0
    MODALIAS=hid:b0003g0001v0000262Ap000010E1
    SEQNUM=2039
    SUBSYSTEM=hid
    USEC_INITIALIZED=23875
    UDEV [409.026531] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/controlC1 (
    sound)
    ACTION=remove
    DEVLINKS=/dev/snd/by-id/usb-HiFimeDIY_Audio_SA9023_USB_Audio-01 /dev/snd/by-path/pci-0000:00:1d.0-usb-0:1.2.1:1.1
    DEVNAME=/dev/snd/controlC1
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/controlC1
    ID_BUS=usb
    ID_MODEL=SA9023_USB_Audio
    ID_MODEL_ENC=SA9023\x20USB\x20Audio
    ID_MODEL_ID=10e1
    ID_PATH=pci-0000:00:1d.0-usb-0:1.2.1:1.1
    ID_PATH_TAG=pci-0000_00_1d_0-usb-0_1_2_1_1_1
    ID_REVISION=0001
    ID_SERIAL=HiFimeDIY_Audio_SA9023_USB_Audio
    ID_TYPE=audio
    ID_USB_DRIVER=snd-usb-audio
    ID_USB_INTERFACES=:030000:010100:010200:
    ID_USB_INTERFACE_NUM=01
    ID_VENDOR=HiFimeDIY_Audio
    ID_VENDOR_ENC=HiFimeDIY\x20Audio
    ID_VENDOR_ID=262a
    MAJOR=116
    MINOR=13
    SEQNUM=2043
    SUBSYSTEM=sound
    TAGS=:uaccess:
    USEC_INITIALIZED=665890
    UDEV [409.026557] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.3 (usb)
    ACTION=remove
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.3
    DEVTYPE=usb_interface
    ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB
    ID_VENDOR_FROM_DATABASE=Genesys Logic, Inc.
    INTERFACE=1/2/0
    MODALIAS=usb:v262Ap10E1d0001dc00dsc00dp00ic01isc02ip00in03
    PRODUCT=262a/10e1/1
    SEQNUM=2046
    SUBSYSTEM=usb
    TYPE=0/0/0
    USEC_INITIALIZED=665944
    UDEV [409.026573] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0 (usb)
    ACTION=remove
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0
    DEVTYPE=usb_interface
    ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB
    ID_VENDOR_FROM_DATABASE=Genesys Logic, Inc.
    INTERFACE=3/0/0
    MODALIAS=usb:v262Ap10E1d0001dc00dsc00dp00ic03isc00ip00in00
    PRODUCT=262a/10e1/1
    SEQNUM=2040
    SUBSYSTEM=usb
    TYPE=0/0/0
    USEC_INITIALIZED=130
    UDEV [409.026616] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D0p (s
    ound)
    ACTION=remove
    DEVNAME=/dev/snd/pcmC1D0p
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D0p
    MAJOR=116
    MINOR=12
    SEQNUM=2042
    SUBSYSTEM=sound
    TAGS=:uaccess:
    USEC_INITIALIZED=5836
    UDEV [409.078843] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D1p (s
    ound)
    ACTION=remove
    DEVNAME=/dev/snd/pcmC1D1p
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D1p
    MAJOR=116
    MINOR=11
    SEQNUM=2041
    SUBSYSTEM=sound
    TAGS=:uaccess:
    USEC_INITIALIZED=5794
    UDEV [409.079039] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    ACTION=remove
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1
    ID_BUS=usb
    ID_FOR_SEAT=sound-pci-0000_00_1d_0-usb-0_1_2_1_1_1
    ID_ID=usb-HiFimeDIY_Audio_SA9023_USB_Audio-01-Audio
    ID_MODEL=SA9023_USB_Audio
    ID_MODEL_ENC=SA9023\x20USB\x20Audio
    ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB
    ID_MODEL_ID=10e1
    ID_PATH=pci-0000:00:1d.0-usb-0:1.2.1:1.1
    ID_PATH_TAG=pci-0000_00_1d_0-usb-0_1_2_1_1_1
    ID_REVISION=0001
    ID_SERIAL=HiFimeDIY_Audio_SA9023_USB_Audio
    ID_TYPE=audio
    ID_USB_DRIVER=snd-usb-audio
    ID_USB_INTERFACES=:030000:010100:010200:
    ID_USB_INTERFACE_NUM=01
    ID_VENDOR=HiFimeDIY_Audio
    ID_VENDOR_ENC=HiFimeDIY\x20Audio
    ID_VENDOR_FROM_DATABASE=Genesys Logic, Inc.
    ID_VENDOR_ID=262a
    SEQNUM=2044
    SOUND_INITIALIZED=1
    SUBSYSTEM=sound
    SYSTEMD_WANTS=sound.target
    TAGS=:seat:systemd:
    USEC_INITIALIZED=5712
    UDEV [409.079517] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1 (usb)
    ACTION=remove
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1
    DEVTYPE=usb_interface
    ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB
    ID_VENDOR_FROM_DATABASE=Genesys Logic, Inc.
    INTERFACE=1/1/0
    MODALIAS=usb:v262Ap10E1d0001dc00dsc00dp00ic01isc01ip00in01
    PRODUCT=262a/10e1/1
    SEQNUM=2045
    SUBSYSTEM=usb
    TYPE=0/0/0
    USEC_INITIALIZED=642712
    UDEV [409.085432] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1 (usb)
    ACTION=remove
    BUSNUM=004
    DEVNAME=/dev/bus/usb/004/010
    DEVNUM=010
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1
    DEVTYPE=usb_device
    ID_BUS=usb
    ID_MODEL=SA9023_USB_Audio
    ID_MODEL_ENC=SA9023\x20USB\x20Audio
    ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB
    ID_MODEL_ID=10e1
    ID_REVISION=0001
    ID_SERIAL=HiFimeDIY_Audio_SA9023_USB_Audio
    ID_USB_INTERFACES=:030000:010100:010200:
    ID_VENDOR=HiFimeDIY_Audio
    ID_VENDOR_ENC=HiFimeDIY\x20Audio
    ID_VENDOR_FROM_DATABASE=Genesys Logic, Inc.
    ID_VENDOR_ID=262a
    MAJOR=189
    MINOR=393
    PRODUCT=262a/10e1/1
    SEQNUM=2047
    SUBSYSTEM=usb
    TYPE=0/0/0
    USEC_INITIALIZED=619842
    UDEV [411.697540] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1 (usb)
    ACTION=add
    BUSNUM=004
    DEVNAME=/dev/bus/usb/004/011
    DEVNUM=011
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1
    DEVTYPE=usb_device
    ID_BUS=usb
    ID_MODEL=SA9023_USB_Audio
    ID_MODEL_ENC=SA9023\x20USB\x20Audio
    ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB
    ID_MODEL_ID=10e1
    ID_REVISION=0001
    ID_SERIAL=HiFimeDIY_Audio_SA9023_USB_Audio
    ID_USB_INTERFACES=:030000:010100:010200:
    ID_VENDOR=HiFimeDIY_Audio
    ID_VENDOR_ENC=HiFimeDIY\x20Audio
    ID_VENDOR_FROM_DATABASE=Genesys Logic, Inc.
    ID_VENDOR_ID=262a
    MAJOR=189
    MINOR=394
    PRODUCT=262a/10e1/1
    SEQNUM=2048
    SUBSYSTEM=usb
    TYPE=0/0/0
    USEC_INITIALIZED=33928
    UDEV [411.699672] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.3 (usb)
    ACTION=add
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.3
    DEVTYPE=usb_interface
    DRIVER=snd-usb-audio
    ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB
    ID_VENDOR_FROM_DATABASE=Genesys Logic, Inc.
    INTERFACE=1/2/0
    MODALIAS=usb:v262Ap10E1d0001dc00dsc00dp00ic01isc02ip00in03
    PRODUCT=262a/10e1/1
    SEQNUM=2059
    SUBSYSTEM=usb
    TYPE=0/0/0
    USEC_INITIALIZED=80939
    UDEV [411.699773] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0 (usb)
    ACTION=add
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0
    DEVTYPE=usb_interface
    ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB
    ID_VENDOR_FROM_DATABASE=Genesys Logic, Inc.
    INTERFACE=3/0/0
    MODALIAS=usb:v262Ap10E1d0001dc00dsc00dp00ic03isc00ip00in00
    PRODUCT=262a/10e1/1
    SEQNUM=2049
    SUBSYSTEM=usb
    TYPE=0/0/0
    USEC_INITIALIZED=34043
    UDEV [411.699840] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1 (usb)
    ACTION=add
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1
    DEVTYPE=usb_interface
    ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB
    ID_VENDOR_FROM_DATABASE=Genesys Logic, Inc.
    INTERFACE=1/1/0
    MODALIAS=usb:v262Ap10E1d0001dc00dsc00dp00ic01isc01ip00in01
    PRODUCT=262a/10e1/1
    SEQNUM=2054
    SUBSYSTEM=usb
    TYPE=0/0/0
    USEC_INITIALIZED=57387
    UDEV [411.701367] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0006 (hi
    d)
    ACTION=add
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0006
    HID_ID=0003:0000262A:000010E1
    HID_NAME=HiFimeDIY Audio SA9023 USB Audio
    HID_PHYS=usb-0000:00:1d.0-1.2.1/input0
    MODALIAS=hid:b0003g0001v0000262Ap000010E1
    SEQNUM=2050
    SUBSYSTEM=hid
    USEC_INITIALIZED=48481
    UDEV [411.701544] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    ACTION=add
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1
    ID_FOR_SEAT=sound-pci-0000_00_1d_0-usb-0_1_2_1_1_1
    ID_PATH=pci-0000:00:1d.0-usb-0:1.2.1:1.1
    ID_PATH_TAG=pci-0000_00_1d_0-usb-0_1_2_1_1_1
    SEQNUM=2055
    SUBSYSTEM=sound
    SYSTEMD_WANTS=sound.target
    TAGS=:seat:systemd:
    USEC_INITIALIZED=80503
    UDEV [411.702560] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input25 (input)
    ACTION=add
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input25
    EV=1
    ID_BUS=usb
    ID_FOR_SEAT=input-pci-0000_00_1d_0-usb-0_1_2_1_1_0
    ID_INPUT=1
    ID_MODEL=SA9023_USB_Audio
    ID_MODEL_ENC=SA9023\x20USB\x20Audio
    ID_MODEL_ID=10e1
    ID_PATH=pci-0000:00:1d.0-usb-0:1.2.1:1.0
    ID_PATH_TAG=pci-0000_00_1d_0-usb-0_1_2_1_1_0
    ID_REVISION=0001
    ID_SERIAL=HiFimeDIY_Audio_SA9023_USB_Audio
    ID_TYPE=hid
    ID_USB_DRIVER=usbhid
    ID_USB_INTERFACES=:030000:010100:010200:
    ID_USB_INTERFACE_NUM=00
    ID_VENDOR=HiFimeDIY_Audio
    ID_VENDOR_ENC=HiFimeDIY\x20Audio
    ID_VENDOR_ID=262a
    MODALIAS=input:b0003v262Ap10E1e0100-e0,kramlsfw
    NAME="HiFimeDIY Audio SA9023 USB Audio"
    PHYS="usb-0000:00:1d.0-1.2.1/input0"
    PRODUCT=3/262a/10e1/100
    PROP=0
    SEQNUM=2051
    SUBSYSTEM=input
    TAGS=:seat:
    UNIQ=""
    USEC_INITIALIZED=49147
    UDEV [411.703227] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D0p (s
    ound)
    ACTION=add
    DEVNAME=/dev/snd/pcmC1D0p
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D0p
    MAJOR=116
    MINOR=12
    SEQNUM=2057
    SUBSYSTEM=sound
    TAGS=:uaccess:
    USEC_INITIALIZED=80672
    UDEV [411.704394] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0006/hid
    raw/hidraw0 (hidraw)
    ACTION=add
    DEVNAME=/dev/hidraw0
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0006/hidraw/hidraw0
    MAJOR=248
    MINOR=0
    SEQNUM=2053
    SUBSYSTEM=hidraw
    USEC_INITIALIZED=49353
    UDEV [411.705903] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input25/event18 (
    input)
    ACTION=add
    DEVLINKS=/dev/input/by-id/usb-HiFimeDIY_Audio_SA9023_USB_Audio-event-if00 /dev/input/by-path/pci-0000:00:1d.0-usb-0:1.2
    .1:1.0-event
    DEVNAME=/dev/input/event18
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input25/event18
    ID_BUS=usb
    ID_INPUT=1
    ID_MODEL=SA9023_USB_Audio
    ID_MODEL_ENC=SA9023\x20USB\x20Audio
    ID_MODEL_ID=10e1
    ID_PATH=pci-0000:00:1d.0-usb-0:1.2.1:1.0
    ID_PATH_TAG=pci-0000_00_1d_0-usb-0_1_2_1_1_0
    ID_REVISION=0001
    ID_SERIAL=HiFimeDIY_Audio_SA9023_USB_Audio
    ID_TYPE=hid
    ID_USB_DRIVER=usbhid
    ID_USB_INTERFACES=:030000:010100:010200:
    ID_USB_INTERFACE_NUM=00
    ID_VENDOR=HiFimeDIY_Audio
    ID_VENDOR_ENC=HiFimeDIY\x20Audio
    ID_VENDOR_ID=262a
    MAJOR=13
    MINOR=82
    SEQNUM=2052
    SUBSYSTEM=input
    USEC_INITIALIZED=49330
    UDEV [411.714557] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/controlC1 (
    sound)
    ACTION=add
    DEVLINKS=/dev/snd/by-id/usb-HiFimeDIY_Audio_SA9023_USB_Audio-01 /dev/snd/by-path/pci-0000:00:1d.0-usb-0:1.2.1:1.1
    DEVNAME=/dev/snd/controlC1
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/controlC1
    ID_BUS=usb
    ID_MODEL=SA9023_USB_Audio
    ID_MODEL_ENC=SA9023\x20USB\x20Audio
    ID_MODEL_ID=10e1
    ID_PATH=pci-0000:00:1d.0-usb-0:1.2.1:1.1
    ID_PATH_TAG=pci-0000_00_1d_0-usb-0_1_2_1_1_1
    ID_REVISION=0001
    ID_SERIAL=HiFimeDIY_Audio_SA9023_USB_Audio
    ID_TYPE=audio
    ID_USB_DRIVER=snd-usb-audio
    ID_USB_INTERFACES=:030000:010100:010200:
    ID_USB_INTERFACE_NUM=01
    ID_VENDOR=HiFimeDIY_Audio
    ID_VENDOR_ENC=HiFimeDIY\x20Audio
    ID_VENDOR_ID=262a
    MAJOR=116
    MINOR=13
    SEQNUM=2058
    SUBSYSTEM=sound
    TAGS=:uaccess:
    USEC_INITIALIZED=80812
    UDEV [411.759604] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D1p (s
    ound)
    ACTION=add
    DEVNAME=/dev/snd/pcmC1D1p
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D1p
    MAJOR=116
    MINOR=11
    SEQNUM=2056
    SUBSYSTEM=sound
    TAGS=:uaccess:
    USEC_INITIALIZED=80575
    UDEV [411.760476] change /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    ACTION=change
    DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1
    ID_BUS=usb
    ID_FOR_SEAT=sound-pci-0000_00_1d_0-usb-0_1_2_1_1_1
    ID_ID=usb-HiFimeDIY_Audio_SA9023_USB_Audio-01-Audio
    ID_MODEL=SA9023_USB_Audio
    ID_MODEL_ENC=SA9023\x20USB\x20Audio
    ID_MODEL_FROM_DATABASE=USB-2.0 4-Port HUB
    ID_MODEL_ID=10e1
    ID_PATH=pci-0000:00:1d.0-usb-0:1.2.1:1.1
    ID_PATH_TAG=pci-0000_00_1d_0-usb-0_1_2_1_1_1
    ID_REVISION=0001
    ID_SERIAL=HiFimeDIY_Audio_SA9023_USB_Audio
    ID_TYPE=audio
    ID_USB_DRIVER=snd-usb-audio
    ID_USB_INTERFACES=:030000:010100:010200:
    ID_USB_INTERFACE_NUM=01
    ID_VENDOR=HiFimeDIY_Audio
    ID_VENDOR_ENC=HiFimeDIY\x20Audio
    ID_VENDOR_FROM_DATABASE=Genesys Logic, Inc.
    ID_VENDOR_ID=262a
    SEQNUM=2060
    SOUND_INITIALIZED=1
    SUBSYSTEM=sound
    SYSTEMD_WANTS=sound.target
    TAGS=:seat:systemd:
    USEC_INITIALIZED=80503
    the output of "sudo udevadm monitor" is:
    monitor will print the received events for:
    UDEV - the event which udev sends out after rule processing
    KERNEL - the kernel uevent
    KERNEL[10520.780009] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input24/event17 (input)
    UDEV [10520.783295] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input24/event17 (input)
    KERNEL[10520.789826] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input24 (input)
    KERNEL[10520.789859] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0005/hidraw/hidraw0 (hidraw)
    KERNEL[10520.789871] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0005 (hid)
    KERNEL[10520.789895] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0 (usb)
    KERNEL[10520.789965] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D1p (sound)
    KERNEL[10520.789999] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D0p (sound)
    KERNEL[10520.790031] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/controlC1 (sound)
    KERNEL[10520.790473] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    UDEV [10520.790483] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0005/hidraw/hidraw0 (hidraw)
    KERNEL[10520.790494] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1 (usb)
    UDEV [10520.790521] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input24 (input)
    KERNEL[10520.790533] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.3 (usb)
    UDEV [10520.790543] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D1p (sound)
    KERNEL[10520.790615] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1 (usb)
    UDEV [10520.790653] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D0p (sound)
    UDEV [10520.790723] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/controlC1 (sound)
    UDEV [10520.790843] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0005 (hid)
    UDEV [10520.790870] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    UDEV [10520.791022] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.3 (usb)
    UDEV [10520.791133] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1 (usb)
    UDEV [10520.791157] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0 (usb)
    UDEV [10520.795934] remove /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1 (usb)
    KERNEL[10523.411837] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1 (usb)
    KERNEL[10523.411961] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0 (usb)
    KERNEL[10523.425856] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0006 (hid)
    KERNEL[10523.426126] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input25 (input)
    KERNEL[10523.426179] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input25/event17 (input)
    KERNEL[10523.426268] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0006/hidraw/hidraw0 (hidraw)
    KERNEL[10523.433989] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1 (usb)
    KERNEL[10523.455486] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    KERNEL[10523.455508] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D1p (sound)
    KERNEL[10523.455540] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D0p (sound)
    KERNEL[10523.455580] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/controlC1 (sound)
    KERNEL[10523.455608] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.3 (usb)
    UDEV [10523.463039] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1 (usb)
    UDEV [10523.464322] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0 (usb)
    UDEV [10523.464384] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1 (usb)
    UDEV [10523.464409] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.3 (usb)
    UDEV [10523.465345] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0006 (hid)
    UDEV [10523.465380] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    UDEV [10523.466303] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input25 (input)
    UDEV [10523.466417] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/0003:262A:10E1.0006/hidraw/hidraw0 (hidraw)
    UDEV [10523.467311] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.0/input/input25/event17 (input)
    UDEV [10523.468387] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D1p (sound)
    UDEV [10523.468659] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/pcmC1D0p (sound)
    KERNEL[10523.468942] change /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    UDEV [10523.474581] add /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1/controlC1 (sound)
    UDEV [10523.475757] change /devices/pci0000:00/0000:00:1d.0/usb4/4-1/4-1.2/4-1.2.1/4-1.2.1:1.1/sound/card1 (sound)
    please not that my usb soundcard is attached through a usb hub to my laptop and that it was attached when I ran the command, then removed it and attached it again.
    tried to use those udev rules:
    KERNEL=="pcmC1D1p", DRIVERS=="usb", ACTION=="add", RUN+="/bin/bash -c '/home/me/dotfiles/soundconf.sh attached'"
    KERNEL=="pcmC1D1p", DRIVERS=="usb", ACTION=="remove", RUN+="/bin/bash -c '/home/me/dotfiles/soundconf.sh detached'"
    to no avail unfortunately...
    thanks a lot for your patience and time !

Maybe you are looking for

  • Dreamweaver Can No Longer Find Template

    I have an intranet that I put together in Dreamweaver using templates. Originally, all the links between the pages were document-relative, and the site was defined as just the basic folder containing all the intranet pages and related documents. It w

  • Making Period Start Date read-only on Appraisal page

    Hi, I have a requirement to default Appraisal Period Start Date and Period End Date and make these fields non-editable. I am able to default the values for these fields by extending CO. When I make these fields read-only and performs any operation on

  • Ping.vi

    When I use the Ping.vi I get : Error 7 occurred at Open File+.vipen File Possible reason(s): LabVIEW:  File not found. The file might have been moved or deleted, or the file path might be incorrectly formatted for the operating system. For example, u

  • Freehand keeps crashing!

    I need some help! I've been using Freehand v 11.0.2 for some time now, but recently I was having issues with my copies of Windows and installed Windows 7 Home Premium, 64-bit and reinstalled the same Freehand disc. The program opens fine but when I c

  • How do you get 2 different link colors on the same page in DW CS4

    Hi After creating a white link called "white link test" in a blue background, I need to create a blue link called "blue link test" in a white background. How do I accomplish this task In DW CS4? I would greatly appreciate any feedback. Thank you <sty