Red Hat Enterprise Linux > AS/ES/WS v. 3 > Issue
<<
405 of 594
>>
Issue:
How do I access Multi-Card USB readers under Red Hat Enterprise Linux?
Resolution:
Release Found: Red Hat Enterprise Linux 3
Symptom:
Multi-Card USB Readers require the CONFIG_SCSI_MULTI_LUN option enabled in the kernel so that all the slots are correctly probed or scanned. Without this option the driver would only scan the first slot. This is currently not enabled by default in Red Hat Enterprise kernels as certain SCSI devices would lock up the bus with this kernel option enabled.
Additional symptoms can be found in
Bugzilla ID 85851.
Solution:
As a work around, one can manually add the extra Logical Unit Numbers (LUN) using the following method:
- After connecting the Multi-Card USB Reader, check the SCSI devices list using the command cat /proc/scsi/scsi .
Below is sample output, with no additional SCSI systems (Real or Emulated) present:
$ cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: Model: USB Card Reader Rev: 3.02
Type: Direct-Access ANSI SCSI revision: 02
|
If there are other SCSI systems present, the Host ID of the USB Multi-Card Reader could be different than scsi0.
- Manually add the remaining LUNS using command:
echo "scsi add-single-device HOST CHANNEL ID LUN" > /proc/scsi/scsi
Note: This command requires root privileges.
- Replace HOST,CHANNEL,ID & LUN with the appropriate values as observed from /proc/scsi/scsi for the card reader. For example, a 4-Slot 15 in 1 USB Multi-Card Reader:
# echo "scsi add-single-device 0 0 0 1" > /proc/scsi/scsi
# echo "scsi add-single-device 0 0 0 2" > /proc/scsi/scsi
# echo "scsi add-single-device 0 0 0 3" > /proc/scsi/scsi
|
LUN 0 should be automatically detected.
- After this, /proc/scsi/scsi should list all the LUN's of the Card Reader. For example:
$ cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: Model: USB Card Reader Rev: 3.02
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 00 Lun: 01
Vendor: Model: USB Card Reader Rev: 3.02
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 00 Lun: 02
Vendor: Model: USB Card Reader Rev: 3.02
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 00 Lun: 03
Vendor: Model: USB Card Reader Rev: 3.02
Type: Direct-Access ANSI SCSI revision: 02
|
- Check dmesg for the actual SCSI devices assigned for each of these slots/LUN's, these would typically be /dev/sd<X>, where X is a, b, c, d, etc depending on your system set-up.
- Mount the SCSI device corresponding to the Slot/LUN which contains the actual Memory Stick like SD/MMC.
For example:
mount -t vfat /dev/sdb /mnt/flash
Note: /mnt/flash is just some arbitrary directory that was created, check man mount for more details regarding the mount command usage.
- Slots/LUN's not having any memory stick would typically give an error in dmesg when added, similar to:
sda : READ CAPACITY failed.
|
Note: The changes made, as shown above, would be lost on system reboot.
Another alternative is to set "options scsi_mod max_scsi_luns=8" under /etc/modules.conf as explained in
Bugzilla ID 85851. Doing this could affect other SCSI devices.
Red Hat Enterprise Linux
>
AS/ES/WS v. 3
> Issue
<<
405
of
594
>>