Ubuntu 10.10 (Maverick) /dev/bus/usb ioctl não raiz negado

Ubuntu 10.10 (Maverick) /dev/bus/usb ioctl não raiz negado

Ubuntu 10.10 (Maverick).

Tenho um problema ao executar o programa garmin_save_runs (parte do pacote garmin-forerunner-tools) como um usuário comum, embora funcione quando executado com sudo. A execução não sudo costumava funcionar no Ubuntu 10.04 (Lucid), e acho que o pacote não mudou muito, então acho que algumas permissões mudaram com a atualização.

Descobri que posso contornar a necessidade de executar o programa como sudo: $ sudo setcap CAP_DAC_OVERRIDE=ep /usr/bin/garmin_save_runs

Agora estou me perguntando:

  1. O que mudou de Lucid para Maverick para causar esse problema?
  2. Minha solução setcap é boa?
  3. A culpa é do programa?

trecho de trecho:

open("/dev/bus/usb/001/010", O_RDWR)    = -1 EACCES (Permission denied)
open("/dev/bus/usb/001/010", O_RDONLY)  = 3
ioctl(3, USBDEVFS_IOCTL or USBDEVFS_IOCTL32, 0x7ffffabef170) = -1 EPERM (Operation not permitted)
close(3)                                = 0
open("/dev/bus/usb/001/002", O_RDWR)    = -1 EACCES (Permission denied)
open("/dev/bus/usb/001/002", O_RDONLY)  = 3
ioctl(3, USBDEVFS_IOCTL or USBDEVFS_IOCTL32, 0x7ffffabef170) = -1 EPERM (Operation not permitted)
close(3)                                = 0
open("/dev/bus/usb/001/001", O_RDWR)    = -1 EACCES (Permission denied)
open("/dev/bus/usb/001/001", O_RDONLY)  = 3
ioctl(3, USBDEVFS_IOCTL or USBDEVFS_IOCTL32, 0x7ffffabef170) = -1 EPERM (Operation not permitted)
close(3)                                = 0

informação relacionada