Ubuntu udev rules 设置方法

还是国外资料有用,需要在Linux(Ubuntu)普通用户下访问原本要在root下才能访问的usb设备可以参考本文。
SUBSYSTEMS=="usb",ATTRS{idProduct}=="xxxx",ATTRS{idVendor}=="xxxx",MODE="666",OWNER=“xxxx",GROUP="xxxx"

原文: http://pigeonsnest.co.uk/stuff/ubuntu-udev-scanner.html ;
Ubuntu: udev rules for USB scanner 



How to create a udev rule to get a USB scanner working in Ubuntu jaunty. 

Assumes that: (1) user is a member of group "scanner", (2) sane is installed. 

Symptoms of problem: "sane-find-scanner" detects the existence of the scanner, but "scanimage -L" does not report it when run with user permissions, only when run with root permissions. Scanning works as root, but not as a normal user. 

1) Run "lsusb" to find the scanner's manufacturer and device IDs. Example output: 

$ lsusb
Bus 003 Device 014: ID 04b8:012e Seiko Epson Corp. 
Bus 003 Device 012: ID 046d:c408 Logitech, Inc. Marble Mouse (4-button)
Bus 003 Device 011: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 003 Device 001: ID 0000:0000  
Bus 002 Device 001: ID 0000:0000  
Bus 001 Device 013: ID 04b8:0005 Seiko Epson Corp. Stylus Printer
Bus 001 Device 001: ID 0000:0000
$


In the above example, the first line relates to the scanner... in this case an Epson Perfection V200... it is somewhat unhelpful that this particular scanner's text ID string is nothing more than "Seiko Epson Corp.", but it is easy to determine that that device is indeed the scanner by running "lsusb" both with and without the scanner plugged in. 

The four-digit hex number "04b8" is the manufacturer ID (observe that the Epson printer on the penultimate line has the same manufacturer ID), and "012e" is the device ID. 

2) Create a file /etc/udev/rules.d/40-scanner.rules containing the following (your browser may have wrapped this; it should be all on one line): 

SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="012e", ENV{libsane_matched}="yes", GROUP="scanner"

Of course you will substitute the appropriate values for your scanner, obtained from "lsusb", for the idVendor and idProduct entries. 

The SUBSYSTEMS and ATTRS entries have double == signs whereas the ENV and GROUP entries have single = signs. This is not a typo. 

3) Restart udev: 

$ sudo /etc/init.d/udev restart
* Stopping kernel event manager... [ OK ] 
* Starting kernel event manager... [ OK ] 
$


4) Unplug the scanner and plug it in again. 

5) Check that it has obtained the correct permissions. Run "lsusb" again to determine the bus and device IDs - they will have changed due to the unplugging and replugging. Then check the appropriate device node in /dev/bus/usb: 

$ lsusb
Bus 003 Device 015: ID 04b8:012e Seiko Epson Corp. 
Bus 003 Device 012: ID 046d:c408 Logitech, Inc. Marble Mouse (4-button)
Bus 003 Device 011: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 003 Device 001: ID 0000:0000  
Bus 002 Device 001: ID 0000:0000  
Bus 001 Device 013: ID 04b8:0005 Seiko Epson Corp. Stylus Printer
Bus 001 Device 001: ID 0000:0000
$ ls -l /dev/bus/usb/003/015
crw-rw-r-- 1 root scanner 189, 269 Apr 24 19:10 /dev/bus/usb/003/015
$


If the output corresponds with the above, all should be well, and running "scanimage -L" with user permissions should now pick the scanner up: 

$ scanimage -L
device `epkowa:libusb:003:015' is a Epson Perfection V200 flatbed scanner
$


Note that the V200 requires a driver; this document does not cover that, only the setting of the permissions.


  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值