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.