2

Some time ago I bought an external HDD 2TB. Now I am encountering a problem: My computer doesn't see it when I plug it in. (I tried Gparted, and some other program that I found on the internet). Because I want to format it, I tried these commands, but it is not shown:

lsusb

sudo fdisk -l

Shows only in:

dmesg | tail -n 20

messeage:

[ 1639.785187] sd 6:0:0:0: [sdb] Read Capacity(10) failed: Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
[ 1639.785190] sd 6:0:0:0: [sdb] Sense not available.
[ 1639.977010] sd 6:0:0:0: [sdb] Write Protect is off
[ 1639.977017] sd 6:0:0:0: [sdb] Mode Sense: 00 00 00 00
[ 1640.057076] sd 6:0:0:0: [sdb] Asking for cache data failed
[ 1640.057083] sd 6:0:0:0: [sdb] Assuming drive cache: write through
[ 1640.525073] sd 6:0:0:0: [sdb] Read Capacity(16) failed: Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
[ 1640.525077] sd 6:0:0:0: [sdb] Sense not available.
[ 1640.780937] sd 6:0:0:0: [sdb] Read Capacity(10) failed: Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
[ 1640.780940] sd 6:0:0:0: [sdb] Sense not available.
[ 1641.188905] sd 6:0:0:0: [sdb] Attached SCSI disk
[ 2138.683015] usb 4-1.1: new high-speed USB device number 9 using ehci-pci
[ 2138.872871] usb 4-1.1: New USB device found, idVendor=0bc2, idProduct=231a
[ 2138.872879] usb 4-1.1: New USB device strings: Mfr=1, Product=2, 
SerialNumber=3
[ 2138.872883] usb 4-1.1: Product: Expansion
[ 2138.872887] usb 4-1.1: Manufacturer: Seagate
[ 2138.872890] usb 4-1.1: SerialNumber: NAA7A6D6
[ 2138.876706] scsi host6: uas
[ 2138.878489] scsi 6:0:0:0: Direct-Access     Seagate  Expansion        0710 PQ: 0 ANSI: 6
[ 2138.911706] sd 6:0:0:0: Attached scsi generic sg2 type 0

OS- Debian Stretch (also used win 7)

5
  • Please edit question with the complete part of dmesg where it shows up. If it doesn't show in lsusb, that suggests a hardware problem. How do you power the external HDD? How much power does the USB port provide? Can you power it via a powered USB hub, or an external power connection to the HDD? – dirkt Jun 16 '19 at 18:59
  • @dirkt It is powered properly. week ago it worked normally. Power. I plug it right into USB port and it starts up and it works normally. – C noob Jun 16 '19 at 19:08
  • Are you sure it doesn't show up in lsusb after you plug it in? Please edit question with output of lsusb. Normally dmesg would contain error messages if the USB connection has an error. Also note that this device uses UAS, you may need a newer kernel than in Debian Stretch (but I didn't check what Stretch uses) to make it work properly. – dirkt Jun 17 '19 at 9:21
  • I googled and it looks like UAS started working around kernel version 3.15. What's your kernel version? – dirkt Jun 17 '19 at 9:27
  • @dirkt 4.9.0-8-amd64 – C noob Jun 17 '19 at 18:49
2

You might want to try disabling uas in your kernel for this device vendor. I had a similar problem with my external USB enclosure and this resolved the problem. Below are my full notes which I refer to everytime I have to address this issue (e.g. after a fresh Ubuntu install). This was still necessary for me as recently as 18.04.3 LTS with kernel 5.0.0-36-generic.

Here's the solution (for my LaCie drive, external Seagate enclosure, etc) hanging system on boot and not showing up in fdisk. The 059f:105e is the vendor/product string for the LaCie drive, so if you do this for another drive, use the appropriate string as printed for this device by 'lsusb' ('lsusb -t' may also be useful). What this does is disable UAS for this vendor/product string only, and then rebuilds the latest kernel with this fix. I did this and then the system booted quickly and showed the drive in fdisk right away!

Caution: if you have a separate file for each quirk in modprobe.d it won't work! Whichever file is read last probably overwrites the previous one. So, you MUST enter the quirks on a single line separated by commas.

Here's how to fix the problem:

sudo su
cat > /etc/modprobe.d/disable-uas.conf

A single device would look like this:

options usb-storage quirks=059f:105e:u

Multiple devices is done like this. Here both LaCie and Seagate enclosure are modified.

options usb-storage quirks=059f:105f:u,059f:105e:u,174c:1351:u

(ctrl-D to exit)

update-initramfs -u
reboot

If you want to get things working without rebooting, this also works:

rmmod uas usb-storage
modprobe usb-storage quirks=174c:1351:u,059f:105e:u,059f:105f:u

Appendix

Here are some useful commands for debugging USB device status:

  • fdisk -l
  • usb-devices
  • lspci -nv
  • lsusb
  • lsusb -t

NOTE: there was another approach I previously used that involved editing /lib/udev/rules.d/69-libmtp.rules and adding the following lines which worked for the LaCie drive at one point:

ATTR{idVendor}=="059f", ATTR{idProduct}=="105e", SYMLINK+="libmtp-%k", 
MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", 
ENV{ID_MEDIA_PLAYER}="1", TAG+="uaccess"
ATTR{idVendor}=="059f", ATTR{idProduct}=="105f", SYMLINK+="libmtp-%k", 
MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", 
ENV{ID_MEDIA_PLAYER}="1", TAG+="uaccess"

But this seems unnecessary now and the modprobe approach works fine on its own. And it also seems like this approach stopped working at some point, maybe because I updated to a newer Ubuntu or kernel version.

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.