On 7/12/06, Randall Skelton <randall.skelton@gmail.com> wrote:> Hi all, > > I've tried installing NUT from both the Debian packageswhat version of Debian?> # ls -l /proc/bus/usb/001/013 > -rw-rw---- 1 root nut 52 Jul 12 14:45 /proc/bus/usb/001/013On my system (a weird mix of sarge and testing), I think newhidups (libusb, really) was looking at /dev/bus/usb instead. Take a look at the hotplug-ng scripts - they might help. -- - Charles Lepple
Hi all, I've tried installing NUT from both the Debian packages and the 2.0.4-pre1 source but I'm unable to sort out the USB permissions when using the newhidups driver and an APC XS series UPS. In each case, I'm able to run newhidups as user root but running it as user nut fails: --- as 'nut' # /lib/nut/newhidups -u nut -a apc1 Network UPS Tools: New USB/HID UPS driver 0.28 (2.0.3) No matching USB/HID UPS found daffodil:/etc/hotplug/usb# /lib/nut/newhidups -u nut -DDDDD -a apc1 Network UPS Tools: New USB/HID UPS driver 0.28 (2.0.3) debug level is '5' Checking device (0000/0000) (005/001) - VendorID: 0000 - ProductID: 0000 - Manufacturer: unknown - Product: unknown - Serial Number: unknown - Bus: 005 Trying to match device Device does not match - skipping Checking device (0000/0000) (004/001) - VendorID: 0000 - ProductID: 0000 - Manufacturer: unknown - Product: unknown - Serial Number: unknown - Bus: 004 Trying to match device Device does not match - skipping Checking device (0000/0000) (003/001) - VendorID: 0000 - ProductID: 0000 - Manufacturer: unknown - Product: unknown - Serial Number: unknown - Bus: 003 Trying to match device Device does not match - skipping Checking device (0000/0000) (002/001) - VendorID: 0000 - ProductID: 0000 - Manufacturer: unknown - Product: unknown - Serial Number: unknown - Bus: 002 Trying to match device Device does not match - skipping Checking device (0000/0000) (001/001) - VendorID: 0000 - ProductID: 0000 - Manufacturer: unknown - Product: unknown - Serial Number: unknown - Bus: 001 Trying to match device Device does not match - skipping No appropriate HID device found No matching USB/HID UPS found --- as 'root' # /lib/nut/newhidups -u root -DDDDD -a apc1 Network UPS Tools: New USB/HID UPS driver 0.28 (2.0.3) debug level is '5' Checking device (0000/0000) (005/001) - VendorID: 0000 - ProductID: 0000 - Manufacturer: Linux 2.6.15.4.rhs.20060221 ehci_hcd - Product: EHCI Host Controller - Serial Number: 0000:00:1d.7 - Bus: 005 Trying to match device Device does not match - skipping Checking device (0000/0000) (004/001) - VendorID: 0000 - ProductID: 0000 - Manufacturer: Linux 2.6.15.4.rhs.20060221 uhci_hcd - Product: UHCI Host Controller - Serial Number: 0000:00:1d.3 - Bus: 004 Trying to match device Device does not match - skipping Checking device (0000/0000) (003/001) - VendorID: 0000 - ProductID: 0000 - Manufacturer: Linux 2.6.15.4.rhs.20060221 uhci_hcd - Product: UHCI Host Controller - Serial Number: 0000:00:1d.2 - Bus: 003 Trying to match device Device does not match - skipping Checking device (0000/0000) (002/001) - VendorID: 0000 - ProductID: 0000 - Manufacturer: Linux 2.6.15.4.rhs.20060221 uhci_hcd - Product: UHCI Host Controller - Serial Number: 0000:00:1d.1 - Bus: 002 Trying to match device Device does not match - skipping Checking device (051D/0002) (001/013) - VendorID: 051d - ProductID: 0002 - Manufacturer: American Power Conversion - Product: Back-UPS BR 800 FW:9.o2 .D USB FW:o2 - Serial Number: QB0425139488 - Bus: 001 Trying to match device Device matches failed to claim USB device, trying 2 more time(s)... detaching kernel driver from USB device... trying again to claim USB device... HID descriptor retrieved (Reportlen = 1217) Report descriptor retrieved (Reportlen = 1217) Found HID device Report Descriptor size = 1217 Report Descriptor: (200 bytes) => 05 84 09 04 A1 01 09 24 A1 02 85 01 09 FE 79 01 Detected a UPS: American Power Conversion/Back-UPS BR 800 FW:9.o2 .D USB FW:o2 Using subdriver: APC HID 0.8 ... My permissions on the usb device are set by the usual hotplug scripts: # lsusb Bus 005 Device 001: ID 0000:0000 Bus 004 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 001 Device 013: ID 051d:0002 American Power Conversion Back-UPS Pro 500/1000/1500 Bus 001 Device 001: ID 0000:0000 daffodil:/etc/hotplug/usb# ls -l /proc/bus/usb/ 001/ 002/ 003/ 004/ 005/ devices # ls -l /proc/bus/usb/001/013 -rw-rw---- 1 root nut 52 Jul 12 14:45 /proc/bus/usb/001/013 The hotplug scripts read: /etc/hotplug/usb# ls -l -rw-r--r-- 1 root root 1502 Jul 12 14:45 libhid.usermap -rwxr-xr-x 1 root root 490 Mar 13 03:14 libhidups --- /etc/hotplug/usb# cat libhidups #!/bin/bash # taken from libgphoto2 GROUP=nut # for previous udev versions if [ "$ACTION" = "add" ] && [ -f "$DEVICE" ] then # check if $GROUP really exists if getent group $GROUP > /dev/null; then chmod 660 "$DEVICE" chown root:$GROUP "$DEVICE" fi fi # for recent udev versions if [ "$ACTION" = "add" ] && [ -r "$DEVNAME" ] then # check if $GROUP really exists if getent group $GROUP > /dev/null; then chmod 660 "$DEVNAME" chown root:$GROUP "$DEVNAME" fi fi daff --- /etc/hotplug/usb# cat libhid.usermap # This file is installed by the Network UPS Tools package. # # Sample entry (replace 0xVVVV and 0xPPPP with vendor ID and product ID respectively) : # libhidups 0x0003 0xVVVV 0xPPPP 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 # # usb module match_flags idVendor idProduct bcdDevice_lo bcdDevice_hi bDeviceClass bDeviceSubClass bDeviceProtocol bInterfaceClass bInterfaceSubClass bInterfaceProtocol driver_info # # MGE UPS SYSTEMS units libhidups 0x0003 0x0463 0xffff 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 libhidups 0x0003 0x0463 0x0001 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 # APC units libhidups 0x0003 0x051d 0x0002 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 # Powerware USB libhidups 0x0003 0x0592 0x0002 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 # Tripp Lite libhidups 0x0003 0x09ae 0x0001 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 I've been playing with this for most of the afternoon but I'm out of ideas. Any and all suggestions are greatly appreciated! Cheers, Randall