Hi, My girlfriend's 1gb lexar USB memory stick stopped working today, and I was hoping someone could advise what I could do to retrieve the non-backed up data...
When it is plugged in, the following is written to /var/log/messages:
usb 5-6: new high speed USB device using ehci_hcd and address 12
usb 5-6: configuration #1 chosen from 1 choice
scsi7 : SCSI emulation for USB Mass Storage devices
scsi 7:0:0:0: Direct-Access USB MEMORY BAR 1000 PQ: 0 ANSI: 0
CCS
sd 7:0:0:0: [sdb] 11 512-byte hardware sectors (0 MB)
sd 7:0:0:0: [sdb] Write Protect is off
sd 7:0:0:0: [sdb] 11 512-byte hardware sectors (0 MB)
sd 7:0:0:0: [sdb] Write Protect is off
sdb:<6>usb 5-6: reset high speed USB device using ehci_hcd and address 12
usb 5-6: reset high speed USB device using ehci_hcd and address 12
usb 5-6: USB disconnect, address 12
sd 7:0:0:0: [sdb] Result: hostbyte=DID_NO_CONNECT
driverbyte=DRIVER_OK,SUGGEST_OK
end_request: I/O error, dev sdb, sector 0
<snip... above messages repeated many times>
then much the same followed by
usb 5-6: reset high speed USB device using ehci_hcd and address 13
sd 8:0:0:0: [sdb] Result: hostbyte=DID_ABORT driverbyte=DRIVER_OK,SUGGEST_OK
and much of this:
end_request: I/O error, dev sdb, sector 1
end_request: I/O error, dev sdb, sector 0
eventually:
unable to read partition table
sd 8:0:0:0: [sdb] Attached SCSI removable disk
sd 8:0:0:0: Attached scsi generic sg2 type 0
lsusb gives the following information:
Bus 005 Device 013: ID 090c:3000 Feiya Technology Corp.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x090c Feiya Technology Corp.
idProduct 0x3000
bcdDevice 1.00
iManufacturer 1 Silicon Motion,Inc.
iProduct 2 SM321AA MEMORY BAR
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk (Zip)
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 255
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 255
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
... and /proc/partitions:
8 16 11 sdb
(fwiw, uname -a gives: Linux glow 2.6.22-14-generic #1 SMP Tue Dec 18 08:02:57
UTC 2007 i686 GNU/Linux)
So it seems the device is reported as 512 byte sectors x 11 sectors, but you
can't read from any of it (read error). This is obviously an incorrect size,
is there some way I can force it to a reasonable guessed size, so I can run
dd_recover? (or anything else I can do?)
Thanks,
Hamish.
PS. please cc me
signature.asc
Description: This is a digitally signed message part.
