udev doesn't set up correct permissions for usb_devices, such as my libgphoto2 camera. la /dev/bus/usb/001/013 crw-rw-r-- 1 root root 189, 12 May 28 22:23 /dev/bus/usb/001/013 is set up according the rule: /etc/udev/rules.d/50-udev.rules SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0644" which makes it impossible to use, in my case, a camera as $USER in $GROUP "plugdev", i changed the rule to: SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="plugdev", MODE="0664" which works like a breeze ;) PATCH: diff -u /etc/udev/rules.d/50-udev.rules /etc/udev/rules.d/50-udev.rules.org --- /etc/udev/rules.d/50-udev.rules 2006-05-28 22:15:16.000000000 +0200 +++ /etc/udev/rules.d/50-udev.rules.org 2006-05-28 22:15:38.000000000 +0200 @@ -295,7 +295,7 @@ ##################################### # usbfs-like device nodes -SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="plugdev", MODE="0664" +SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0644" # Module autoloading Portage 2.1_rc3 (default-linux/amd64/2006.0, gcc-3.4.6, glibc-2.4-r3, 2.6.16-gentoo-r8 x86_64) ================================================================= System uname: 2.6.16-gentoo-r8 x86_64 AMD Athlon(tm) 64 Processor 3700+ Gentoo Base System version 1.12.0 ccache version 2.4 [disabled] dev-lang/python: 2.4.3-r1 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r1 dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2 sys-devel/binutils: 2.16.1-r2 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r3 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=athlon64 -pipe -fno-ident " CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -march=athlon64 -pipe -fno-ident " DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig candy distlocks metadata-transfer sandbox sfperms strict userpriv"GENTOO_MIRRORS="http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/" LDFLAGS="-Wl,-O1 -Wl,--sort-common -s" LINGUAS="de" MAKEOPTS="-j2" PKGDIR="/media/sdb7/quickpkg" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage /usr/local/ipl_ebuilds" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="amd64 X a52 aac acpi alsa amr arts asf avi berkdb bitmap-fonts bluetooth cdr cli crypt cups directfb dri dts dvd dvdread eds emboss encode fbcon flac foomaticdb gcj gif glibc-omitfp gnome gphoto2 gpm gstreamer gtk gtk2 imlib isdnlog java joystick jpeg kde kdeenablefinal libcaca lirc lzw lzw-tiff mad matroska mng motif mp3 mpeg mplayer msn musepack mysql nas ncurses network nls nptl nptlonly nvidia ogg oggvorbis openal opengl oss pam pcre pdflib perl pic png posix pppd python qt quicktime readline reflection rtc sdl session spell spl ssl svg tcpd threads tiff truetype truetype-fonts type1-fonts unicode usb userlocales v4l vcd vorbis x264 xine xinerama xmms xorg xpm xv xvid zlib elibc_glibc input_devices_keyboard input_devices_mouse input_devices_joystick kernel_linux linguas_de userland_GNU video_cards_nv video_cards_nvidia video_cards_vesa" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_RSYNC_EXTRA_OPTS
# grep usb_device /etc/udev/rules.d/50-udev.rules SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0644" # emerge -pv udev These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] sys-fs/udev-090 0 kB
# grep usb_device /etc/udev/rules.d/50-udev.rules SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0644" makes it for a user NOT possible to use the device, unless he's in group "root", should really be changed to: SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="plugdev", MODE="0664" at least a user in "plugdev" is able to use the usb_device then.
As said, this is FIXED in 090 at least... I don't see what's your point here in reopening this bug.
Sigh, for starters, it would really help to NOT post reversed patches... :/
emerge --sync ; emerge udev; etc-update ; grep /etc/udev/rules.d/50-udev.rules [..] SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0644" It obviously isnt updated, sorry, if I got something wrong.
(In reply to comment #5) > It obviously isnt updated, sorry, if I got something wrong. Once again - you did post a *reversed* patch, causing all this confusion. See Comment #0.
The issue here is the 6 vs 4 for the *group* permissions. E.g. to use my scanner, I have: /etc/udev/rules.d/91-local.rules: BUS="usb", SYSFS{product}="CanoScan", GROUP="scanner", MODE="0660" This setting up of custom local rules is a *lot* safer than changing the default for groups from read-only to read/write. So I'd suggest marking this bug WONTFIX.
Ok, marking will not fix.
*** Bug 151138 has been marked as a duplicate of this bug. ***
*** Bug 151741 has been marked as a duplicate of this bug. ***
For the benefit of the duplicated bugs, the "="s in later udev versions (assignation vs test for equality) should be: BUS=="usb", SYSFS{product}=="CanoScan", GROUP="scanner", MODE="0660"
*** Bug 156227 has been marked as a duplicate of this bug. ***