Subject: | |
From: | |
Reply To: | |
Date: | Mon, 8 Mar 2010 09:35:59 +0100 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
On 05/03/10 16:06, Mark Stodola wrote:
> Tim Edwards wrote:
>> On 05/03/10 15:36, Mark Stodola wrote:
>>
>>> Tim Edwards wrote:
>>>
>>>> On 05/03/10 15:16, Mark Stodola wrote:
>>>>
>>>>
>>>>>>
>>>>> Tim,
>>>>>
>>>>> I think you are confusing sysfs with environment variables. the
>>>>> %E{key}
>>>>> is used for environment variables. The serial number is a SYSFS
>>>>> attribute. Try changing %E{serial} to %s{serial} and see if it works.
>>>>>
>>>>> Cheers,
>>>>> Mark
>>>>>
>>>>>
>>>> That didn't work unfortunately, my rules file now looks like this:
>>>> KERNEL=="sd*", SUBSYSTEMS=="scsi", SYMLINK+="disknumber-%s{serial}"
>>>>
>>>> Any other ideas?
>>>>
>>>> Tim
>>>>
>>> It works here, I just made a /etc/udev/rules.d/10-test.rules file with
>>> your above line.
>>> Next I ran 'udevcontrol reload_rules'. I then connected my Kingston USB
>>> drive and /dev/disknumber-5B7A1000021E appeared.
>>>
>>> Do you have any other custom rules that are mangling this one?
>>>
>>> Cheers,
>>> Mark
>>>
>>>
>>
>> It might just be a peculiarity of the USB stick I'm using to test it
>> then since it's creating a device '/dev/disknumber-' looking like it
>> can't find the serial number.
>>
>> I'll try with one of the actual USB hard drives they're using when I
>> can get access to one next week.
>>
>> Tim
>>
> You can verify that using 'systool'. Try the following command:
> systool -b usb -p -v
> Find your USB drive in the output, and there should be something like this:
> Device = "1-2"
> Device path = "/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-2"
> bConfigurationValue = "1"
> bDeviceClass = "00"
> bDeviceProtocol = "00"
> bDeviceSubClass = "00"
> bMaxPacketSize0 = "64"
> bMaxPower = "200mA"
> bNumConfigurations = "1"
> bNumInterfaces = " 1"
> bcdDevice = "0100"
> bmAttributes = "80"
> configuration =
> devnum = "3"
> idProduct = "1d00"
> idVendor = "13fe"
> manufacturer = "Kingston"
> maxchild = "0"
> product = "DataTraveler 2.0"
> serial = "5B7A1000021E"
> speed = "480"
> uevent = <store method only>
> version = " 2.00"
>
>
> If no serial exists for the device, the "serial =" line will be absent.
>
> Cheers,
> Mark
>
The serial line exists for this USB stick, but the udev rule still isn't
picking it up:
Device = "1-3.2"
Device path = "/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.2"
authorized = "1"
bConfigurationValue = "1"
bDeviceClass = "00"
bDeviceProtocol = "00"
bDeviceSubClass = "00"
bMaxPacketSize0 = "64"
bMaxPower = "200mA"
bNumConfigurations = "1"
bNumInterfaces = " 1"
bcdDevice = "4000"
bmAttributes = "80"
busnum = "1"
configuration =
descriptors = ""
dev = "189:6"
devnum = "7"
idProduct = "0098"
idVendor = "0411"
manufacturer = "BUFFALO"
maxchild = "0"
product = "USB Flash Disk"
quirks = "0x0"
serial = "AB00000000197514"
speed = "480"
uevent = "MAJOR=189
Tim
|
|
|