SCSI scanner device ownership and permissions

Paul Howarth paul at city-fan.org
Sun Aug 14 12:54:46 UTC 2005


On Sat, 2005-08-13 at 18:34 -0400, D. Hugh Redelmeier wrote:
> | From: Paul Howarth <paul at city-fan.org>
> 
> | It tells me how to write a udev rule that will create an appropriate
> | link for your scanner at boot time :-)
> 
> Ah.  udev(8) explains this.  I know you know, but I am stating this
> for others who read this thread.
> 
> | Create a file /etc/udev/rules.d/10-custom.rules containing the following
> | line:
> | 
> | BUS="scsi", SYSFS{vendor}="UMAX*", SYSFS{model}="Astra*", SYMLINK="scanner%n"
> 
> [This should be in one line.]
> 
> | You should get an appropriate symlink created next time the sg module is
> | loaded (e.g. at reboot). The name of the symlink is such that the
> | existing "console" rules will change ownership of the device to the
> | currently-logged-in user.
> 
> This works well.  Thanks!
> 
> Is there a reason that this line should not be included as a standard
> part of /etc/udev/rules.d/50-udev.rules (which is in turn a part of
> the udev rpm)?

None that I know of. You might consider raising an RFE on bugzilla for
udev requesting the addition of such a rule. You might also request an
entry for the HP ScanJet 3c scanner that I use too ;-)

BUS="scsi", SYSFS{vendor}="HP*", SYSFS{model}="C2520A*",
SYMLINK="scanner%n"

If that gets accepted then all well and good. If not, someone might
consider starting a "supplementary udev rules" project. This could
create an RPM that would drop in
a /etc/dev/rules.d/30-supplementary.rules file containing rules for
additional bits of hardware that aren't covered by the standard rules.

> The scanner isn't recognized when I turn on the scanner sometime after
> booting.  As far as I can make out from reading proc(5)'s
> /proc/scsi/scsi entry, I need to prod the scsi system to rescan the
> bus.  In my case, it did so when I (as root) issued:
> 
> 	echo 'scsi add-single-device 0 0 5 0' >/proc/scsi/scsi
> 	                                   ^ LUN
> 	                                 ^ SCSI ID
> 	                               ^ host adapter channel
> 	                             ^ host adapter
> 
> Even though this seems to be a very specific request, it seemed to
> cause all sorts of activity in the SCSI subsystem.  Here's the
> relevant part of dmesg:
> 
>     usb 1-2.2: reset high speed USB device using ehci_hcd and address 6
>     (scsi0:A:5:0): refuses WIDE negotiation.  Using 8bit transfers
>     (scsi0:A:5:0): refuses synchronous negotiation. Using asynchronous transfers
>       Vendor: UMAX      Model: Astra 1200S       Rev: V2.9
>       Type:   Scanner                            ANSI SCSI revision: 02
>      target0:0:5: Beginning Domain Validation
>      target0:0:5: Ending Domain Validation
>     Attached scsi generic sg0 at scsi1, channel 0, id 0, lun 0,  type 0
>     Attached scsi generic sg1 at scsi1, channel 0, id 0, lun 1,  type 0
>     Attached scsi generic sg2 at scsi1, channel 0, id 0, lun 2,  type 0
>     Attached scsi generic sg3 at scsi1, channel 0, id 0, lun 3,  type 0
>     Attached scsi generic sg4 at scsi0, channel 0, id 5, lun 0,  type 6
> 
> It seem especially funny that USB (scsi1) would get re-examined.  That is a
> different host adapter.
> 
> Is there a way that the SCSI scanner could be automatically recognized
> when it is turned on?

That would need an answer from someone much more familiar with the
kernel's SCSI subsystem than me I'm afraid.

Paul.
-- 
Paul Howarth <paul at city-fan.org>




More information about the fedora-list mailing list