B"H
On 5/15/07, Nix <[EMAIL PROTECTED]> wrote:
On 15 May 2007, Menachem Shapiro said:

> I created a file called 98-rockbox.rules and put it in
> /etc/udev/rules.d. I experimented with different things, trying to use
> the VID and PID of the usb device as an identifier. I ended up with
> something like tihs:
> SUBSYSTEM=="usb",  ATTRS{idVendor}=="05ab", ATTRS{idProduct}=="0060",
> RUN+="/home/mshapiro/rockbox_scripts/rockbox_downloader.sh"
>

You can use whatever block you like, but all the keys have to come
from the same block. (Or you could upgrade udev, as later versions
don't have this limitation.)


In an effort to get it down to the minimum needed to get it to work, I
tried this:
SUBSYSTEMS=="scsi",  RUN+="home/mshapiro/rockbox_scripts/rockbox_downloader.sh"

(I also tried this, in case there was a permissions issue with my script:
SUBSYSTEMS=="scsi",  RUN+="zenity --warning --text 'teeext'")

'udevtest /sys/block/sdb/' returned the following data (with the data
at the end seeming to indicate that it should run the command when I
plug in the device.). However, plugging in the device did not result
in the script running. Any ideas? (If it helps, I an running ubuntu
7.04) :
===================================================
[EMAIL PROTECTED]:~/Desktop/rockbox_scripts$ udevtest /sys/block/sdb/
parse_file: reading '/etc/udev/rules.d/00-init.rules' as rules file
parse_file: reading '/etc/udev/rules.d/05-options.rules' as rules file
parse_file: reading '/etc/udev/rules.d/20-names.rules' as rules file
parse_file: reading '/etc/udev/rules.d/25-dmsetup.rules' as rules file
parse_file: reading '/etc/udev/rules.d/25-iftab.rules' as rules file
parse_file: reading '/etc/udev/rules.d/30-cdrom_id.rules' as rules file
parse_file: reading '/etc/udev/rules.d/40-permissions.rules' as rules file
parse_file: reading '/etc/udev/rules.d/45-hplip.rules' as rules file
parse_file: reading '/etc/udev/rules.d/45-libgphoto2.rules' as rules file
parse_file: reading '/etc/udev/rules.d/45-libsane.rules' as rules file
parse_file: reading
'/etc/udev/rules.d/50-xserver-xorg-input-wacom.rules' as rules file
parse_file: reading '/etc/udev/rules.d/60-libpisock.rules' as rules file
parse_file: reading '/etc/udev/rules.d/60-symlinks.rules' as rules file
parse_file: reading '/etc/udev/rules.d/60-vboxdrv.rules' as rules file
parse_file: reading '/etc/udev/rules.d/65-persistent-input.rules' as rules file
parse_file: reading '/etc/udev/rules.d/65-persistent-storage.rules' as
rules file
parse_file: reading '/etc/udev/rules.d/80-programs.rules' as rules file
parse_file: reading '/etc/udev/rules.d/85-alsa.rules' as rules file
parse_file: reading '/etc/udev/rules.d/85-brltty.rules' as rules file
parse_file: reading '/etc/udev/rules.d/85-hdparm.rules' as rules file
parse_file: reading '/etc/udev/rules.d/85-hplj10xx.rules' as rules file
parse_file: reading '/etc/udev/rules.d/85-hwclock.rules' as rules file
parse_file: reading '/etc/udev/rules.d/85-ifupdown.rules' as rules file
parse_file: reading '/etc/udev/rules.d/85-pcmcia.rules' as rules file
parse_file: reading '/etc/udev/rules.d/90-modprobe.rules' as rules file
parse_file: reading '/etc/udev/rules.d/95-hal.rules' as rules file
parse_file: reading '/etc/udev/rules.d/98-rockbox.rules' as rules file
parse_file: reading '/etc/udev/rules.d/99-udevmonitor.rules' as rules file
This program is for debugging only, it does not run any program,
specified by a RUN key. It may show incorrect results, if rules
match against subsystem specfic kernel event variables.

main: looking at device '/block/sdb' from subsystem 'block'
run_program: 'usb_id -x'
run_program: '/lib/udev/usb_id' (stdout) 'ID_VENDOR=FUJITSU'
run_program: '/lib/udev/usb_id' (stdout) 'ID_MODEL=MHV2040AT'
run_program: '/lib/udev/usb_id' (stdout) 'ID_REVISION=0000'
run_program: '/lib/udev/usb_id' (stdout)
'ID_SERIAL=FUJITSU_MHV2040AT_wwww.archos.comA-0:0'
run_program: '/lib/udev/usb_id' (stdout) 'ID_SERIAL_SHORT=wwww.archos.comA'
run_program: '/lib/udev/usb_id' (stdout) 'ID_TYPE=disk'
run_program: '/lib/udev/usb_id' (stdout) 'ID_INSTANCE=0:0'
run_program: '/lib/udev/usb_id' (stdout) 'ID_BUS=usb'
run_program: '/lib/udev/usb_id' returned with status 0
udev_rules_get_name: add symlink
'disk/by-id/usb-FUJITSU_MHV2040AT_wwww.archos.comA-0:0'
run_program: 'path_id /block/sdb'
run_program: '/lib/udev/path_id' (stdout)
'ID_PATH=pci-0000:00:1d.7-usb-0:7:2.0-scsi-0:0:0:0'
run_program: '/lib/udev/path_id' returned with status 0
udev_rules_get_name: add symlink
'disk/by-path/pci-0000:00:1d.7-usb-0:7:2.0-scsi-0:0:0:0'
udev_node_mknod: mknod(/dev/.tmp-8-16, 060600, 8, 16) failed: Permission denied
run_program: 'vol_id --export /dev/.tmp-8-16'
run_program: '/lib/udev/vol_id' (stderr) '/dev/.tmp-8-16: error open volume'
run_program: '/lib/udev/vol_id' returned with status 2
run_program: 'edd_id --export /dev/.tmp-8-16'
run_program: '/lib/udev/edd_id' (stderr) 'no kernel EDD support'
run_program: '/lib/udev/edd_id' returned with status 2
udev_rules_get_name: no node name set, will use kernel name 'sdb'
unlink_secure: chown(/dev/.tmp-8-16, 0, 0) failed: No such file or directory
unlink_secure: chmod(/dev/.tmp-8-16, 0000) failed: No such file or directory
udev_device_event: device '/block/sdb' already in database, cleanup
udev_node_add: creating device node '/dev/sdb', major = '8', minor =
'16', mode = '0660', uid = '0', gid = '46'
udev_node_update_symlinks: update symlink
'disk/by-id/usb-FUJITSU_MHV2040AT_wwww.archos.comA-0:0' of
'/block/sdb'
udev_db_get_devices_by_name: found index directory
'/dev/.udev/names/disk%2fby-id%2fusb-FUJITSU_MHV2040AT_wwww.archos.comA-0:0'
update_link: found 1 devices with name
'disk/by-id/usb-FUJITSU_MHV2040AT_wwww.archos.comA-0:0'
update_link: found '/block/sdb' for
'disk/by-id/usb-FUJITSU_MHV2040AT_wwww.archos.comA-0:0'
update_link: compare (our own) priority of '/block/sdb' 0 >= 0
update_link: 'disk/by-id/usb-FUJITSU_MHV2040AT_wwww.archos.comA-0:0'
with target 'sdb' has the highest priority 0, create it
udev_node_update_symlinks: update symlink
'disk/by-path/pci-0000:00:1d.7-usb-0:7:2.0-scsi-0:0:0:0' of
'/block/sdb'
udev_db_get_devices_by_name: found index directory
'/dev/.udev/names/disk%2fby-path%2fpci-0000:00:1d.7-usb-0:7:2.0-scsi-0:0:0:0'
update_link: found 1 devices with name
'disk/by-path/pci-0000:00:1d.7-usb-0:7:2.0-scsi-0:0:0:0'
update_link: found '/block/sdb' for
'disk/by-path/pci-0000:00:1d.7-usb-0:7:2.0-scsi-0:0:0:0'
update_link: compare (our own) priority of '/block/sdb' 0 >= 0
update_link: 'disk/by-path/pci-0000:00:1d.7-usb-0:7:2.0-scsi-0:0:0:0'
with target 'sdb' has the highest priority 0, create it
main: run: 'socket:/org/freedesktop/hal/udev_event'
main: run: '/home/mshapiro/rockbox_scripts/rockbox_downloader.sh'
main: run: 'socket:/org/kernel/udev/monitor'
===================================================



--
`In the future, company names will be a 32-character hex string.'
  --- Bruce Schneier on the shortage of company names

Reply via email to