Can't mount Linux usb disk. It just create /dev/sg device but no /dev/sd
I have a Corsair R60 ssd disk which is a disk with both sata and usb connectors. But the usb thing seems to be a bit non-standard, or maybe its just my fedora linux.
When I insert the disk using a usb cabel to a running Fedora 14 linux system, a device called /dev/sg3 is added but that is all. No new /dev/sd* device is created so I can't mount the disk.
If I look at cat /proc/scsi/sg/device_strs I get
ATA Hitachi HTS54321 FB2O
HL-DT-ST DVDRAM GSA-T50N RP05
Seagate Desktop 0130
Corsair CSSD-R60GB2
So the disk is there. (The last entry) but my linux will for some reason not see it as a usb hard disk. When I insert other usb disks they work fine. It is only this specific disk which causes problems. I have tried on 3 different computers with the same result.
A hint to the problem may be that if I add the disk to a windows system(With usb) the disk is called "A fixed disk" and not a portable disk as expected. The disk works fine with linux If i connect it with the sata cabel, but I would really like to have it working with usb too. (To mount it on computers without sata).
Added: I did try to mount /dev/sg3 but mount say that its not a block device. (File say Its a character special device).
Added output from dmesg:
[ 97.454073] usb 7-1: USB disconnect, address 2
[ 105.913055] hub 2-0:1.0: unable to enumerate USB device on port 3
[ 107.048054] usb 2-3: new high speed USB device using ehci_hcd and address 5
[ 107.162900] usb 2-3: New USB device found, idVendor=1b1c, idProduct=1ab8
[ 107.162903] usb 2-3: New USB device strings: Mfr=1, Product=2, SerialNumber=5
[ 107.162906] usb 2-3: Product: CSSD-R60GB2
[ 107.162908] usb 2-3: Manufacturer: Corsair
[ 107.162910] usb 2-3: SerialNumber: 10111441000000990069
[ 107.167651] scsi7 : usb-storage 2-3:1.0
[ 108.195543] scsi 7:0:0:0: Direct-Access Corsair CSSD-R60GB2 PQ: 1 ANSI: 0
[ 108.197732] scsi 7:0:0:0: Attached scsi generic sg3 type 0
sg_map gives me
/dev/sg0 /dev/sda
/dev/sg1 /dev/scd0
/dev/sg2 /dev/sdb
/dev/sg3
and lsscsi gives me
[0:0:0:0] disk ATA Hitachi HTS54321 FB2O /dev/sda
[1:0:0:0] cd/dvd HL-DT-ST DVDRAM GSA-T50N RP05 /dev/sr0
[6:0:0:0] disk Seagate Desktop 0130 /dev/sdb
[8:0:0:0] disk Corsair CSSD-R60GB2 -
And lsscsi -l gives
[0:0:0:0] disk ATA Hitachi HTS54321 FB2O /dev/sda
state=running queue_depth=31 scsi_level=6 type=0 device_blocked=0 timeout=30
[1:0:0:0] cd/dvd HL-DT-ST DVDRAM GSA-T50N RP05 /dev/sr0
state=running queue_depth=1 scsi_level=6 type=5 device_blocked=0 timeout=30
[6:0:0:0] disk Seagate Desktop 0130 /dev/sdb
state=running queue_depth=1 scsi_level=3 type=0 device_blocked=0 timeout=30
[8:0:0:0] disk Corsair CSSD-R60GB2 -
state=running queue_depth=1 scsi_level=0 type=0 device_blocked=0 timeout=0
Come to think of it scsi_level=0 looks wrong.
And lsscsi -t gives
[
0:0:0:0] disk sata: /dev/sda
[1:0:0:0] cd/dvd sata: /dev/sr0
[6:0:0:0] disk usb: 2-1:1.0 /dev/sdb
[8:0:0:0] disk usb: 2-3:1.0 -
I found an other guy with exactly the same problem (http://forum.corsair.com/v3/showthread.php?t=91434) so I think its beginning to look like a bug in the drives firmware or in the linux kernel.
Final update: Corsair have said that the disk design is broken and there does not seem to be any way to make it work.
But thanks for the help anyway.
I presume the MBR of the disk is corrupted. If you overwrite the MBR of the disk, it will probably work again.
You have to do that as root:
dd if=/dev/zero of=/dev/sg3 bs=446 count=1
Be very prudent with this command, because you can destroy a good working hard disk. Be sure that the hard disk you want to repair is indeed the /dev/sg3
!
I had the same problem this morning, and I managed to "repair" it in this way. No data was lost on the hard disk by doing this intervention.
This may mean the device is handled by a different driver. Have you tried mounting it?
sudo mount /dev/sg3 /mnt
Edit: The sg3 device might be a scsi device which still needs to be mapped.