4

I have two identical USB/MP3 players. One is corrupted (removed w/o unmounting). I would like to fix the corrupted device by cloning the working device.

The corrupted device reports this in /var/log/messages

Jun 13 11:17:17 underwood kernel: [1131377.098026] usb 2-3.4.2: new high-speed USB device number 25 using xhci_hcd
Jun 13 11:17:17 underwood kernel: [1131377.198955] usb 2-3.4.2: New USB device found, idVendor=054c, idProduct=0385
Jun 13 11:17:17 underwood kernel: [1131377.198957] usb 2-3.4.2: New USB device strings: Mfr=1, Product=2, SerialNumber=5
Jun 13 11:17:17 underwood kernel: [1131377.198958] usb 2-3.4.2: Product: WALKMAN
Jun 13 11:17:17 underwood kernel: [1131377.198959] usb 2-3.4.2: Manufacturer: Sony
Jun 13 11:17:17 underwood kernel: [1131377.198960] usb 2-3.4.2: SerialNumber: 31FF0001A2C8D6460002D9C8C29D1000
Jun 13 11:17:17 underwood kernel: [1131377.199686] usb-storage 2-3.4.2:1.0: USB Mass Storage device detected
Jun 13 11:17:17 underwood kernel: [1131377.199784] scsi host5: usb-storage 2-3.4.2:1.0
Jun 13 11:17:17 underwood gvfs-gphoto2-vo[5349]: device (null) has no BUSNUM property, ignoring
Jun 13 11:17:34 underwood gvfsd[5197]: dbus_mount_reply: Error from org.gtk.vfs.Mountable.mount(): Unable to open MTP device '[usb:002,025]'
Jun 13 11:17:34 underwood gnome-shell[5194]: JS LOG: Unable to mount volume WALKMAN: Gio.IOErrorEnum: Unable to open MTP device '[usb:002,025]'

The working device reports this:

Jun 13 10:50:14 underwood kernel: [1129754.410405] usb 2-3.4.2: reset high-speed USB device number 23 using xhci_hcd
Jun 13 10:50:31 underwood kernel: [1129770.958652] usb 2-3.4.2: USB disconnect, device number 23
Jun 13 10:51:24 underwood kernel: [1129824.175352] usb 2-3.4.2: new high-speed USB device number 24 using xhci_hcd
Jun 13 10:51:24 underwood kernel: [1129824.275818] usb 2-3.4.2: New USB device found, idVendor=054c, idProduct=0385
Jun 13 10:51:24 underwood kernel: [1129824.275820] usb 2-3.4.2: New USB device strings: Mfr=1, Product=2, SerialNumber=5
Jun 13 10:51:24 underwood kernel: [1129824.275821] usb 2-3.4.2: Product: WALKMAN
Jun 13 10:51:24 underwood kernel: [1129824.275821] usb 2-3.4.2: Manufacturer: Sony
Jun 13 10:51:24 underwood kernel: [1129824.275822] usb 2-3.4.2: SerialNumber: 10FA1306649000
Jun 13 10:51:24 underwood kernel: [1129824.276483] usb-storage 2-3.4.2:1.0: USB Mass Storage device detected
Jun 13 10:51:24 underwood kernel: [1129824.276567] scsi host5: usb-storage 2-3.4.2:1.0
Jun 13 10:51:25 underwood gvfs-gphoto2-vo[5349]: device (null) has no BUSNUM property, ignoring

The working device mounts correctly in: /run/user/1000/gvfs/mtp:host=%5Busb%3A002%2C026%5D/

The corrupt on does not, of course.

I was planning on using dd to make a bit for bit copy, but cannot figure out how to find the device number in /dev/ as I would a traditional harddrive or USB.

Could someone suggest some steps?

Update: ATTEMPT 2 (using an older Linux Kernel to mount as USB Storage):

After reading this article on mounting as MMS instead of MTP, I got this when I plug in the the devices:

Working device:

kernel: usb 1-1.1: new high speed USB device using fsl-ehci and address 3
kernel: usb 1-1.1: configuration #1 chosen from 1 choice
kernel: scsi4 : SCSI emulation for USB Mass Storage devices
kernel: scsi 4:0:0:0: Direct-Access     SONY     WALKMAN          1.00 PQ: 0 ANSI: 4
kernel: sd 4:0:0:0: Attached scsi generic sg1 type 0
kernel: sd 4:0:0:0: [sdb] 1919232 2048-byte logical blocks: (3.93 GB/3.66 GiB)
kernel: sd 4:0:0:0: [sdb] Write Protect is off
kernel: sd 4:0:0:0: [sdb] 1919232 2048-byte logical blocks: (3.93 GB/3.66 GiB)
kernel: sdb: sdb1
kernel: sd 4:0:0:0: [sdb] 1919232 2048-byte logical blocks: (3.93 GB/3.66 GiB)
kernel: sd 4:0:0:0: [sdb] Attached SCSI removable disk

I used dd if=/dev/sdb of=/tmp/walkman.clone to make a clone of the drive

And this when I connected the corrupted device:

kernel: usb 1-1.1: new high speed USB device using fsl-ehci and address 4
kernel: usb 1-1.1: configuration #1 chosen from 1 choice
kernel: scsi5 : SCSI emulation for USB Mass Storage devices
kernel: scsi 5:0:0:0: Direct-Access     SONY     WALKMAN          1.00 PQ: 0 ANSI: 4
kernel: sd 5:0:0:0: Attached scsi generic sg1 type 0
kernel: sd 5:0:0:0: [sdb] Attached SCSI removable disk

Unfortunately: dd if=/tmp/walkman.clone of=/dev/sdb results in

dd: opening `/dev/sdb': No medium found

cfdisk /dev/sbd also claims no media found

  • If you are unable to mount the volume you don't have a lot of options, and the fact you cannot mount the volume, sort of rules out dd. – Ramhound Jun 13 '17 at 17:05
  • 1
    MTP does not provide block access. It can't be used to recover files. However, it should make devices safe to remove any time. // Please provide the output of fdisk -l with both devices plugged in. – Daniel B Jun 13 '17 at 20:48
  • fdisk -l is the same with either device; they don't show up. MTP is a protocol for talking to the device, right? Maybe I can try to mount the device as a USB-Storage device directly? Then it might show up in /dev/ . Though, I'm not exactly sure how to do that. – orwell Jun 13 '17 at 23:28
  • That’s why I said to check fdisk. If they don’t show up there, there is absolutely no way. It’s up to the device’s firmware to decide how it presents itself to the PC. That means the device itself would have to be switched to USB Mass Storage. – Daniel B Jun 14 '17 at 6:09
  • I tried with an older-kernel that doesn't force MTP. (added to original question) in order to use USB Mass Storage. At least this time Linux sees a device, though it still doesn't acknowledge media on the other end. – orwell Jun 14 '17 at 12:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.